记录SSL或TLS的出站连接

时间:2014-11-04 21:33:46

标签: ssl iptables

许多供应商很快就关闭了SSLv3,我正在寻找一种方法来记录服务器的所有出站连接,以确保他们使用的是TLS而不是SSL。目前供应商都支持这两种产品,但如果我们使用TLS而不是SSL,我想记录,以防错过任何代码。

特别关注使用iptables并输入syslog:使用IP信息建立的TLS连接。我不需要解码实际传输,只需使用TLS验证它。

提前谢谢!

2 个答案:

答案 0 :(得分:1)

如果您在SSL Hello中查找握手和版本,则可以检测到它: 使用u32模块查找具有SSLV3签名的SSL客户端hello数据包:

 iptables -I OUTPUT 1 \
  -p tcp \! -f --dport 443 \
  -m state --state ESTABLISHED -m u32 --u32 \
  "0>>22&0x3C@ 12>>26&0x3C@ 0 & 0xFFFFFF00=0x16030000 && \
   0>>22&0x3C@ 12>>26&0x3C@ 2 & 0xFF=0x01 && \
   0>>22&0x3C@ 12>>26&0x3C@ 7 & 0xFFFF=0x0300" \
  -j LOG --log-prefix "SSLv3 Client Hello detected: " # or -j DROP ...

HERE,第一次google返回" iptables ssl 3"

答案 1 :(得分:0)

您需要进行深度数据包检查。 SSLv3和TLS使用相同的端口/协议。差异主要在于握手。