連接 Linux 伺服器的主要方式是透過 SSH 協定。這種類型的連接是安全的,因為透過它傳輸的所有資料都是加密的。為了 至 建立 SSH 連接 您應該在要連接的遠端伺服器和用戶端的用戶端上進行設定。有大量用於 SSH 連線的軟體。對於 Linux,OpenSSH 套件是最受歡迎的,而對於 Windows,人們大多使用 PuTTY。
讓我們以 Ubuntu Server 18.04 為例仔細了解伺服器配置,然後嘗試從 Linux 和 Windows 連線到伺服器。
我們所做的一切都將以普通用戶的帳戶為基礎。在本例中,我們建立了一個使用者“邁克爾“和”根”帳戶預設為禁用狀態。
伺服器端設定
運行此命令設定包:
sudo apt install openssh-server
安裝完成後,確保服務正在運作。使用此命令:
systemctl status sshd
地位 ”活躍(奔跑)」表示服務已啟用,且運作正常。
為了避免防火牆阻止傳入連接,請確保已停用它,因為我們不會在本文中配置網路防火牆。
使用此命令:
sudo ufw disable
此時您已經可以連線到伺服器。使用預設設置,伺服器允許透過基於密碼的身份驗證連接到標準連接埠 22。
Linux 上的 SSH 連接
通常,OpenSSH 用戶端預設安裝在 Linux 上,不需要額外的手動設定。可以藉助 ssh 指令從終端機建立連線。在這種情況下,參數將是遠端伺服器的使用者名稱和 IP 位址。在我們用作範例的測試伺服器上只有一個帳戶“mihail”,因此我們將使用它。
ssh [email protected]
在第一次連接時,你必須確認將伺服器的公鑰添加到資料庫中,因此回應“是」。之後您可以輸入密碼。如果連接成功,您將看到伺服器命令列的歡迎文字。現在所有命令都將在遠端伺服器上執行。
透過 Windows 進行 SSH
開啟Putty並設定連線參數。確保開關“連接類型” 轉向 SSH。在“主機名”字段,預設值 22 進入 ”港口“然後點擊”未結案工單“。
第一次連接時 油灰 將要求您確認您信任該伺服器,因此按一下“可以“
輸入登入名稱和密碼後,您將看到遠端伺服器的命令列。
透過金鑰進行身份驗證。提高安全級別
當用戶端嘗試透過 SSH 與伺服器建立安全連線時,在允許連線之前,伺服器需要對用戶端進行身份驗證(驗證)。如前所述,通常預設使用基於密碼的身份驗證。它不能提供強大的安全性,因為總有辦法對其進行暴力破解。此外,密碼驗證不適用於使用腳本的 SSH 連線。
對於此類任務,有一種特殊的金鑰身份驗證方法。重點是客戶端產生私鑰和公鑰,然後將公鑰發送到伺服器。之後您不需要密碼即可連接到伺服器,因為身份驗證是基於公鑰和私鑰進行的。為了提供良好的安全級別,應該限制對私鑰的存取。由於私鑰儲存在客戶端,不透過網路傳輸,因此該方法被認為更加安全。
Linux 上的金鑰驗證
讓我們藉助 ssh-keygen 實用程式軟體在客戶端上產生公鑰和私鑰。該工具將建議更改私鑰的路徑並輸入密碼以獲得額外的安全性。在所有請求中按 Enter 鍵保留所有參數的預設值。
結果,在主目錄中的 .ssh 資料夾下你會發現產生了兩個檔案: id_rsa id_rsa.pub 其中包含對應的私鑰和公鑰。
之後,您需要將公鑰發送到伺服器。為此,請複製“id_rsa.pub”文件放入“〜/.ssh/authorized_keys”文件。讓我們藉助“SSH-copy-id命令」工具。輸入伺服器的登入名稱和 IP 位址,就像普通連線一樣。輸入密碼後,客戶端的公鑰將自動複製到伺服器。執行此命令:
ssh-copy-id [email protected]
完成所有操作後,伺服器將不再需要輸入密碼。
Windows 上的金鑰驗證
未結案工單 普特根 並點擊“產生」。為了產生密鑰,您只需將滑鼠移到螢幕上,該工具就會隨機產生密鑰。
產生密鑰後,點選“保存私鑰」並將其儲存到磁碟上的私鑰檔案。您可以設定任何您喜歡的路徑,但稍後您將需要在 Putty 中指定它。然後從視窗頂部複製公鑰。
我們只需將公鑰複製到終端即可發送它。打開 油灰 並照常連接到伺服器。現在讓我們創建“.ssh/授權金鑰”並限制其他使用者存取該文件,因此只有創建者可以使用。
mkdir .ssh
touch .ssh/authorized_keys
chmod 700 .ssh
chmod 600 .ssh/authorized_keys
建立檔案後,將客戶端的公鑰放入其中。在前一個階段我們將公鑰複製到剪貼簿。若要將剪貼簿中的內容記錄到檔案中,請使用 cat 指令和輸出重定向。
cat > .ssh/authorized_keys
輸入命令後,在終端機視窗中按滑鼠右鍵並貼上剪貼簿中的內容。若要確認輸入,請按“按Ctrl + D”快捷方式並斷開與伺服器的連接。
現在讓我們在Putty中指定私鑰的路徑並再次連接到伺服器。
從現在開始,為了連接到伺服器,您只需要輸入使用者名稱。如果您嘗試從沒有正確私鑰的另一台裝置連接到伺服器,伺服器將要求輸入密碼。設定基於金鑰的身份驗證後,您可以禁止透過密碼存取。