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


SSH(安全 shell)有助於以安全的方式遠端管理計算機。要連線到伺服器,通常使用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+ 次瀏覽

開啟你的職業生涯

完成課程獲得認證

開始學習
廣告