天天看點

SSH密鑰登入伺服器如何設定?

當采用Linux伺服器作為運作環境時,我們經常需要通過SSH登入伺服器進行重新開機服務、修改配置檔案等操作。那麼使用SSH登陸伺服器,就足夠安全了嗎?

  建立SSH密鑰并通過密鑰的形式來登入系統既友善、又更加安全。除非洩露了SSH密鑰檔案,黑客是無法攻破你的伺服器。就算不采用SSH密鑰登陸,最起碼應該修改SSH的預設端口22。

  修改方法:SSH登陸伺服器時的預設端口為22,修改預設端口可以提高安全性

  建立SSH密鑰和公鑰

  1.執行 ssh-keygen -t rsa指令,建立密鑰和公鑰.

  # ssh-keygen -t rsa

  Generating public/private rsa key pair.

  Enter file in which to save the key (/root/.ssh/id_rsa): #

"Enter"鍵,預設即可。

  Created directory '/root/.ssh'.

  Enter passphrase (empty for no passphrase): # "Enter"鍵,預設即可。

  Enter same passphrase again: # "Enter"鍵,預設即可。

  Your identification has been saved in /root/.ssh/id_rsa.

  Your public key has been saved in /root/.ssh/id_rsa.pub.

  The key fingerprint is:

  db:52:c2:15:94:68:70:71:04:1f:39:04:94:fe:32:c2

[email protected]

  The key's randomart p_w_picpath is:

  +--[ RSA 2048]----+

  | .o*XBo |

  | .+o+o |

  | o o. |

  | ... |

  | . S.. |

  | E o=. |

  | .oo. |

  | . |

  | |

  +-----------------+

  2.将公鑰追加到已認證檔案中.

  # cd /root/.ssh/

  # cat id_rsa.pub >> authorized_keys

  # ls

  authorized_keys id_rsa id_rsa.pub

  注:隻有将建立的公鑰追加到已被認證authorized_keys檔案中,公鑰才是有效的。

  3.利用FTP等工具,将id_rsa密鑰檔案,下載下傳儲存至本地。

  修改ssh配置檔案

  # cp /etc/ssh/sshd_config /etc/ssh/sshd_config.backup

  # vim /etc/ssh/sshd_config

  #RSAAuthentication yes

  #PubkeyAuthentication yes

  #AuthorizedKeysFile .ssh/authorized_keys

  修改如下:

  RSAAuthentication yes # 允許使用RSA公鑰認證

  PubkeyAuthentication yes # 允許公鑰認證

  AuthorizedKeysFile .ssh/authorized_keys # 存放該使用者用來登入的RSA公鑰路徑

  注:為了更加安全,也可以禁用“密碼登入”,而隻使用密鑰登入。

  添加如下:

  PasswordAuthentication no # 不允許使用密碼登入

  4.重新開機SSH服務。

  # service sshd restart

  登入測試

  1.如下圖,輸入使用者名,選擇存放在本地id_rsa密鑰檔案,點選登入。

SSH密鑰登入伺服器如何設定?

  2.可以确認,成功登入。

SSH密鑰登入伺服器如何設定?

  如果用PuTTY登入的話,還需要用PuTTYgen将id_rsa密鑰檔案轉換為*.ppk格式

  1.打開PuTTYgen,點選「Load」,導入儲存在本地的id_rsa密鑰檔案。

SSH密鑰登入伺服器如何設定?

  2.點選「OK」即可。

SSH密鑰登入伺服器如何設定?

  3.可以輸入密鑰的密碼,本文省略。點選「Save private key」,儲存密鑰。

SSH密鑰登入伺服器如何設定?

  4.将密鑰檔案儲存為*.ppk格式。

SSH密鑰登入伺服器如何設定?

  5.打開PuTTY軟體,輸入IP位址。

SSH密鑰登入伺服器如何設定?

  6.點選「Data」,輸入登入使用者名。

SSH密鑰登入伺服器如何設定?
SSH密鑰登入伺服器如何設定?
SSH密鑰登入伺服器如何設定?

繼續閱讀