サーバーを作るたびにやる iptables の設定
一連のコマンド
このあと iptables の save と restart も忘れずに。
毎回同じことをやるのに忘れがち・・・。
● 現在の設定の確認
iptables -L
● FORWARDは使わない
iptables -P FORWARD DROP
● まずは全許可に
iptables -P INPUT ACCEPT
● デフォルトのルールを全て削除
iptables -F
● 自分自身からのパケットは全許可
iptables -A INPUT -i lo -j ACCEPT
● SSH許可 or SSH自分(255.255.255.255)だけ許可
iptables -A INPUT -p tcp --dport 22 -j ACCEPT
or
iptables -A INPUT -s 255.255.255.255 -p tcp --dport 22 -j ACCEPT
● FTP(20,21,4000-4029) の接続を許可
iptables -A INPUT -p tcp --dport 20 -j ACCEPT
iptables -A INPUT -p tcp --dport 21 -j ACCEPT
iptables -A INPUT -p tcp --dport 4000:4029 -j ACCEPT
● http, https の接続を許可
iptables -A INPUT -p tcp --dport 80 -j ACCEPT
iptables -A INPUT -p tcp --dport 443 -j ACCEPT
● POP(受信メール)の許可
iptables -A INPUT -p tcp --dport 110 -j ACCEPT
● SMTP(送信メール)の許可【これをしないと世間からメールが来なくなる!】
iptables -A INPUT -p tcp --dport 25 -j ACCEPT
● SUBMISSION ポートを開放
iptables -A INPUT -p tcp --dport 587 -j ACCEPT
● PostgreSQLも外から使います
iptables -A INPUT -p tcp --dport 5432 -j ACCEPT
● DNS関係
iptables -A INPUT -p tcp --dport 53 -j ACCEPT
iptables -A INPUT -p udp --dport 53 -j ACCEPT
● PINGを許可
iptables -A INPUT -p icmp -j ACCEPT
● TCPの接続開始と応答、FTPデータなどを許可【これをしないと外にメールが飛ばなくなる】
iptables -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT
● 設定したルール以外のパケットを拒否
iptables -P INPUT DROP