Ssl
如何查看 openldap 連接的 TLS 密碼?
我們的 OpenLDAP 伺服器在 EL6 上執行版本。OpenLDAP 是針對 Mozilla 網路安全服務 (NSS) 庫建構的。我們的 LDAP 客戶端來自各種 Unix 和 Linux 系統。
當我們使用我們首選的 TLS 密碼時,我們無法讓 OpenLDAP 連接為客戶端或複制工作。
例如,如果我們使用 Red Hat 的Strongest available ciphers only列表,例如:
# /etc/openldap/slapd.conf TLSProtocolMin 3.2 TLSCipherSuite ECDHE-RSA-AES256-SHA384:AES256-SHA256:!RC4:HIGH:!MD5:!EDH:!EXP:!SSLV2:!eNULL
客戶端連接失敗,因為它們不符合我們對最低安全強度因子 (SSF) 的 ACL 要求:
slapd[22887]: conn=1022 fd=20 ACCEPT from IP=192.168.100.101:35936 (IP=192.168.100.100:636) slapd[22887]: conn=1022 fd=20 TLS established tls_ssf=128 ssf=128 ... slapd[22887]: <= check a_authz.sai_ssf: ACL 256 > OP 128
如何查看此連接使用的密碼,以便從列表中刪除它?
如果我們禁用密碼列表並使用 OpenLDAP + NSS 提供的預設值,它可以工作:
# /etc/openldap/slapd.conf TLSProtocolMin 3.2 # TLSCipherSuite ECDHE-RSA-AES256-SHA384:AES256-SHA256:!RC4:HIGH:!MD5:!EDH:!EXP:!SSLV2:!eNULL slapd[6020]: conn=1003 fd=20 ACCEPT from IP=192.168.100.101:35936 (IP=192.168.100.100:636) slapd[6020]: conn=1003 fd=20 TLS established tls_ssf=256 ssf=256
但是,預設列表是不可接受的,因為它包含一些我們的安全團隊不想要的弱密碼,例如 RC4-SHA 和 RC4-MD5 密碼。
我們知道 EL6 將在今年年底前停產。那是一個不同的問題。
我無法直接使用節點
tcpdump
或tshark
在節點上執行此操作。我必須做的是tcpdump
在機器上擷取數據,將數據傳輸到我的筆記型電腦,然後按照https://security.stackexchange.com/questions/52150/identify-ssl-version-and-cipher執行現代版本的 Wireshark -套房另一個非常有用的命令是使用
nmap
’s 腳本來列舉密碼:$ nmap --script ssl-enum-ciphers -p 636 ldap.example.org -Pn PORT STATE SERVICE 636/tcp open ldapssl | ssl-enum-ciphers: ... | TLSv1.2 | Ciphers (16) | TLS_ECDHE_RSA_WITH_3DES_EDE_CBC_SHA | TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA | TLS_ECDHE_RSA_WITH_AES_128_CBC_SHA256 | TLS_ECDHE_RSA_WITH_AES_128_GCM_SHA256 | TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA | TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384 | TLS_ECDHE_RSA_WITH_AES_256_GCM_SHA384 | TLS_RSA_WITH_3DES_EDE_CBC_SHA | TLS_RSA_WITH_AES_128_CBC_SHA | TLS_RSA_WITH_AES_128_CBC_SHA256 | TLS_RSA_WITH_AES_128_GCM_SHA256 | TLS_RSA_WITH_AES_256_CBC_SHA | TLS_RSA_WITH_AES_256_CBC_SHA256 | TLS_RSA_WITH_AES_256_GCM_SHA384 | TLS_RSA_WITH_CAMELLIA_128_CBC_SHA | TLS_RSA_WITH_CAMELLIA_256_CBC_SHA Nmap done: 1 IP address (1 host up) scanned in 0.34 seconds
這些
AES_128
密碼導致了我的問題,因此我通過將其添加到排除密碼列表中來禁用它們:TLSCipherSuite HIGH:!LOW:!MEDIUM:!RC4:HIGH:!MD5:!EDH:!EXP:!SSLV2:!eNULL:!AES128