服务器设置和教程 · 6 10 月, 2024

CentOS 中使用 SSH 限制 IP 登錄具體方法

CentOS 中使用 SSH 限制 IP 登錄具體方法

在當今的網絡環境中,安全性是每個伺服器管理員必須重視的問題。SSH(Secure Shell)是一種常用的遠程登錄協議,但如果不加以限制,可能會成為黑客攻擊的目標。本文將介紹如何在 CentOS 系統中使用 SSH 限制 IP 登錄,以提高伺服器的安全性。

為什麼要限制 SSH 登錄 IP

限制 SSH 登錄 IP 的主要原因包括:

  • 減少暴力破解攻擊:黑客經常使用暴力破解工具嘗試登錄伺服器,限制 IP 可以有效減少這類攻擊的成功率。
  • 提高安全性:只有授權的 IP 地址才能訪問伺服器,這樣可以降低未經授權訪問的風險。
  • 監控和管理:通過限制 IP,可以更容易地監控和管理伺服器的訪問情況。

限制 SSH 登錄 IP 的具體方法

1. 編輯 SSH 配置文件

首先,您需要編輯 SSH 的配置文件。使用以下命令打開配置文件:

sudo vi /etc/ssh/sshd_config

在文件中,您可以找到以下行:

#PermitRootLogin yes

將其修改為:

PermitRootLogin no

這樣可以禁止 root 用戶通過 SSH 登錄,增加安全性。

2. 使用 AllowUsers 限制用戶登錄

在同一配置文件中,您可以使用 AllowUsers 指令來限制特定用戶的登錄 IP。例如:

AllowUsers user1@192.168.1.100 user2@192.168.1.101

這樣只有來自指定 IP 的用戶才能登錄。

3. 使用防火牆限制 IP

除了 SSH 配置,您還可以使用防火牆來限制 IP。CentOS 通常使用 firewalld 作為防火牆管理工具。您可以使用以下命令來允許特定 IP 的 SSH 訪問:

sudo firewall-cmd --permanent --add-rich-rule='rule family="ipv4" source address="192.168.1.100" port protocol="tcp" port="22" accept'

然後,重新加載防火牆配置:

sudo firewall-cmd --reload

4. 使用 Fail2ban 進一步增強安全性

Fail2ban 是一個可以自動阻止可疑 IP 的工具。安裝 Fail2ban:

sudo yum install epel-release
sudo yum install fail2ban

安裝完成後,啟動 Fail2ban 服務:

sudo systemctl start fail2ban
sudo systemctl enable fail2ban

您可以編輯 /etc/fail2ban/jail.local 文件,添加 SSH 的配置:

[sshd]
enabled = true
port = ssh
filter = sshd
logpath = /var/log/secure
maxretry = 5
bantime = 3600

這樣,Fail2ban 將在多次登錄失敗後自動禁止可疑 IP。

總結

通過以上方法,您可以有效地限制 CentOS 中的 SSH 登錄 IP,從而提高伺服器的安全性。無論是通過編輯 SSH 配置文件、使用防火牆,還是安裝 Fail2ban,這些措施都能幫助您保護伺服器免受未經授權的訪問。如果您需要更高效的解決方案,考慮使用 香港VPS 服務,這將為您的業務提供更強大的支持和安全保障。