在Linux系统中,限制特定IP地址登录可以通过多种方式实现,以下是几种常见的方法:
编辑SSH服务器的配置文件 /etc/ssh/sshd_config
,添加或修改以下内容:
# 允许特定IP地址登录
AllowUsers user@192.168.1.100 user@192.168.1.101
# 或者拒绝特定IP地址登录
DenyUsers user@192.168.1.102 user@192.168.1.103
修改完成后,重启SSH服务以使更改生效:
sudo systemctl restart sshd
通过iptables防火墙规则来限制特定IP地址的访问:
# 允许特定IP地址访问SSH端口(默认22)
sudo iptables -A INPUT -p tcp -s 192.168.1.100 --dport 22 -j ACCEPT
sudo iptables -A INPUT -p tcp -s 192.168.1.101 --dport 22 -j ACCEPT
# 拒绝其他所有IP地址访问SSH端口
sudo iptables -A INPUT -p tcp --dport 22 -j DROP
保存iptables规则:
sudo sh -c "iptables-save > /etc/iptables/rules.v4"
Fail2Ban是一个入侵防御软件框架,可以通过监控日志文件并根据预定义的规则自动禁止恶意IP地址。
安装Fail2Ban:
sudo apt-get install fail2ban
配置Fail2Ban,编辑 /etc/fail2ban/jail.local
文件,添加以下内容:
[DEFAULT]
bantime = 600
maxretry = 3
[sshd]
enabled = true
filter = sshd
logpath = /var/log/auth.log
port = ssh
maxretry = 3
启动Fail2Ban服务:
sudo systemctl start fail2ban
sudo systemctl enable fail2ban
编辑 /etc/hosts.allow
和 /etc/hosts.deny
文件来限制特定IP地址的访问。
允许特定IP地址:
sshd: 192.168.1.100, 192.168.1.101
拒绝其他所有IP地址:
sshd: ALL
通过上述方法,你可以有效地限制Linux系统上的SSH登录IP地址,从而提高系统的安全性。
领取专属 10元无门槛券
手把手带您无忧上云