使用 Python 進行 SSH 最簡單的方法是什麼?


SSH(安全外殼)有助於以安全的方式遠端管理計算機。要連線到伺服器,通常使用 PuTTy、MobaXTerm 或命令列 ssh 應用程式。每個 Unix、Linux 和 Mac 伺服器都將 SSH 作為標準裝置,並且可在每個資料中心使用。SSH 連線使得能夠安全地遠端訪問資源、遠端執行命令、傳輸軟體補丁和更新以及其他管理或管理任務成為可能。

SSH 用於系統管理和檔案傳輸軟體,以及處理路由器、伺服器硬體、虛擬化平臺和作業系統 (OS)。此外,它還在附近和遠端計算機之間建立安全連線。

使用 Paramiko 進行 SSH

安裝 paramiko 最簡單的方法是使用 pip

python -m pip install paramiko

獲得的輸出如下所示。

要檢查 paramiko 是否已安裝,可以使用以下命令

pip list

檢查後,獲得以下結果。

使用 .whl 檔案離線安裝 paramiko。

為此,我們必須下載 .whl 檔案 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

金鑰(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)

更新於: 2023年5月11日

5K+ 次檢視

開啟你的 職業生涯

透過完成課程獲得認證

開始學習
廣告