允許個別 IP 用 root 登入 SSH


基於保安理由, 很多伺服器都會禁止 root 登入 SSH, 我認為這個設定也是必須的。在一些內部測試用的伺服器, 為了方便可能會允許 root 登入, 另一個較好的做法是設定只讓個別 IP 用 root 帳號登入 SSH.

透過 sshd 的 “Match Address” 便可以實現, 除了登入 root 帳號外, 也可以設定其他帳號, 只允許個別 IP 登入。

首先開啟 sshd 的設定檔:

/etc/ssh/sshd_config

  • $ sudo vi /etc/ssh/sshd_config

找到 “PermitRootLogin no” 一行, 在後面加入 Match Address, 例如以下設定是允許 192.168.1.100 的 IP 登入 root 帳號:

除了允許個別 IP 外, 也可以允許設定整個 class C:

或者允許多個 IP:

儲存設定後可以先測試語法是否正確:

/linux/test-sshd-config

  • # sshd -T

沒有問題後重新載入 sshd 設定便完成了:

/linux/reload-sshd

  • $ sudo systemctl reload sshd

Leave a Reply