python - 如何使用 Python 在本地启动 SSH session ?

标签 python ssh passwords

我的意思是,如果我在系统“A”(Linux)上并且我想通过 ssh 进入系统“B”(Windows):在系统“A”上,我可以执行 ssh admin@xx.xx .xx.xx 会提示我输入密码,当密码通过身份验证后,我将访问系统“B”的“$”(在系统“A”上)。

  1. 如何将用户名和密码作为一行一起发送(因为我想使用脚本)
  2. 如何实现上面的场景。

最佳答案

我一般用Paramiko来做,比较容易

import paramiko

# ssh 
print 'enter ssh'
ssh = paramiko.SSHClient()
ssh.set_missing_host_key_policy(paramiko.AutoAddPolicy()) # this will automatically add the keys
ssh.connect(machineHostName, username=user, password=password)

# Run your commands
# example 1 : ls command
print 'do a ls command'
stdin, stdout, stderr = ssh.exec_command('ls')
print stdout.readlines()
time.sleep(2)
# example 2 : change ip address
print 'changing ip address'
stdin, stdout, stderr = ssh.exec_command('sed -i -- s/'+oldIp+'/'+newIp+'/g /etc/sysconfig/network-scripts/ifcfg-eth0')
print stdout.readlines()
time.sleep(2)

要安装Paramiko,您可以从here下载tar.gz文件。 。

假设你真的是 python 新手,如何安装这个:

  • 下载 tar.gz 文件
  • 将内容提取到文件夹
  • cd 从终端进入解压的文件夹
  • 执行此python setup.py install
  • 那么你可以尝试类似上面的例子

注意:如果您在此处遇到安装注释问题,我可以帮助您。

关于python - 如何使用 Python 在本地启动 SSH session ?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30609570/

相关文章:

python - 检测无限递归

git - 如何从 HTTPS 迁移到 SSH github

git - 如何解决端口 22 连接超时

java - 如何以2种方式处理/存储加密 key 来加密用户密码?

python - 你如何在 Python 中的两个进程之间共享一个变量?

python - 有没有一种简单的方法可以计算 Pandas value_counts 系列的均值和标准差?

python-3.x - 即使使用 load_system_host_keys + WarningPolicy,Paramiko 也无法打开 ssh 连接

jsf-2 - com.sun.faces.ClientStateSavingPassword - 实际密码的建议?

java - 用户密码校验

python mysql 字典