如您所知,開放式SSH技術允許您遠程連接到特定計算機並通過所選受保護的協議傳輸數據。這允許您實現並完全控制所選設備,確保安全交換重要信息甚至密碼。有時用戶需要通過SSH連接,但除了安裝實用程序本身之外,還需要生成和其他設置。我們今天想談談它,以Debian分佈為例。
在Debian中定制SSH
我們將配置過程劃分為幾個步驟,因為每個步驟都負責實現特定操作,並且可能簡單地對某些用戶有用,這取決於個人偏好。讓我們從控制台中的所有操作都開始,需要確認超級用戶的權利,因此提前為此做好準備。安裝SSH-Server和SSH-Client
默認情況下,SSH包含在標準Debian操作系統實用程序集中,但是,由於任何功能,必要的文件可以是憤怒或者只是缺席,例如,當用戶手動製作卸載時。如果您需要預先安裝SSH-Server和SSH-Client,請按照以下說明操作:
- 打開“開始”菜單並從那裡啟動終端。這可以通過標準鍵組合Ctrl + Alt + T來完成。
- 在這裡您對Sudo APT安裝openssh-server命令有興趣,該命令負責安裝服務器部件。輸入它,然後單擊終點以激活。
- 如您所知,需要通過指定超級用戶密碼來激活與sudo參數執行的操作。請考慮未顯示此行中輸入的字符。
- 將通知您已添加或更新包。如果SSH-Server已安裝在Debian中,則在指定包的存在下會出現一條消息。
- 接下來,您需要添加到系統和客戶端,以及連接將來連接的計算機。為此,請使用類似的sudo apt-get安裝openssh-client命令。
沒有更多的額外組件來安裝任何其他組件,您現在可以安全地切換到服務器管理和配置文件以創建鍵並準備所有內容以進一步連接到遠程桌面。
服務器管理和檢查他的工作
簡要介紹讓我們專注於如何管理已安裝的服務器以及檢查其操作。必須在切換到設置之前完成,以確保添加組件的運行是正確的。
- 使用sudo systemctl啟用sshd命令將服務器添加到autoLoad,如果不會自動發生。如果您需要使用操作系統取消啟動,請使用systemctl禁用sshd。然後將需要手動啟動來指定SystemCtl啟動SSHD。
- 所有這些行動絕對必須始終代表超級用戶執行,因此您需要輸入密碼。
- 輸入ssh localhost命令以檢查服務器以進行性能。將localhost替換為本地計算機地址。
- 首次連接時,將通知您未經驗證源。這發生了因為我們還沒有設置安全設置。現在只需通過輸入是確認連接的繼續。
添加一對RSA鍵
通過輸入密碼,從服務器連接到客戶端,反之亦然,但是建議使用RSA算法創建一對將開發的密鑰。這種類型的加密將使可以創建最佳保護,這在嘗試破解時難以繞過攻擊者。只需幾分鐘內添加一對鍵,它看起來像這個過程:
- 打開“終端”並在那裡輸入SSH-keygen。
- 您可以獨立選擇要保存到密鑰路徑的地方。如果沒有願意更改它,只需按ENTER鍵即可。
- 現在創建了打開的鍵。它可以由代碼短語保護。在顯示的字符串中輸入它,或者如果您不想激活此選項,請留空。
- 進入關鍵短語時,必須再次指定以確認。
- 將出現創建公鑰的通知。如您所見,他被分配了一組隨機符號,並且在隨機算法上創建了一個圖像。
由於完成的行動,已經創建了一個秘密和公鑰。它們將參與連接設備之間的連接。現在您必須將公鑰複製到服務器,您可以通過不同的方法執行此操作。
將打開鍵複製到服務器
在Debian中,有三個選項可以將公鑰複製到服務器。我們建議立即熟悉所有這些,以便在將來選擇最佳。這在其中一種方法不適合或不滿足用戶需求的情況下是相關的。
方法1:SSH-Copy-ID團隊
讓我們從最簡單的選項開始,暗示使用ssh-copy-id命令。默認情況下,此實用程序已內置於OS中,因此它不需要預安裝。它的語法也是最簡單的,您需要執行此類操作:
- 在控制台中,將ssh-copy-id命令輸入到用戶名@ remote_host並激活它。將用戶名@ Remote_Host替換為目標計算機的地址,以便發送已成功傳遞。
- 首次嘗試連接時,您將看到消息“主機的真實性”203.0.113.1(203.0.113.1)'無法建立。ECDSA密鑰指紋是FD:FD:D4:F9:77:FE:73 :84:e1:55:00:廣告:D6:6D:22:FE。您確定要繼續連接(是/否)嗎?是。“選擇肯定答案以繼續連接。
- 之後,該實用程序將獨立作為搜索和復制密鑰。結果,如果一切順利,通知“/ usr / bin / ssh-copy-id”將出現在屏幕上:INFO:嘗試使用新密鑰登錄,以過濾掉其alady的任何內容安裝/ usr / bin / ssh-copy-id:Info:1鍵仍安裝 - 如果您現在提示您,它是安裝新鍵用戶名@ 203.0.113.1密碼:“。這意味著您可以輸入密碼並移動到直接控制遠程桌面。
此外,我將指定在控制台中第一個成功授權後,將出現下一個字符:
添加的關鍵數量:1
現在嘗試登錄機器,其中:“ssh”[email protected]'“
並檢查以確保只添加了所需的密鑰。
它表示,當您嘗試連接時,鍵已成功添加到遠程計算機上,不再出現任何問題。
方法2:通過SSH出口鍵
如您所知,公鑰的導出將允許您在未在輸入密碼之前連接到指定的服務器。現在,雖然密鑰尚未在目標計算機上,但您可以通過輸入密碼來連接通過SSH,以便手動移動所需的文件。要執行此操作,請在控制台中您必須輸入命令cat〜/ .ssh / id_rsa.pub | ssh用戶名@ remote_host“mkdir -p〜/ .ssh && touch〜/ .ssh / authorized_keys && chmod -r go =〜/ .ssh && cat >>〜/ .ssh / authorized_keys。”
通知必須出現在屏幕上。
無法建立主機203.0.113.1(203.0.113.1)的真實性。
ECDSA關鍵指紋是FD:FD:D4:F9:77:FE:73:84:E1:55:00:廣告:D6:6D:22:Fe。
您確定要繼續連接(是/否)嗎?
確認它繼續連接。公鑰將自動複製到授權_keys配置文件的末尾。在此導出程序中,可以完成。
方法3:手動複製鍵
此方法將為那些無法創建與目標計算機的遠程連接的用戶,但是對其進行物理訪問。在這種情況下,密鑰必須獨立轉移。首先,通過CAT〜/ .ssh / id_rsa.pub確定服務器PC上的信息.Pub。
控制台應顯示為SSH-RSA String +鍵作為一組字符==演示@ test。現在,您可以通過輸入mkdir -p〜/ .ssh來進入另一台計算機,在那裡您應該創建一個新目錄。它還添加了一個名為textized_keys的文本文件。它仍然只能通過echo +行的公鑰>>〜/ .ssh / authorized_keys插入某些前面的鍵。之後,在沒有先前密碼條目的情況下可以使用身份驗證。這是通過ssh username @ remote_host命令完成的,其中username @ remote_host應該用所需主機的名稱替換。
考慮到允許將公鑰傳輸到一個新設備的方式,以便在不輸入密碼的情況下可以連接,但現在仍顯示條目上的表單。這種情況允許攻擊者訪問遠程桌面,簡單地密碼。接下來,我們提供通過執行某些設置來確保安全性。
禁用密碼身份驗證
如前所述,密碼認證的可能性可以成為遠程連接的安全性的弱鏈路,因為有誤判此類鍵的方法。如果您對服務器的最大保護感興趣,我們建議您禁用此選項。你可以這樣做:
- 通過任何方便的文本編輯器打開/ etc / ssh / sshd_config配置文件,它可以是例如gedit或nano。
- 在打開的列表中,找到“PasswordAuthentication”字符串並刪除#符號以使此命令活動。更改為否以禁用該選項的值。
- 完成後,按Ctrl + O保存更改。
- 請勿更改文件的名稱,但只需按Enter鍵使用設置。
- 您可以通過單擊Ctrl + X來留下文本編輯器。
- 所有更改只有在重新啟動SSH服務後才生效,因此立即通過sudo systemctl重啟ssh立即執行。
由於操作的結果,將禁用密碼身份驗證的可能性,並且輸入將僅在幾個RSA鍵之後可用。當類似的配置時考慮此。
配置防火牆參數
在當今的材料結束時,我們想講述防火牆的配置,該配置將用於化合物的權限或禁止。我們將僅通過主要點,取消複雜的防火牆(UFW)。
- 首先,讓我們檢查現有配置文件的列表。輸入sudo UFW應用程序列表,然後單擊“輸入”。
- 通過指定超級用戶密碼確認操作。
- 在列表中劃定ssh。如果存在這條行,則意味著一切都能正確運行。
- 通過編寫sudo UFW允許OpenSSH允許通過此實用程序進行連接。
- 打開防火牆以更新規則。這是通過sudo UFW啟用命令完成的。
- 通過輸入sudo UFW狀態,您可以隨時檢查防火牆的當前狀態。
在此過程中,Debian中的SSH配置已完成。如您所見,需要觀察到許多不同的細微差別和規則。當然,在一篇文章的框架內,絕對不可能完全適合所有信息,因此我們只觸及了基本信息。如果您有興趣獲得有關此實用程序的更多深入數據,我們建議您熟悉其官方文檔。