linux ssh 安全強化

背景:centos7或者ubuntu、OpenSSH_6.6.1p1, OpenSSL 1.0.1e-fips 11 Feb 2013、xshell5

一、修改端口號

nmap、鐘馗之眼等一些掃描工具會掃描一些常見端口,sshd的22端口必定也在其中

修改/etc/ssh/sshd_config,把 Port 22 修改成你喜歡的端口號,最好是>10000,但是要<65535

二、使用證書登錄

1. 生成密鑰,我這里用的是xshell 5

生成密鑰.png
生成密鑰.PNG

類型選擇RSA,長度自己喜歡

生成密鑰.PNG
生成密鑰.PNG

這里可以選擇保存為文件,然后使用winscp上傳到服務器,然后拷貝內容到(你要登錄的用戶的home目錄)/.ssh/authorized_keys

  如:cat id_rsa_2048.pub >>/home/(你要登錄的用戶用戶名)/.ssh/authorized_keys

(推薦)或者直接拷貝公鑰到/home/(你要登錄的用戶用戶名)/.ssh/authorized_keys,沒有.ssh文件夾和authorized_keys就自己新建一個,不過要注意文件所屬者

1.1.(推薦)或者使用ssh-keygen 生成密鑰

選項

  • -t #密鑰類型,dsa | ecdsa | ed25519 | rsa | rsa1
  • -b bits #密鑰長度 1024 | 2048 |4096 | 8192,默認2048
例:ssh-keygen -t rsa -b 4096

然后可以在/home/(user)/.ssh/ 目錄中找到一對密鑰id_rsa是私鑰, id_rsa.pub是公鑰,然后把公鑰復制到authorized_keys,私鑰自己留著

ok!到這里我們就得到一對密鑰了,一個是公鑰(已經拷貝到服務器上了),一個是私鑰,在xshell5上(在工具->用戶密鑰管理者可以看到),私鑰要導出來,然后隨身攜帶,否者就無法登錄自己的服務器了

2.修改/etc/ssh/sshd_config,修改以下幾個選項

  • PermitRootLogin no #不允許root登錄
  • StrictModes no #解決Authentication refused: bad ownership or modes for file /home/---/.ssh/authorized_keys的問題
  • RSAAuthentication yes #開啟RSA類型認證
  • AuthorizedKeysFile .ssh/authorized_keys #認證密鑰文件位置
  • PasswordAuthentication no #不允許直接密碼登錄(有了證書登錄,就不用密碼登錄了)

3.登陸服務器

service sshd restart
嘗試登錄:

登錄.PNG
OK!.PNG
最后編輯于
?著作權歸作者所有,轉載或內容合作請聯系作者
平臺聲明:文章內容(如有圖片或視頻亦包括在內)由作者上傳并發布,文章內容僅代表作者本人觀點,簡書系信息發布平臺,僅提供信息存儲服務。

推薦閱讀更多精彩內容

  • SSH 為 Secure Shell 的縮寫,由 IETF 的網絡小組(Network Working Group...
    shuff1e閱讀 1,801評論 1 11
  • 1、遠程連接服務器 遠程連接服務器對于管理員來說,是一個很有用的操作。它使得對服務器的管理更為方便。不過方便歸方便...
    Zhang21閱讀 39,586評論 0 20
  • 1.Linux安裝前的配置 1.1.關閉防火墻 本站文檔是假定「服務器在防火墻以內」的前提下編纂的,在這個前提下...
    lao男孩閱讀 3,351評論 0 4
  • SSH是安全的遠程登錄,使用SSH v2的協議版本,基于DH算法做密鑰交換,基于RSA或DSA實現身份認證。SSH...
    Yi_Feng閱讀 1,159評論 0 1
  • 文/:吳世和 走進貓石河, 山明水秀,鳥歡魚樂。 祥云繚繞,日麗風和, 正孕育著繁花朵朵。 走進貓石河, 瓊樓筍拔...
    盛世和諧閱讀 285評論 0 0