1、使用"ssh"命令,登陸訪問遠程服務器算法
Linux是一個支持多用戶操做的系統,在同一時刻容許多個用戶同時訪問系統,共享系統提供的服務。那麼用戶如何從不一樣的機器上訪問同一臺Linux服務器呢?此時就須要藉助於SSH客戶端,來進行用戶登陸和訪問系統。安全
查看"man ssh"在線文檔,"ssh"命令描述信息以下:服務器
查看"ssh"在線文檔可知,假設遠程服務器ip地址爲:192.168.100.36,遠程用戶名爲:newbie,則訪問遠程服務器的命令以下:網絡
ssh -l newbie 192.168.100.36
2、基於服務器間密鑰的方式,實現"ssh"遠程免密碼登陸ssh
默認狀況下,經過「ssh」客戶端來訪問遠程服務器時,每次都要輸入用戶密碼(在常常訪問服務器時,此種體驗讓人很不爽)。實際上"ssh"能夠實現免密碼登陸,實現的最簡單的方法是建立一個公鑰/私鑰對,以此來驗證服務器的有效性,替代密碼驗證。
注意:免密登陸也不是萬能的。免密登陸時,從一臺【主機A】的用戶userA,使用【主機B】的用戶userB來登陸到【主機B】,此時存在着嚴格的用戶對應關係。基於密鑰免密登錄的實現步驟以下:工具
一、在客戶端【主機A】生成一對密鑰(公鑰/私鑰) 加密
基於空口令生成一個新的ssh密鑰,以實現無密碼登陸,執行命令以下: ssh-keygen -t rsa -P '' -f ~/.ssh/id_rsa
參數說明: -t 加密算法類型,這裏是使用rsa算法 -P 指定私鑰的密碼,不須要能夠不指定 -f 指定生成祕鑰對保持的位置
二、客戶端【主機A】,使用"ssh-copy-id"命令,將客戶端【主機A】的公鑰,發送個服務端【主機B】spa
注:通過ssh-copy-id後接收公鑰的服務端會把公鑰追加到服務端對應用戶的$HOME/.ssh/authorized_keys文件中 .net
ssh-copy-id userB@serverB
三、客戶端【主機A】,使用「ssh」命令訪問服務器端【主機B】,進行登陸操做code
ssh -l userB serverB
四、服務端根據客戶端的用戶名和主機名查找對應的公鑰,將一個隨機的字符串用該公鑰加密後發送給客戶端
五、客戶端用本身的私鑰進行解密收到的字符串,並將解密後的字符串發送給服務端
六、服務端對比發送出去的和接收到的字符串是否相同,若是相同,則登陸成功。
3、設置「ServerAliveInterval」參數,保持SSH客戶端的長連接
用ssh鏈接服務器時,過段時間不用, 須要恢復一下斷開的鏈接, 緣由是NAT防火牆喜歡對空閒的會話進行超時處理,以確保它們狀態表的乾淨和內存的低佔用率,由於 長時間保持鏈接, 會長期佔用部分系統資源, 爲了節省系統資源,NAT防火牆就會把長時間的ssh鏈接斷掉;頻繁重連ssh總歸是有些麻煩,下邊是我對部分ssh工具解決方法:
使用命令參數進行ssh鏈接時加一個參數 -o ServerAliveInterval=30 (客戶端主動向服務端請求響應的間隔爲30s)來保持活動狀態。
ssh -l 登陸用戶名 -o ServerAliveInterval=30 服務器地址
4、服務器間,遠程拷貝命"scp"
scp工具,是基於ssh遠程安全登陸的,能夠將主機A上的文件或目錄,拷貝給主機B而且能夠更名字,也能夠將主機B上的文件或目錄下載到主機A中,同時也支持修改文件名。
一、遠程拷貝文件
scp 本機文件 user@host:路徑/
注:將bigdata1上的/etc/profile文件拷貝到bigdata2的根目錄下 scp /etc/profile root@bigdata2:/
注:將bigdata1上的/etc/profile文件拷貝到bigdata2的根目錄下,並更名爲profile.txt scp /etc/profile root@bigdata2:/profile.txt
二、遠程拷貝目錄
scp -r 本機目錄 user@host:路徑/ 注:將bigdata1上的/bin目錄拷貝到bigdata2的根目錄下 scp -r /bin root@bigdata1:/home/ (-r 表示遞歸)
三、下載文件到本地
scp user@host:文件名 本地目錄 注:將bigdata2上的/profile下載到本地並更名爲profile.txt scp root@bigdata2:/profile ./profile.txt
四、下載目錄到本地
scp -r user@host:文件名 本地目錄 注:將bigdata2上的/bin下載到本地並更名爲bin.bak scp -r root@bigdata2:/home/bin ./bin.bak
轉載說明:本篇博客的「第二節」、「第四節」轉載自網絡。 原文標題:SSH遠程登陸和SSH免密碼登陸 原文地址:https://blog.csdn.net/m0_37822234/article/details/82494556