У меня есть ПК CentOS 7, на котором я использую iptables.
У меня есть экземпляр Oracle 11gR2 на этом ПК, и мне нужно получить доступ с других компьютеров в локальной сети.
Мой /etc/sysconfig/iptables
:
# Generated by iptables-save v1.4.21 on Mon Nov 3 11:25:41 2014
*filter
:INPUT ACCEPT [0:0]
:FORWARD ACCEPT [0:0]
:OUTPUT ACCEPT [296:52711]
-A INPUT -m state --state RELATED,ESTABLISHED -j ACCEPT
-A INPUT -p icmp -j ACCEPT
-A INPUT -i lo -j ACCEPT
-A INPUT -p tcp -m state --state NEW -m tcp --dport 3389 -j ACCEPT
-A INPUT -p tcp -m state --state NEW -m tcp --dport 1158 -j ACCEPT
-A INPUT -p tcp -m state --state NEW -m tcp --dport 1521 -j ACCEPT
-A INPUT -p tcp -m state --state NEW -m tcp --dport 9060 -j ACCEPT
-A INPUT -p tcp -m state --state NEW -m tcp --dport 9043 -j ACCEPT
-A INPUT -p tcp -m state --state NEW -m tcp --dport 9080 -j ACCEPT
-A INPUT -p tcp -m state --state NEW -m tcp --dport 8080 -j ACCEPT
-A INPUT -p tcp -m state --state NEW -m tcp --dport 9000 -j ACCEPT
-A INPUT -p tcp -m state --state NEW -m tcp --dport 9443 -j ACCEPT
-A INPUT -p tcp -m state --state NEW -m tcp --dport 2809 -j ACCEPT
-A INPUT -p tcp -m state --state NEW -m tcp --dport 5060 -j ACCEPT
-A INPUT -p tcp -m state --state NEW -m tcp --dport 5061 -j ACCEPT
-A INPUT -p tcp -m state --state NEW -m tcp --dport 8880 -j ACCEPT
-A INPUT -p tcp -m state --state NEW -m tcp --dport 9633 -j ACCEPT
-A INPUT -p tcp -m state --state NEW -m tcp --dport 9401 -j ACCEPT
-A INPUT -p tcp -m state --state NEW -m tcp --dport 9403 -j ACCEPT
-A INPUT -p tcp -m state --state NEW -m tcp --dport 9402 -j ACCEPT
-A INPUT -p tcp -m state --state NEW -m tcp --dport 9100 -j ACCEPT
-A INPUT -p tcp -m state --state NEW -m tcp --dport 9353 -j ACCEPT
-A INPUT -p tcp -m state --state NEW -m tcp --dport 7276 -j ACCEPT
-A INPUT -p tcp -m state --state NEW -m tcp --dport 7286 -j ACCEPT
-A INPUT -p tcp -m state --state NEW -m tcp --dport 5558 -j ACCEPT
-A INPUT -p tcp -m state --state NEW -m tcp --dport 5578 -j ACCEPT
-A INPUT -p tcp -m state --state NEW -m tcp --dport 1414 -j ACCEPT
-A INPUT -p tcp -m state --state NEW -m tcp --dport 9000 -j ACCEPT
-A INPUT -p tcp -m state --state NEW -m tcp --dport 22 -j ACCEPT
-A INPUT -p tcp -m state --state NEW -m tcp --dport 25 -j ACCEPT
-A INPUT -p tcp -m state --state NEW -m tcp --dport 110 -j ACCEPT
-A INPUT -p tcp -m state --state NEW -m tcp --dport 1158 -j ACCEPT
-A INPUT -p tcp -m state --state NEW -m tcp --dport 1521 -j ACCEPT
-A INPUT -p tcp -m state --state NEW -m tcp --dport 9060 -j ACCEPT
-A INPUT -p tcp -m state --state NEW -m tcp --dport 9043 -j ACCEPT
-A INPUT -p tcp -m state --state NEW -m tcp --dport 9080 -j ACCEPT
-A INPUT -p tcp -m state --state NEW -m tcp --dport 9443 -j ACCEPT
-A INPUT -p tcp -m state --state NEW -m tcp --dport 2809 -j ACCEPT
-A INPUT -p tcp -m state --state NEW -m tcp --dport 5060 -j ACCEPT
-A INPUT -p tcp -m state --state NEW -m tcp --dport 5061 -j ACCEPT
-A INPUT -p tcp -m state --state NEW -m tcp --dport 8880 -j ACCEPT
-A INPUT -p tcp -m state --state NEW -m tcp --dport 9633 -j ACCEPT
-A INPUT -p tcp -m state --state NEW -m tcp --dport 9401 -j ACCEPT
-A INPUT -p tcp -m state --state NEW -m tcp --dport 9403 -j ACCEPT
-A INPUT -p tcp -m state --state NEW -m tcp --dport 9402 -j ACCEPT
-A INPUT -p tcp -m state --state NEW -m tcp --dport 9100 -j ACCEPT
-A INPUT -p tcp -m state --state NEW -m tcp --dport 9353 -j ACCEPT
-A INPUT -p tcp -m state --state NEW -m tcp --dport 7276 -j ACCEPT
-A INPUT -p tcp -m state --state NEW -m tcp --dport 7286 -j ACCEPT
-A INPUT -p tcp -m state --state NEW -m tcp --dport 5558 -j ACCEPT
-A INPUT -p udp -m udp --dport 631 -j ACCEPT
-A INPUT -p tcp -m tcp --dport 631 -j ACCEPT
-A INPUT -j REJECT --reject-with icmp-host-prohibited
-A INPUT -p tcp -m state --state NEW -m tcp --dport 631 -j ACCEPT
-A FORWARD -j REJECT --reject-with icmp-host-prohibited
COMMIT
# Completed on Mon Nov 3 11:25:41 2014
Линия оракула - это:
-A INPUT -p tcp -m state --state NEW -m tcp --dport 1521 -j ACCEPT
Плохо то, что после перезагрузки, чтобы заставить его работать, мне всегда приходится использовать
sudo service iptables restart
Если я не перезапускаю iptables вручную, он не открывает 1521 для входящих подключений.
Есть ли способ сказать iptables не "забыть", что написано в его файле?