0

たとえば、subdomain.mydomain.comへの接続のみを許可したいとします。私はそれを部分的に機能させていますが、Client Helloが許可されると、クライアントキー交換で奇妙なループに陥ることがあります。ああ、さらに面倒なことに、これは自己署名証明書であり、ページには認証が必要であり、HTTPSは非標準のポートでリッスンしています...したがって、TCP/SSLハンドシェイクのエクスペリエンスは多くのユーザーで大きく異なります。

-mは最近正しいルートですか?文字列が表示されたら完全なTCPストリームを許可するためのより適切な方法はありますか?

これが私がこれまでに持っているものです:

#iptables -N SSL
#iptables -A INPUT -i eth0 -p tcp -j SSL
#iptables -A SSL-m最近の--set-ptcp --syn --dport 400
#iptables -A SSL-m最近の--update-ptcp --tcp-flags PSH、SYN、ACK SYN、ACK --sport 400
#iptables -A SSL-m最近の--update-ptcp --tcp-flags PSH、SYN、ACK ACK --dport 400
#iptables -A SSL-m最近--remove-ptcp --tcp-flags PSH、ACK PSH、ACK --dport 400 -m string --algo kmp --string "subdomain.mydomain.com" -j ACCEPT

はい、私はnginxの調整でこれを回避しようとしましたが、クライアントのこんにちはの前にnginxが444を返すようにすることはできません。代わりにこれを達成する方法を考えることができれば、私はすべての耳です、エラー、目です。

4

1 に答える 1

1

serverfaultで述べたように、私は解決策を見つけました:

iptables -A INPUT -p tcp --tcp-flags FIN、PSH、ACK PSH、ACK --dport 400 -m connbytes --connbytes 0:512 --connbytes-dir original --connbytes-mode bytes -m string- algo bm!--string "subdomain.mydomain.com" -j REJECT --reject-with tcp-reset
iptables -A INPUT -i eth0 -p tcp --dport 400 -j ACCEPT
于 2011-01-11T00:01:51.340 に答える