web-dev-qa-db-ja.com

Linuxiptables-RSTでtcpSYNを拒否します

Wan側のtelnetポート8023からの着信telnet要求を拒否するために、Linuxマシンで実装を行っています。この機能は、以下のiptablesルールを使用して実現されます。 NATポート8023から23へのDNAT着信tcpフレームへの事前ルーティングチェーンの最初のルール、およびtcp-resetを使用してポート23でこれらのtcpフレームを拒否する2番目のルール

iptables -t nat -A PREROUTING -i wan+ -p tcp --dport 8023 -j DNAT --to-destination :23
iptables -A INPUT -i wan+ -p tcp --dport 23 -j REJECT --reject-with tcp-reset

これらのルールを追加すると、WANマシンの新しいセッションが終了します。

[root@ROOT ~]# telnet 192.168.3.252 8023
Trying 192.168.3.252...
Connected to 192.168.3.252.
Escape character is '^]'.
Connection closed by foreign Host.

ただし、WANマシンからのトランザクション全体のwiresharkキャプチャを確認すると、次のシーケンスが観察されています。

TCP sequence:
SYN -->
    <-- SYN/ACK
ACK -->
    <-- RST

ワイヤーシャークキャプチャーも付属しています。 Wireshark capture of telnet frames

以下のように、iptablesのルールで最初のSYNリクエストのRSTを送信できますか?

TCP sequence:
SYN -->
    <-- RST

誰かがこの点で助けてもらえますか...よろしくお願いします。

2
Murukz-userm

面白い。

私はそれをテストしましたが、私のシステムでは期待どおりに機能します。あまり使用されていないローカルサーバーのポート25でテストしました。

[。 1729] 
:INPUT ACCEPT [12:1729] 
:OUTPUT ACCEPT [110:7484] 
:POSTROUTING ACCEPT [110:7484] 
-事前設定- p tcp -m tcp --dport 225 -j DNAT --to-destination:25 
 COMMIT 
#2014年8月22日金曜日14:34:49に完了
#生成者iptables- 2014年8月22日金曜日14:34:49にv1.4.12を保存
 * filter 
:INPUTACCEPT [888:1187686] 
:FORWARD ACCEPT [0:0] 
:OUTPUT ACCEPT [883:134630] 
-AINPUT -p tcp -m tcp --dport 25 -j REJECT --reject-with tcp-reset 
 COMMIT 
#2014年8月22日金曜日14:34:49に完了
 
 telnet XXX.XXX.XXX.XXX 225 
 Trying XXX.XXX.XXX.XXX ... 
 telnet:リモートホストに接続できません:接続が拒否されました

私は接続を確立しません、そしてあなたのようにリセットします。

Linux3.2.0-67とiptablesv1.4.12を使用しています

 tcpdump -vvvv tcp port 225 
 tcpdump:eth0でリッスン、リンクタイプEN10MB(イーサネット)、キャプチャサイズ65535バイト
 14:48:29.178049 IP(tos 0x10、ttl 64、id 50487、オフセット0、フラグ[DF]、proto TCP(6)、長さ60)
 xx.39444> xxxxx.225:フラグ[S]、cksum 0x2c0d(正解)、シーケンス47731887、勝利14600、オプション[mss 1460、sackOK、TS val 665686424 ecr 0、nop、wscale 5]、長さ0 
 14:48:29.178089 IP(tos 0x0、ttl 64、 id 0、オフセット0、フラグ[DF]、proto TCP(6)、長さ40)
 xxxxx.225> xx.39444:フラグ[R。]、cksum 0x3745 (不正解-> 0x8628)、seq 0、ack 47731888、win 0、length 0 
2
Ian Macintosh