ssh簡明安全規劃

2022-04-25 13:03:41 字數 1973 閱讀 4951

具體操作為在使用者的家目錄下敲:

ssh-keygen -t rsa

表示建立一對rsa金鑰。

接下來要做的是將公鑰追加到authorized_keys檔案上(預設的名字,當然你也可以改)

這個檔案隨追加命令敲完後而生成

cat  id_rsa.pub >> authorized_keys

注意,以上命令操作都是在已經cd進.ssh目錄下敲的,不然的話你要敲全路徑。

還有特別重要的一步,修改authorized_keys檔案為600許可權!

chmod 600 authorized_keys

如果這一步沒做將會導致ssh連線不成功,認證失敗。

其實除了authorized_keys檔案需要600許可權以外,.ssh/目錄也是需要700許可權,

只不過在敲ssh-keygen -t rsa 三次回車預設建立的.ssh/目錄就是700罷了。

檢視 /etc/ssh/sshd_config 檔案,確保以下兩條為 yes且不是注釋狀態:

rsaauthentication yes

pubkeyauthentication yes

authorizedkeysfile          .ssh/authorized_keys        #指定認證檔案,預設值

一般它們預設都是 yes,如果不是,請修改為 yes,儲存並且重啟 ssh 服務:

$ sudo service ssh reload

編輯 /etc/ssh/sshd_config 檔案:

challengeresponseauthentication no

passwordauthentication no

permitemptypasswords no

usepam no

儲存並重啟 ssh 服務:

$ sudo service ssh restart

注意這個時候先不要關閉自身在ssh連線中的客戶端,應重新開啟乙個ssh連線去驗證效果。

在建立好金鑰登入並驗證成功後,做以下加強的安全設定:

禁止root通過ssh登入:permitrootlogin  no

限制ssh方式的使用者登入:allowusers  yunwei

這裡填允許的使用者名稱,舉個例子yunwei是作業系統上的使用者,

這樣之後,就只能是你允許的yunwei使用者可以通過ssh並且是使用金鑰的方式才能登入。

儲存並重啟 ssh 服務:

$ sudo service ssh restart

預設port值是22,可以修改成其它自定義埠,但要注意相關的iptables放行。

還有listenaddress這一項是指定sshd監聽的網路位址,一般你只有乙個ip位址的話就無所謂設定了,如果有兩張網絡卡,乙個是內網ip,乙個是外網ip,只想在內網能ssh的話就在這裡設定。

例如:listenaddress 192.168.1.12:22  (這裡假設伺服器ip是192.168.1.12)

如果你建立金鑰檔案的時候選擇了同時為金鑰檔案建立密碼,那就更加保證了即使金鑰檔案被黑客盜取了,他也無法第一時間就拿來使用。

如果是用命令列的方式ssh的話則如下圖:

sudo ssh -i 金鑰檔案所在路徑 使用者@伺服器ip位址 -p 埠

SSH安全加固

下面提到的引數,需要對應修改的檔案是 etc ssh sshd config 將引數做以下更改 permitrootlogin no 這一步已經做過了。這樣就可以不使用密碼登陸。具體參考如何設定ssh金鑰 參考鏈結,需要進行以下配置 passwordauthentication no 在配合pam的...

ssh探頭安全

1。ssh 合約 ssh 為建立在應用層和傳輸層基礎上的安全協議。ssh 是眼下較可靠,專為 遠端登入 會話和其它網路服務提供安全性的協議。利用 ssh 協議能夠有效防止遠端管理過程中的資訊洩露問題 2.細節 ssh 登入 1.ssh向sshd發起請求,sshd會告訴請求過來的ssh自己是啥版本號,...

SSH安全驗證

只要你知道自己帳號和口令,就可以登入到遠端主機。所有傳輸的資料都會被加密,但是不能保證你正在連線的伺服器就是你想連線的伺服器。可能會有別的伺服器在冒充真正的伺服器,也就是受到 中間人 這種方式的攻擊。需要依靠密匙,也就是你必須為自己建立一對密匙,並把公用密匙放在需要訪問的伺服器上。如果你要連線到ss...