iptablesを介してポート80をブロックする


1

iptablesに問題があります。私は外部からポート80をブロックしようとしています、基本的にはSSH経由でトンネルする必要があるだけで、サーバー上のGUIなどにアクセスできます

私のルールにはこれがあります:


Chain OUTPUT (policy ACCEPT 28145 packets, 14M bytes)
 pkts bytes target     prot opt in     out     source               destination
    0     0 DROP       tcp  --  *      eth1    0.0.0.0/0            0.0.0.0/0           tcp dpt:80 state NEW,ESTABLISHED

そして


Chain INPUT (policy DROP 41 packets, 6041 bytes)
    0     0 DROP       tcp  --  eth1   *       0.0.0.0/0            0.0.0.0/0           tcp dpt:80 state NEW,ESTABLISHED

洞察を共有したい人はいますか?

回答:


2

INPUTチェーンポリシーをDROPに設定し、OUTPUTチェーンポリシーをACCEPTに設定してから、許可するポートのみを開いてください。このようなもの:

/sbin/iptables -P INPUT DROP
/sbin/iptables -P OUTPUT ACCEPT
/sbin/iptables -P FORWARD DROP   # Probably a good idea too.

/sbin/iptables -A INPUT -m state --state ESTABLISHED -j ACCEPT

# Now allow TCP SYN packets in to certain ports.  Once they are ACK'ed,
# the above rule for ESTABLISHED connections takes over and lets traffic flow.

/sbin/iptables -A INPUT -p tcp --syn --dport 22 -j ACCEPT

入力Franに感謝しますが、ポート80でルールが許可され続ける理由を理解できません。iptables-A INPUT -i eth0 -p tcp --dport 80 -j DROPおよびiptables -A OUTPUT -o eth0 -p tcp- -dport 80 -j DROP
JoyIanイー・ヘルナンデス

1
パケットはeth0または他のインターフェイスに着信していますか?また、トラフィックを許可する可能性のあるルールを、前に示したルールの前に確認します。そのルールが最初にヒットした場合、ルールは効果がありません。
フラン

ところで、質問の出力は表示されますeth1が、今は質問していますeth0。パケットがどのインターフェイスに到着するか知っていますか?
フラン

2

DROPルールに状態を使用しないでください。

httpサーバーがtcpおよび/またはudpかどうかわからない場合は、udpも削除する必要があります。

# Q:I dont understand though why my rules keeps letting me in
# A:clean the chains 1st
iptables -F
iptables -X
iptables -Z

# Set default policy to DROP if not matched by any rule
iptables -P INPUT DROP
iptables -P OUTPUT DROP
iptables -P FORWARD DROP

# Accept incoming connections only if previously established.
iptables -A INPUT -p tcp --dport 80 -m state --state ESTABLISHED -j ACCEPT
iptables -A INPUT -p udp --dport 80 -m state --state ESTABLISHED -j ACCEPT

# Allow to create/ESTABLISH outgoing connections.
iptables -A OUTPUT -p tcp --dport 80 -m state --state NEW,ESTABLISHED -j ACCEPT
iptables -A OUTPUT -p udp --dport 80 -m state --state NEW,ESTABLISHED -j ACCEPT

# Default policy is set to DROP so we don't need these
#iptables -A INPUT -p udp --dport 80 -j DROP
#iptables -A INPUT -p tcp --dport 80 -j DROP
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.