2017年8月20日

禁止 root 登入 ssh

ssh 對 Linux 來說是很方便遠端作業的方式 ( 終端機 ),我們可以透過 ssh 連線,登入 Linux 主機,在 Linux 主機裡面做任何事。只要有網路可以 ssh 的地方,就可以連線進入 Linux ,也就可以在任何時間、任何地點,方便的管理 Linux 。



預設狀態下,任何使用者都可以自由以 ssh 方式登入主機,包括 root 也能登入。



root 的權限實在太大,如果任何地方、任何時間,都能以 root 登入,這樣對伺服器來講,其實是很高的風險。



為了降低 root 帳號密碼被 crack 的風險,可以將 root 取消 ssh 登入的權限。

( 再安全的密碼,應該都比不過「不能登入」吧? )













目的:禁止 root 登入 ssh



相關檔案:/etc/ssh/sshd_config



作法:

1.以 root 編輯 /etc/ssh/sshd_config 這個檔案。

# vi /etc/ssh/sshd_config



2.大約在 49 行的位置,找到

#PermitRootLogin yes                                        



修改成

PermitRootLogin no                                            



說明:這個  PermitRootLogin yes  設定值用「 # 」標註起來,代表是使用預設值 「yes」 來設定,我們想要將預設值改成「  no 」來執行,所以要取消 「 # 」符號,並將設定值從 yes 改成 no 。



修改完畢之後,存檔離開。



3.重新啟動 ssh 服務。

# systemctl restart sshd



4.登出 root

# exit                                                                    



5.測試 root 是否可以登入。

login as: root                                                         
root@192.168.1.12's password: ***********          
Access denied                                                      
root@192.168.1.12's password:                          


無法登入!



6.以一般使用者的身分登入。

login as: m8604114                                              
m8604114@192.168.1.12's password: *********  
[m8604114@localhost ~]$                                   


成功!



7.一般使用者切換成 root 。

$ su -                                                                    

密碼:                                                                  






沒有留言: