詳解Linux中SSH遠端訪問控制

2021-06-22 23:59:20 字數 2713 閱讀 6486

ssh:是一種安全通道協議,主要用來實現字元介面的遠端登入,遠端複製等功能(使用tcp的22號埠)。ssh協議對通訊雙方的資料傳輸進行了加密處理,其中包括使用者登入時輸入的使用者口令。

在rhel 5系統中使用的是openssh伺服器由openssh,openssh-server等軟體包提供的(預設已經安裝),並以將sshd新增為標準的系統服務。

ssh提供一下兩種方式的登入驗證:

1、密碼驗證:以伺服器中本地系統使用者的登入名稱,密碼進行驗證。

2、秘鑰對驗證:要求提供相匹配的秘鑰資訊才能通過驗證。通常先在客戶機中建立一對秘鑰檔案(公鑰和私鑰),然後將公鑰檔案放到伺服器中的指定位置。

注意:當密碼驗證和私鑰驗證都啟用時,伺服器將優先使用秘鑰驗證。

ssh的配置檔案:

sshd服務的配置檔案預設在/etc/ssh/sshd_config,正確調整相關配置項,可以進一步提高sshd遠端登入的安全性。

配置檔案的內容可以分為以下三個部分:

1、常見ssh伺服器監聽的選項如下:

port 22                    //監聽的埠為22

protocol 2                //使用ssh v2協議

listenadderss 0.0.0.0    //監聽的位址為所有位址

usedns no                //禁止dns反向解析

2、常見使用者登入控制選項如下:

permitrootlogin no            //禁止root使用者登入

permitemptypasswords no        //禁止空密碼使用者登入

logingracetime 2m            //登入驗證時間為2分鐘

maxauthtries 6                //最大重試次數為6

allowusers user            //只允許user使用者登入,與denyusers選項相反

3、常見登入驗證方式如下:

passwordauthentication yes                //啟用密碼驗證

pubkeyauthentication yes                    //啟用秘鑰驗證

authorsizedkeysfile .ssh/authorized_keys    //指定公鑰資料庫檔案

ssh客戶端命令程式ssh、scp、sftp

通過ssh命令可以遠端登入到sshd服務,為使用者提供乙個安全的shell環境,一遍對伺服器進行管理和維護。使用時指定登入使用者名稱,目標主機作為引數。如下:

當使用者第一次登入ssh伺服器時,必須接受伺服器發來的rsa秘鑰(根據輸入yes)後才能繼續。接受的秘鑰資訊將儲存到「~/.ssh/known_hosts」檔案中。如果預設埠被更改,可以使用-p命令制定埠。

複製某檔案到ssh伺服器上

使用sftp命令通過ssh安全連線登入遠端伺服器

如果客戶端是windows系統,那麼我們可以使用一些圖形化的工具來訪問linux伺服器。常見的一些圖形化工具有putty,winscp等工具,具體如何使用請各位自行研究。

下面我們來詳細講解如何構建秘鑰對驗證的ssh體系

如下圖所示:簡單描述了構建秘鑰對驗證的基本過程。

根據上圖所示,我們分四步來構建秘鑰對驗證的ssh。

1、在ssh客戶機建立使用者秘鑰對。

如下:為test使用者建立秘鑰對。

上圖命令中:-t用於指定演算法型別,rsa表示使用rsa演算法。

秘鑰短語用來對私鑰文進行保護,當使用私鑰驗證登陸時必須提供此處所設定的短語。

秘鑰對預設儲存在使用者宿主目錄下的.ssh/目錄下。

2、將公鑰上傳至ssh伺服器

將公鑰上傳至ssh伺服器的方式有很多,可以使用u盤拷貝,也可以使用ftp、共享等方式上傳。在此我們使用剛講過的scp命令上傳公鑰檔案。

3、在ssh伺服器中匯入公鑰文字

在伺服器中,目標使用者(用來遠端登入的使用者)的公鑰資料庫位於~/.ssh/目錄下,預設檔名是authorized_keys。如下:將test的公鑰檔案匯入到user使用者的公鑰資料庫中。

4、此時在客戶端就可以使用秘鑰對驗證了。

此時需要使用者輸入建立秘鑰對時輸入的秘鑰短語,而不需要知道使用者的密碼即可登入ssh伺服器。

本文出自 「鄧奇的blog」 部落格,請務必保留此出處

詳解Linux中SSH遠端訪問控制

ssh 是一種安全通道協議,主要用來實現字元介面的遠端登入,遠端複製等功能 使用tcp的22號埠 ssh協議對通訊雙方的資料傳輸進行了加密處理,其中包括使用者登入時輸入的使用者口令。在rhel 5系統中使用的是openssh伺服器由openssh,openssh server等軟體包提供的 預設已經...

linux遠端登入SSH詳解

免密登入 1,測試有沒有ssh服務,沒有的話就安裝openssh 2,cd ssh 3,ssh keygen t rsa p f ssh id rsa 4,cat ssh id rsa.pub ssh authorized keys 5,本機測試ssh localhost 6,ssh copy id...

ssh 遠端訪問ubuntu

安裝ssh sudo apt get install vn4server sudo apt get install openssh server sudo apt get install openssh client 啟動服務 vncserver 初次啟動需要設定密碼兩次 sudo etc init...