OpenSSH是Linux/Unix下一款加密通訊軟體,同時也是我們用來遠端控制Linux/Unix伺服器重要的必裝軟體。對於各版本的Linux及Unix發行版而言,OpenSSH的設定檔位置都各不一樣。如Ubuntu下OpenSSH設定檔就在/etc/ssh/sshd_config。
OpenSSH安全選項:Port 22// OpenSSH開啟的連接埠號碼LoginGraceTime 120// 用戶端串連伺服器成功後多少秒未登陸就被強制關閉串連PermitRootLogin yes// 是否允許Root使用者登陸,yes為允許,no為禁止,為了安全起見,建議修改為no,防止被暴力破解 AllowUsers webgod// 允許登陸的使用者,預設不存在 AllowGroups webgod// 允許登陸的使用者組,預設不存在 DenyUsers webgod// 禁止登陸的使用者,預設不存在 DenyGroups webgod// 禁止登陸的使用者組,預設不存在
為了安全起見,可以把預設的22號連接埠修改為其他的空閑連接埠號碼(如435等),防止被掃描。同時,還需要把/etc/services檔案中的ssh連接埠定義為:
ssh 22/tcp
ssh 22/udp
此外,也可以使用AllowUsers、AllowGroups、DenyGroups以及DenyUsers配置參數,或者它們的組合,限定使用者或使用者組的存取權限。例如,為了限定只有webgod使用者能夠訪問系統,可以在/etc/ssh/sshd_config設定檔中增加下列配置參數
AllowUsers webgod
重新啟動sshd之後,除了webgod使用者,系統將會拒絕接收其他使用者的登入,並輸出拒絕訪問的錯誤資訊。
修改OpenSSH設定檔之後,為了使新的設定生效,需要重新啟動sshd守護進程。
$ sudo /etc/init.d/ssh restart
附:與SSH有關的設定檔:
OpenSSH的設定檔案和主要檔案存放在/etc/ssh/目錄中,主要包括如下檔案:
/etc/ssh/sshd_config:sshd伺服器的設定檔案
/etc/ssh/ssh_config:ssh客戶機的設定檔案
/etc/ssh/ssh_host_key:SSH1用的RSA私密金鑰
/etc/ssh/ssh_host_key.pub:SSH1用的RSA公開金鑰
/etc/ssh/ssh_host_rsa_key:SSH2用的RSA私密金鑰
/etc/ssh/ssh_host_rsa_key.pub:SSH2用的RSA公開金鑰
/etc/ssh/ssh_host_dsa_key:SSH2用的DSA私密金鑰
/etc/ssh/ssh_host_dsa_key.pub:SSH2用的DSA公開金鑰