openssl s_client -connect example.com:443 -showcerts的解决方案。根据我的研究,ssh使用的是在man sshd_config中列出的默认密码。然而,我需要一个可以在脚本中使用的解决方案,因为man sshd_config没有列出有关密钥长度的信息sshd_config中指定ServerKeyBits。
我猜ssh -vv localhost &> ssh_connection_specs.out会返回我所需的信息,但我不确定列出的密码是客户端还是服务器支持的密码。而且我不知道如何在脚本中以非交互方式运行它。
是否有一种方便的方法来获取SSH连接信息?
sshd -T | grep "\(ciphers\|macs\|kexalgorithms\)"只适用于RHEL7主机,而不适用于RHEL6。最后我使用了nmap --script SSH2-hostkey localhost和nmap --script ssh-hostkey localhost。 - Henrik Pingelssh -vv输出的是客户端到服务器(ctos)和服务器到客户端(stoc)之间支持的功能。然而,这些输出似乎受限于双方的支持,使它们在安全审计中的实用性减弱。 - Moshe-v(debug1) 只显示已经同意/选择的值,但是-vv(debug2) 也会分别显示客户端和服务器的提议。顺便说一下:openssl s_client并不能完全显示服务器支持的所有内容,只能显示服务器基于给定客户端选择的单个套件(以及1.3版本的密钥交换/身份验证)。SSL/TLS协议并不向客户端提供这些信息,但SSH协议可以。 - dave_thompson_085