Python遠端操作Linux

2021-10-02 21:34:31 字數 1545 閱讀 4231

安裝paramiko

執行下面的命令pip install paramiko --default-timeout=60

linux主機ssh安裝

保證有一台linux主機

自己搭建虛擬機器;

如果沒有臨時使用雲主機

保證ssh服務開啟

在linux機器上執行(建議使用ubuntu)

sudo apt-get install ssh或sudo apt-get install openssh-client

ssh-keygen中間會讓你確認,一路回車就行

sudo apt-get update

sudo apt-get install openssh-server

上邊就完成了ssh服務的安裝,接下來檢查是否啟動了

ps -e | grep ssh

如果只有ssh-agent那ssh-server還沒有啟動,需要/etc/init.d/ssh start,如果看到sshd那說明ssh-server已經啟動了。

如果沒有則可以這樣啟動:sudo/etc/init.d/ssh start

linux主機ssh配置

ssh-server配置檔案位於/etc/ssh/sshd_config,在這裡可以定義ssh的服務埠,預設埠是22,你可以自己定義成其他埠號,如22333.然後重啟ssh服務。

通過修改配置檔案/etc/ssh/sshd_config,可以改ssh登入埠和禁止root登入。改埠可以防止被埠掃瞄:

sudo cp /ect/ssh/sshd_config/etc/ssh/sshd_config.original

sudo chmod a-w /etc/ssh/sshd_config.original

編輯配置檔案:

gedit /etc/ssh/sshd_config

找到#port 22修改為:port 22333

找到#permitrootlogin,在下邊新增一行:permitrootlogin no

配置完成後重起:sudo /etc/init.d/ssh restart

配置完成後可使用python操作linux了

示例:

import paramiko

#建立ssh物件

ssh=paramiko.sshclient()

#連線方式

ssh.set_missing_host_key_policy(paramiko.autoaddpolicy())

#發起連線

ssh.connect(「192.168.1.115」,22,」ubuntu」,」密碼」)

#在遠端linux執行命令

stdin,stdout,stderr=ssh.exec_command(「ifconfig」)

#將執行結果stdout列印出來

print(stdout.read().decode(「utf8」))

#關閉ssh連線

ssh.close()

使用python遠端操作linux過程解析

在雲服務測試中,往往需要我們進入雲服務內容進行相關內容的測試。這測試可以使用平台自身的novnc 外部輔助xshell等工具連線到雲服務內部進行測試。但是在如此反覆的測試操作中,就需要用到自動化測試方法去解決這方面的需求。在python中我們可以通過第三方庫paramiko,對linux的雲伺服器進...

python 遠端操作ubuntu

這裡我們用到了paramiko庫,paramiko依賴於pycrypto庫,咱們先安裝這兩個庫 現在安裝成功了來看看使用吧 import paramiko 建立連線 ssh paramiko.sshclient 缺失host knows時的處理方法 ssh.set missing host key ...

python遠端ssh連線linux

1 安裝第三方庫paramiko pip install paramiko2 建立ssh客戶端,並連線 ssh paramiko.sshclient 自動認證 ssh.set missing host key policy paramiko.autoaddpolicy ssh.connect 192...