堡垒机项目开发(陆续更新。。。)
SSHClient
用于连接远程服务器并执行基本命令
基于用户名密码连接:
| 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 | importparamiko # 创建SSH对象ssh =paramiko.SSHClient()# 允许连接不在know_hosts文件中的主机ssh.set_missing_host_key_policy(paramiko.AutoAddPolicy())# 连接服务器ssh.connect(hostname='c1.salt.com', port=22, username='wangsen', password='123') # 执行命令stdin, stdout, stderr =ssh.exec_command('df')# 获取命令结果result =stdout.read() # 关闭连接ssh.close() | 
 
import paramiko
transport = paramiko.Transport(('hostname', 22))
transport.connect(username='wupeiqi', password='123')
ssh = paramiko.SSHClient()
ssh._transport = transport
stdin, stdout, stderr = ssh.exec_command('df')
print stdout.read()
transport.close()
基于公钥密钥连接:
| 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 | importparamikoprivate_key =paramiko.RSAKey.from_private_key_file('/home/auto/.ssh/id_rsa')# 创建SSH对象ssh =paramiko.SSHClient()# 允许连接不在know_hosts文件中的主机ssh.set_missing_host_key_policy(paramiko.AutoAddPolicy())# 连接服务器ssh.connect(hostname='c1.salt.com', port=22, username='wangsen', key=private_key)# 执行命令stdin, stdout, stderr =ssh.exec_command('df')# 获取命令结果result =stdout.read()# 关闭连接ssh.close() | 
 
import paramiko
private_key = paramiko.RSAKey.from_private_key_file('/home/auto/.ssh/id_rsa')
transport = paramiko.Transport(('hostname', 22))
transport.connect(username='wupeiqi', pkey=private_key)
ssh = paramiko.SSHClient()
ssh._transport = transport
stdin, stdout, stderr = ssh.exec_command('df')
transport.close()
 
                     
                    
                 
                    
                

 
                
            
         
         浙公网安备 33010602011771号
浙公网安备 33010602011771号