
多くのサーバーで iptables を使用していますが、デフォルトのポリシーを DROP として使用しているため、この問題が発生しています。
これは私が VPS で使用したルールです。何度も試しましたが、すべて問題ないようです。しかし、このルールを使用すると VPS が切断されてしまいます。
時間を更新するために、SSH ポート 2222 と NTP だけが必要です。
iptables -F
iptables -X LOGGING
iptables -P INPUT DROP
iptables -P OUTPUT DROP
iptables -P FORWARD DROP
iptables -A INPUT -i lo -j ACCEPT
iptables -A OUTPUT -o lo -j ACCEPT
iptables -A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT
iptables -A OUTPUT -m state --state ESTABLISHED,RELATED -j ACCEPT
iptables -A INPUT -i eth0 -p tcp --sport 2222 -m state --state NEW,ESTABLISHED -j ACCEPT
iptables -A OUTPUT -o eth0 -p tcp --dport 2222 -m state --state NEW,ESTABLISHED -j ACCEPT
iptables -A INPUT -i eth0 -p udp --sport 2222 -m state --state NEW,ESTABLISHED -j ACCEPT
iptables -A OUTPUT -o eth0 -p udp --dport 2222 -m state --state NEW,ESTABLISHED -j ACCEPT
iptables -A INPUT -i eth0 -p udp --sport 123 -m state --state NEW,ESTABLISHED -j ACCEPT
iptables -A OUTPUT -o eth0 -p udp --dport 123 -m state --state NEW,ESTABLISHED -j ACCEPT
iptables -A INPUT -j DROP
iptables -N LOGGING
iptables -A INPUT -j LOGGING
iptables -A LOGGING -m limit --limit 10/min -j LOG --log-prefix "IPTables Packet Dropped: " --log-level 7
VPS からログアウトするまでは、VPS にアクセスでき、まだ確立されています。一度ログアウトして再度ログインしようとすると、ログインできません。誰かが私のためにルールを確認してくれますか?
答え1
ポート 2222 の受信トラフィックに関するルールは次のとおりです。
iptables -A INPUT -i eth0 -p tcp --sport 2222 -m state --state ESTABLISHED -j ACCEPT
iptables -A INPUT -i eth0 -p udp --sport 2222 -m state --state ESTABLISHED -j ACCEPT
新しい接続を許可していないため、外部から接続することはできません。
この質問今興味があるかもしれません。