什么是使用Python进行SSH的最简单方法
SSH(安全外壳)有助于以安全的方式远程管理计算机。要连接到服务器,通常使用PuTTy、MobaXTerm或命令行ssh应用程序。每个Unix、Linux和Mac服务器都包含SSH作为标准设备,并且在每个数据中心中都可以使用。SSH连接使得安全远程访问资源、远程命令执行、软件补丁和更新的传输以及其他管理任务成为可能。
SSH用于系统管理和文件传输软件,同时也用于处理路由器、服务器硬件、虚拟化平台和操作系统(OS)。此外,它还在本地和远程计算机之间创建了一个安全连接。
使用Paramiko进行SSH
通过pip来安装Paramiko是最简单的方法。
python -m pip install paramiko
所获得的输出如下。
要检查paramiko是否安装,可以使用以下命令
pip list
检查后,获得以下结果。
使用.wl文件离线安装paramiko。
为此,我们必须下载 .wl 文件 https://pypi.org/project/paramiko/#files
pip install paramiko-2.7.2-py2.py3-none-any.whl
我们还可以从GitHub克隆并使用setup.py直接从源代码安装某些东西。
git clone https://github.com/paramiko/paramiko
cd paramiko
python setup.py install
使用Paramiko
要使用paramiko,请确保您已正确设置SSH
keys(https://confluence.atlassian.com/bitbucketserver/creating-ssh-keys-776639788.html)在主机上机器上,并且在运行python脚本时,这些密钥是可访问的。完成后,使用以下代码使用ssh连接到远程服务器。
from paramiko import SSHClient
ssh = SSHClient()
ssh.load_system_host_keys()
ssh.connect('user@server:path')
ssh_stdin, ssh_stdout, ssh_stderr = ssh.exec_command('ls')
print(ssh_stdout) #print the output of ls command
使用paramiko.client来连接到一个SSH服务器。SSHClient.connect()方法。唯一必需的参数是主机名。
connect(hostname, port=22, username=None, password=None, pkey=None,
key_filename=None, timeout=None, allow_agent=True, look_for_keys=True,
compress=False, sock=None, gss_auth=False, gss_kex=False, gss_deleg_creds=True,
gss_host=None, banner_timeout=None, auth_timeout=None, gss_trust_dns=True,
passphrase=None, disabled_algorithms=None)