有没有办法使用paramiko和python来获取您尝试连接的ssh服务器的横幅? 我正在处理许多机器的超安全服务器设置过程,密码是通过预定义的密码密钥生成的,密码可以通过ssh横幅打印出来。我可以访问将为我提供密码的实用程序,但我需要横幅中的文本来实际生成初始密码。
答案 0 :(得分:4)
看起来这不是一个功能。好东西我要求它和完全令人敬畏的开发人员把它... Upvote所以其他人可以看到解决方案...... https://github.com/paramiko/paramiko/issues/273
# !/usr/bin/python
import paramiko
def grab_banner(ip_address, port):
client = paramiko.SSHClient()
client.load_system_host_keys()
client.set_missing_host_key_policy(paramiko.AutoAddPolicy())
try:
client.connect(ip_address, port=port, username='username', password='bad-password-on-purpose')
except:
return client._transport.get_banner()
if __name__ == '__main__':
print grab_banner('192.168.1.26', 22)