Я использую сервер каталогов 389 в Fedora 14. Когда я использую ldapsearch для подключения к myserver.com:389 с локального хоста, он работает нормально. Когда я использую ldapsearch для подключения к myserver.com:389 с другого компьютера в сети и у меня на сервере запущены iptables, ldapsearch не может подключиться к серверу. Когда я выключаю iptables на сервере, ldapsearch на другом компьютере подключается к серверу.
Мой файл iptables выглядит следующим образом:
*filter
:INPUT ACCEPT [0:0]
:FORWARD ACCEPT [0:0]
:OUTPUT ACCEPT [0:0]
-A INPUT -m state --state RELATED,ESTABLISHED -j ACCEPT
-A INPUT -p icmp -j ACCEPT
-A INPUT -p tcp -m tcp --dport 443 --tcp-flags SYN,RST,ACK SYN -j ACCEPT
-A INPUT -p tcp -m tcp --dport 80 --tcp-flags SYN,RST,ACK SYN -j ACCEPT
-A INPUT -i lo -j ACCEPT
-A INPUT -j REJECT --reject-with icmp-host-prohibited
-A INPUT -p tcp -m tcp --dport 389 -m state --state NEW,ESTABLISHED -j ACCEPT
-A INPUT -p udp -m udp --dport 389 -m state --state NEW,ESTABLISHED -j ACCEPT
-A FORWARD -j REJECT --reject-with icmp-host-prohibited
-A OUTPUT -p tcp -m tcp --sport 389 -m state --state ESTABLISHED -j ACCEPT
-A OUTPUT -p udp -m udp --sport 389 -m state --state ESTABLISHED -j ACCEPT
COMMIT
Как мне исправить мои iptables, чтобы я мог запускать LDAP?
Вам нужно изменить порядок правил
-A INPUT -j REJECT --reject-with icmp-host-prohibited
предшествует разрешающим строкам
-A INPUT -p tcp -m tcp --dport 389 -m state --state NEW,ESTABLISHED -j ACCEPT
-A INPUT -p udp -m udp --dport 389 -m state --state NEW,ESTABLISHED -j ACCEPT
переместите «-A INPUT -j REJECT -reject-with icmp-host -hibited» ниже упомянутых мной строк ACCEPT и перезагрузите брандмауэр.
вы можете попробовать iptables-save> firewall
отредактируйте файл брандмауэра, переместите строку, как я предлагал, сохраните, выйдите
iptables-restore <брандмауэр
вуаля.