端口設置成功后,注意同時應該從 iptables 中, 刪除22端口,添加新配置的 18439,并重啟 iptables。
如果 SSH 登錄密碼是弱密碼,應該設置一個復雜的密碼。Google Blog 上有一篇強調密碼安全的文章:Does your password pass the test?
如果你能以固定 IP 方式連接你的服務器,那么,你可以設置只允許某個特定的 IP 登錄服務器。例如我是通過自己的 VPN 登錄到服務器。設置如下:
# 編輯 /etc/hosts.allowvi /etc/hosts.allow# 例如只允許 123.45.67.89 登錄sshd:123.45.67.89
相對于使用密碼登錄來說,使用證書更為安全。自來水沖咖啡有寫過一篇詳細的教程,征得其同意,轉載如下:
為CentOS配置SSH證書登錄驗證
來源:自來水沖咖啡
下午幫公司網管遠程檢測一下郵件服務器,一臺CentOS 5.1,使用OpenSSH遠程管理。
檢查安全日志時,發現這幾天幾乎每天都有一堆IP過來猜密碼。看來得修改一下登錄驗證方式,改為證書驗證為好。
為防萬一,臨時啟了個VNC,免得沒配置完,一高興順手重啟了sshd就麻煩了。(后來發現是多余的,只要事先開個putty別關閉就行了)
以下是簡單的操作步驟:
1)先添加一個維護賬號:msa2)然后su - msa3)ssh-keygen -t rsa指定密鑰路徑和輸入口令之后,即在/home/msa/.ssh/中生成公鑰和私鑰:id_rsa id_rsa.pub4)cat id_rsa.pub >> authorized_keys至于為什么要生成這個文件,因為sshd_config里面寫的就是這個。然后chmod 400 authorized_keys,稍微保護一下。5)用psftp把把id_rsa拉回本地,然后把服務器上的id_rsa和id_rsa.pub干掉6)配置/etc/ssh/sshd_configProtocol 2ServerKeyBits 1024PermitRootLogin no #禁止root登錄而已,與本文無關,加上安全些#以下三行沒什么要改的,把默認的#注釋去掉就行了RSAAuthentication yesPubkeyAuthentication yesAuthorizedKeysFile .ssh/authorized_keysPasswordAuthentication noPermitEmptyPasswords no7)重啟sshd/sbin/service sshd restart8)轉換證書格式,遷就一下putty運行puttygen,轉換id_rsa為putty的ppk證書文件9)配置putty登錄在connection--SSH--Auth中,點擊Browse,選擇剛剛轉換好的證書。然后在connection-Data填寫一下auto login username,例如我的是msa在session中填寫服務器的IP地址,高興的話可以save一下10)解決一點小麻煩做到這一步的時候,很可能會空歡喜一場,此時就興沖沖的登錄,沒準登不進去:No supported authentication methods available這時可以修改一下sshd_config,把PasswordAuthentication no臨時改為:PasswordAuthentication yes 并重啟sshd這樣可以登錄成功,退出登錄后,再重新把PasswordAuthentication的值改為no,重啟sshd。以后登錄就會正常的詢問你密鑰文件的密碼了,答對了就能高高興興的登進去。至于psftp命令,加上個-i參數,指定證書文件路徑就行了。
新聞熱點
疑難解答