兩臺(tái)linux服務(wù)器免密傳輸配置

兩臺(tái)linux服務(wù)器免密傳輸配置

兩臺(tái)linux之間,免密配置好之后,可以免密ssh登錄,可以免密傳輸文件,方便使用,另外在jenkins部署應(yīng)用的時(shí)候,也會(huì)用到

兩臺(tái)服務(wù)器,分別是A,B
A上面的用戶userA,密碼passA
B上面的用戶userB,密碼paasB
在這兩個(gè)用戶之間配置免密

這里,我們以設(shè)置A到B的免密傳輸為例

1.首先,確定兩臺(tái)機(jī)器可以正常傳輸文件
從A到B

scp tmp.txt userB@192.168.1.2:/home/userB

scp是 secure copy的縮寫,可能也可以理解為ssh copy ,scp是linux系統(tǒng)下基于ssh登陸進(jìn)行安全的遠(yuǎn)程文件拷貝命令。
這個(gè)命令的使用方法

scp命令:
1、本地文件拷貝到遠(yuǎn)程服務(wù)器:  scp  文件名 用戶名@計(jì)算機(jī)IP(或者計(jì)算機(jī)名稱):遠(yuǎn)程路徑
2、從遠(yuǎn)程服務(wù)器將文件拷回本地:scp  用戶名@計(jì)算機(jī)IP(或者計(jì)算機(jī)名稱):文件名本地路徑
3、將本地目錄拷貝到遠(yuǎn)程服務(wù)器:scp -r 目錄名   用戶名@計(jì)算機(jī)IP(或者計(jì)算機(jī)名稱):遠(yuǎn)程路徑
4、從遠(yuǎn)程服務(wù)器將目錄拷回本地:scp -r 用戶名@計(jì)算機(jī)IP或者(或者計(jì)算機(jī)名稱):目錄名本地路徑

我們需要把tmp.txt拷貝到B服務(wù)器下的/home/userB目錄,使用userB賬號(hào)
執(zhí)行上面的命令后,會(huì)要求輸入userB的密碼,正確輸入userB的密碼,文件會(huì)正確拷貝到B服務(wù)器的/home/userB目錄下

如果拷貝失敗,查看B服務(wù)器的/etc/ssh/sshd_config文件,關(guān)鍵配置

PasswordAuthentication yes

有可能這一項(xiàng)設(shè)置成了no
若這個(gè)sshd_config有修改,則需要重啟sshd

service sshd restart

2.使用useA登錄到A機(jī)器上,執(zhí)行命令

ssh-keygen -t rsa -P ""

這個(gè)命令用來生成基于userA用戶的A服務(wù)器的秘鑰對(duì)
-P "" 表示不設(shè)置密碼

命令執(zhí)行后,一路按回車,直到執(zhí)行完成。
此時(shí),在userA的用戶目錄下,會(huì)生成一個(gè) .ssh目錄,這個(gè)目錄是隱藏的,直接ls是無法看到的,

cd /home/userA/.ssh
ls

可以看到生成的兩個(gè)文件 id_rsa id_rsa.pub
id_rsa 這個(gè)叫私鑰
id_rsa.pub 這個(gè)叫公鑰

3.將 id_rsa.pub 拷貝到 B機(jī)器上,可以通過自己電腦的中轉(zhuǎn)拷貝,也可以用上面的scp命令拷貝
然后,到B機(jī)器上,執(zhí)行命令:

cat id_rsa.pub >> /homg/userB/.ssh/authorized_keys

命令的意思就是將 id_rsa.pub 的內(nèi)容,追加到authorized_keys這個(gè)文件中
為何是追加呢,因?yàn)槿绻卸嗯_(tái)服務(wù)器要建立到B機(jī)器的免密登錄,都需要將公鑰寫到這個(gè)文件里
為何我們要采用這種方式寫入,而不是直接拷貝公鑰內(nèi)容過來呢
因?yàn)橛袝r(shí)候在拷貝過程會(huì)出問題,比如換行,空格等等
直接通過命令追加,能夠避免這些問題
通過命令

cat id_rsa.pub
cat /homg/userB/.ssh/authorized_keys

查看是否正確追加

4.在A機(jī)器上,執(zhí)行

scp tmp.txt userB@192.168.1.2:/home/userB

如果沒有要求輸入密碼,就執(zhí)行成功,則證明配置成功,如果還是需要密碼,參考下面第五步

5.首先,查看B服務(wù)器的/etc/ssh/sshd_config文件,關(guān)鍵字PubkeyAuthentication 確保這個(gè)值是 yes
若這個(gè)sshd_config有修改,則需要重啟sshd

service sshd restart

然后,使用命令
ls -l
查看B服務(wù)器文件及文件夾的權(quán)限
/home/userB 文件夾的權(quán)限為 700,即 顯示的權(quán)限應(yīng)該是 drwx------
/home/userB/.ssh文件夾的權(quán)限也為700
/home/userB/.ssh/authorized_keys 文件權(quán)限為600,即,顯示的權(quán)限應(yīng)該是 -rw-------
如果不是上述權(quán)限,使用命令chmod來修改
命令示例

chmod 700 /home/userB

設(shè)置完成后,在A服務(wù)器使用scp命令測(cè)試,如果還是無法免密,在A服務(wù)器上執(zhí)行命令

ssh -vvv userB@192.168.1.2

最后的ip是B服務(wù)器的ip地址
執(zhí)行完成后,會(huì)得到一長串的打印輸出,查看錯(cuò)誤,然后百度吧。。。

?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡(jiǎn)書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容