ssh金鑰登入及遠端執行命令

2022-08-29 11:51:13 字數 1624 閱讀 3524

ssh金鑰登入及遠端執行命令

1 使用金鑰登入

1.1 建立金鑰對

1.2 上傳公鑰檔案

1.3 匯入公鑰資訊

1.4 使用金鑰對登入

2 遠端執行命令

2.1 簡單命令

2.2 使用指令碼執行多命令

以192.168.1.104作為客戶機

以192.168.1.103作為伺服器

1 使用金鑰登入

1.1 建立金鑰對

在ssh客戶機建立使用者秘鑰對

ssh-keygen -t rsa之後全回車即可

將會在~/.ssh目錄中生成兩個檔案:

id_rsa(

私鑰)

與 id_rsa.pub(公鑰)

1.2 上傳公鑰檔案

當然,也可以直接將內容拷貝貼上

scp ~/.ssh/id_rsa.pub [email protected]:~/.ssh/id_rsa.pub_192.168.1.104

1.3 匯入公鑰資訊

在ssh伺服器中匯入公鑰文字

在伺服器中,目標使用者(用來遠端登入的使用者

)的公鑰資料庫位於

~/.ssh

目錄下,預設檔名是

authorized_keys

。注意修改authorized_keys許可權

# 如果

authorized_keys

不存在,則建立它

touch ~/.ssh/authorized_keys

# 將上傳的公鑰新增到

authorized_keys

後面cat ~/.ssh/id_rsa.pub_192.168.1.104 >> ~/.ssh/authorized_keys

# 修改

authorized_keys

許可權chmod 700 ~/.ssh

chmod 600 ~/.ssh/authorized_keys

# 檢視

authorized_keys

最後一行

tail -1 ~/.ssh/authorized_keys

1.4 使用金鑰對登入

在客戶機上,可以直接使用命令ssh 192.168.1.103進行登入,而不需要輸入使用者名稱與密碼了

2 遠端執行命令

2.1 簡單命令

雙引號,必須有。如果不加雙引號,第二個命令在本地執行

分號,兩個命令之間用分號隔開

ssh [email protected] "cd ~ ; touch ssh.txt"

2.2 使用指令碼執行多命令

#!/bin/bash

ssh [email protected] > /dev/null 2>&1 << sshoff

cd ~

touch autossh.txt

exit

sshoff

echo "done!"

遠端執行的內容在

<< sshoff 至

sshoff

之間,在遠端機器上的操作就位於其中

注意的點:

sshoff可以隨便修改成其他形式

重定向目的在於不顯示遠端的輸出了

在結束前,加exit退出遠端節點

ssh無金鑰遠端登入配置

假設有兩台需要配置ssh無金鑰遠端登入的伺服器,分別為 huawei 10.18.133.1 和 huawei 10.18.133.2 1.安裝ssh 若沒安裝的話 sudo apt get install ssh 2 在兩台伺服器上均執行以下命令,可以免密碼登陸本機 2.1檢視在 目錄下是否存在....

ssh金鑰登入遠端主機配置

1.什麼是公鑰 私鑰 2.本地客戶機 windows 生成金鑰對 3.配置遠端主機 1 密碼登入需要ssh登入的使用者your username 2 安裝openssh sudo apt get update sudo apt get install ssh ssh v顯示ssh版本號即表示安裝成功...

ssh 金鑰登入

一 ssh客戶端建立好連線 1 建立號連線 2 生成公鑰 金鑰 剛建立的連線上設定,乙個連線對應乙個設定 二 先通過密碼認證設定伺服器環境 1 設定伺服器許可權 pwd home staff mylogin chmod 750 home staff mylogin mkdir ssh chmod 7...