2014/02/22

【試験中】iptables

iptables
※テンプレを設置したらエラーしたので元通りに。定期的に更新し日常点検して事故がないかどうか調べて見ます。


#!/bin/sh
service iptables stop
iptables -F
#1) 入力・出力は許可し、転送は破棄
iptables -P INPUT ACCEPT
iptables -P FORWARD DROP
iptables -P OUTPUT ACCEPT

#2) icpm( ping )、tcp 、udp を許可
iptables -A INPUT -p icmp -j ACCEPT
iptables -A INPUT -p tcp -j ACCEPT
iptables -A INPUT -p udp -j ACCEPT

#3) ローカルホストからの入力を全面的に許可
iptables -A INPUT -i lo -j ACCEPT

#4) Web (80,443 番)の通過を許可
iptables -A INPUT -p tcp --dport 80 -j ACCEPT
iptables -A INPUT -p tcp --sport 80 -j ACCEPT
iptables -A INPUT -p tcp --dport 443 -j ACCEPT
iptables -A INPUT -p tcp --sport 443 -j ACCEPT

#5) FTP(20, 21 番)の通過を許可
# iptables -A INPUT -p tcp --dport 20 -j ACCEPT
# iptables -A INPUT -p tcp --sport 20 -j ACCEPT
# iptables -A INPUT -p tcp --dport 21 -j ACCEPT
# iptables -A INPUT -p tcp --sport 21 -j ACCEPT

#6) POP(110 番)の通過を許可
# iptables -A INPUT -p tcp --dport 110 -j ACCEPT
# iptables -A INPUT -p tcp --sport 110 -j ACCEPT

#7) SMTP(25 番)の通過を許可
# iptables -A INPUT -p tcp --dport 25 -j ACCEPT
# iptables -A INPUT -p tcp --sport 25 -j ACCEPT

#8) SSH による接続(22 番)を許可
# iptables -A INPUT -p tcp --dport 22 -j ACCEPT
# iptables -A INPUT -p tcp --sport 22 -j ACCEPT

#9) mysqlデータベースポートへの接続制限
#mysqlデータベースを利用している場合は、通過を許可しておきましょう。
# iptables -A INPUT -p tcp --dport 3306 -j ACCEPT
# iptables -A INPUT -p tcp --sport 3306 -j ACCEPT

#10)Postgresへの接続制限
#Postgresを利用している場合は、通過を許可しておきましょう。
# iptables -A INPUT -p tcp --dport 5432 -j ACCEPT
# iptables -A INPUT -p tcp --sport 5432 -j ACCEPT

#11) syn信号とPING攻撃の無効化(1秒に1回だけ受信)
iptables -A INPUT -i ppp+ -p tcp --syn -m limit --limit 1/s -j ACCEPT
iptables -A INPUT -i ppp+ -p icmp --icmp-type echo-request -m limit --limit 1/s -j ACCEPT

#12) 設定完了と、設定したルール以外の全ての接続を拒否
iptables -P INPUT DROP

#13)設定保存とiptablesの再起動
iptables-save -c > /etc/init.d/iptables
service iptables restart

0 件のコメント:

コメントを投稿