溫馨提示×

怎樣在CentOS上限制SSH登錄

小樊
48
2025-06-26 08:42:18
欄目: 智能運維

在CentOS上限制SSH登錄可以通過多種方法實現,以下是一些常見的方法:

1. 使用 sshd_config 文件

編輯 /etc/ssh/sshd_config 文件來配置SSH服務器的行為。

1.1 限制特定IP地址訪問

sshd_config 文件中添加或修改以下行:

AllowUsers user1@192.168.1.1 user2@192.168.1.2

這會限制 user1 只能從 192.168.1.1 訪問,user2 只能從 192.168.1.2 訪問。

1.2 限制特定用戶訪問

sshd_config 文件中添加或修改以下行:

AllowUsers user1 user2

這會限制只有 user1user2 可以登錄。

1.3 禁止root用戶遠程登錄

sshd_config 文件中添加或修改以下行:

PermitRootLogin no

這會禁止root用戶通過SSH遠程登錄。

2. 使用防火墻限制IP地址

你可以使用 firewalldiptables 來限制特定IP地址的訪問。

2.1 使用 firewalld

安裝并啟用 firewalld

sudo yum install firewalld
sudo systemctl start firewalld
sudo systemctl enable firewalld

然后添加規則來允許特定IP地址訪問SSH端口(默認是22):

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

2.2 使用 iptables

安裝 iptables

sudo yum install iptables-services
sudo systemctl start iptables
sudo systemctl enable iptables

然后添加規則來允許特定IP地址訪問SSH端口:

sudo iptables -A INPUT -p tcp --dport 22 -s 192.168.1.1 -j ACCEPT
sudo service iptables save

3. 使用PAM模塊

你可以使用PAM(Pluggable Authentication Modules)來進一步限制SSH登錄。

3.1 安裝 pam_access

安裝 pam_access

sudo yum install pam_access

3.2 配置 pam_access

編輯 /etc/security/access.conf 文件,添加以下行來限制特定IP地址或用戶:

- : ALL EXCEPT 192.168.1.1 : ALL

這會拒絕所有IP地址,除了 192.168.1.1。

編輯 /etc/pam.d/sshd 文件,添加以下行來啟用 pam_access

account required pam_access.so

4. 使用Fail2Ban

Fail2Ban可以監控日志文件并根據規則禁止惡意IP地址。

4.1 安裝Fail2Ban

安裝Fail2Ban:

sudo yum install fail2ban

4.2 配置Fail2Ban

編輯 /etc/fail2ban/jail.local 文件,添加以下內容來配置Fail2Ban:

[sshd]
enabled = true
port = sshd
filter = sshd
logpath = /var/log/secure
maxretry = 3
bantime = 600

然后啟動Fail2Ban服務:

sudo systemctl start fail2ban
sudo systemctl enable fail2ban

通過以上方法,你可以有效地限制SSH登錄,提高系統的安全性。

0
亚洲午夜精品一区二区_中文无码日韩欧免_久久香蕉精品视频_欧美主播一区二区三区美女