SSH是系統管理員必須掌握的一種基本工具。
SSH或Secure Shell是用於安全登入到遠端系統的協議。這是訪問遠端Linux和類Unix伺服器的最常用方法。
毫無疑問,Linux上使用SSH連線到遠端系統的工具稱為ssh。
以下是基本語法,該命令的最基本形式為,remote_host是你嘗試連線的IP地址或域名.
ssh remote_host
該命令假定你在遠端系統上的使用者名稱與本地系統上的使用者名稱相同。如果你的使用者名稱在遠端系統上不同,則可以使用以下語法來指定它:
ssh remote_username@remote_host
連線到伺服器後,可能會要求你透過提供密碼來驗證你的身份。稍後,將介紹如何生成要使用的金鑰而不是密碼。
要退出本地會話,只需鍵入:
exit
在Ubuntu上,你可以透過鍵入以下命令啟動ssh服務:
sudo service ssh start
在Ubuntu 16.04和Debian Jessie上,可以使用用於管理服務systemctl的systemd命令:
sudo systemctl start ssh
至此,那應該是已經啟動sshd服務了,然後你可以遠端登入。
使用金鑰登入SSH,能夠使用密碼登入到遠端系統雖然很有幫助,但是設定基於金鑰的身份驗證是一個更好的主意。
基於金鑰的身份驗證透過建立一對金鑰來工作:私鑰和公鑰。該私鑰位於客戶機上,並固定和保密。該公鑰可以給任何人或放置到要訪問的任何伺服器上。
當嘗試使用金鑰對進行連線時,伺服器將使用公共金鑰為客戶端計算機建立一條訊息,該訊息只能用私有金鑰讀取。
然後,客戶端將適當的響應傳送回伺服器,伺服器將知道客戶端是合法的。設定金鑰後,整個過程將在後臺自動完成。
建立SSH金鑰,SSH金鑰必須要登入的計算機上生成的。這通常是本地計算機。
在命令列中輸入以下內容:
ssh-keygen -t rsa
按Enter接受預設值。金鑰將在〜/ .ssh / id_rsa.pub和〜/ .ssh / id_rsa中建立。id_rsa檔案僅對所有者可讀和可寫。這就是將其保密的方式。但是id_rsa.pub檔案可以共享,並具有適合此活動的許可權。
可以透過發出以下命令將公鑰複製到遠端伺服器:
ssh-copy-id remote_host
這將啟動SSH會話,將需要使用密碼進行身份驗證。
輸入密碼後,它將把公共金鑰複製到伺服器的授權金鑰檔案中,這將使下次無需密碼即可登入。
ssh -h 或者 man ssh
結論:
學習SSH的方法是值得的,即使僅僅是因為這是一種常見的活動。
SSH是系統管理員必須掌握的一種基本工具。
SSH或Secure Shell是用於安全登入到遠端系統的協議。這是訪問遠端Linux和類Unix伺服器的最常用方法。
毫無疑問,Linux上使用SSH連線到遠端系統的工具稱為ssh。
以下是基本語法,該命令的最基本形式為,remote_host是你嘗試連線的IP地址或域名.
ssh remote_host
該命令假定你在遠端系統上的使用者名稱與本地系統上的使用者名稱相同。如果你的使用者名稱在遠端系統上不同,則可以使用以下語法來指定它:
ssh remote_username@remote_host
連線到伺服器後,可能會要求你透過提供密碼來驗證你的身份。稍後,將介紹如何生成要使用的金鑰而不是密碼。
要退出本地會話,只需鍵入:
exit
在Ubuntu上,你可以透過鍵入以下命令啟動ssh服務:
sudo service ssh start
在Ubuntu 16.04和Debian Jessie上,可以使用用於管理服務systemctl的systemd命令:
sudo systemctl start ssh
至此,那應該是已經啟動sshd服務了,然後你可以遠端登入。
使用金鑰登入SSH,能夠使用密碼登入到遠端系統雖然很有幫助,但是設定基於金鑰的身份驗證是一個更好的主意。
基於金鑰的身份驗證透過建立一對金鑰來工作:私鑰和公鑰。該私鑰位於客戶機上,並固定和保密。該公鑰可以給任何人或放置到要訪問的任何伺服器上。
當嘗試使用金鑰對進行連線時,伺服器將使用公共金鑰為客戶端計算機建立一條訊息,該訊息只能用私有金鑰讀取。
然後,客戶端將適當的響應傳送回伺服器,伺服器將知道客戶端是合法的。設定金鑰後,整個過程將在後臺自動完成。
建立SSH金鑰,SSH金鑰必須要登入的計算機上生成的。這通常是本地計算機。
在命令列中輸入以下內容:
ssh-keygen -t rsa
按Enter接受預設值。金鑰將在〜/ .ssh / id_rsa.pub和〜/ .ssh / id_rsa中建立。id_rsa檔案僅對所有者可讀和可寫。這就是將其保密的方式。但是id_rsa.pub檔案可以共享,並具有適合此活動的許可權。
可以透過發出以下命令將公鑰複製到遠端伺服器:
ssh-copy-id remote_host
這將啟動SSH會話,將需要使用密碼進行身份驗證。
輸入密碼後,它將把公共金鑰複製到伺服器的授權金鑰檔案中,這將使下次無需密碼即可登入。
ssh -h 或者 man ssh
結論:
學習SSH的方法是值得的,即使僅僅是因為這是一種常見的活動。