首页 帮助中心 美国服务器 Linux中阻止对特定 IP 和网络范围的SSH和FTP访问
Linux中阻止对特定 IP 和网络范围的SSH和FTP访问
时间 : 2024-12-11 13:45:42 编辑 : 华纳云 阅读量 : 67

Linux管理员需要知道如何在linux中阻止特定IP或网络范围的SSH和FTP访问,确保网络安全性。阻止特定IP地址或者网络范围SSH和FTP访问一般涉及到防火墙的配置,可以通过iptables,这种方法适用于大部分linux发行版。

阻止特定IP的SSH访问

sudo iptables -A INPUT -p tcp --dport 22 -s <特定IP地址> -j DROP

把特定IP地址替换成想要阻止的IP地址。

阻止特定网络范围的SSH访问:

sudo iptables -A INPUT -p tcp --dport 22 -s <网络范围> -j DROP

FTP一般使用21端口。

阻止特定网络范围的FTP访问:

sudo iptables -A INPUT -p tcp --dport 21 -s <网络范围> -j DROP

还可以使用firewalld(适用于使用firewalld的Linux发行版,如CentOS 7及以上)。阻止特定IP的SSH访问:

sudo firewall-cmd --permanent --zone=public --add-rich-rule='drop tcp $src addr <特定IP地址> port 22'

组织特定网络范围的SSH访问:

sudo firewall-cmd --permanent --zone=public --add-rich-rule='drop tcp $src addr <网络范围> port 22'

阻止特定IP的FTP访问:

sudo firewall-cmd --permanent --zone=public --add-rich-rule='drop tcp $src addr <特定IP地址> port 21'

阻止特定网络范围的FTP访问:

sudo firewall-cmd --permanent --zone=public --add-rich-rule='drop tcp $src addr <网络范围> port 21'

重新加载firewalld以应用更改:

sudo firewall-cmd --reload

另外还可以使用TCP包装器来阻止对特定IP或网络范围的SSH和FTP访问。OpenSSH和FTP是TCP包装器支持下编译的,意味着可以在/etc/hosts.allow和/etc/hosts.deny这两个重要文件中指定哪些主机被允许连接而不需要触及防火墙。第一个文件包含允许主机条目,第二个包含被阻止的主机地址。

例如,让我们阻止对 IP 地址为192.168.1.100且网络范围为192.168.1.0的主机的 SSH 和 FTP 访问。此方法适用于 CentOS 6.x 和 7.x 系列。当然,它也适用于其他发行版,例如 Debian、Ubuntu、SUSE、openSUSE 等。

打开/etc/hosts.deny文件并添加您想要阻止的以下 IP 地址或网络范围:

##### To block SSH Access #####

sshd: 192.168.1.100

sshd: 192.168.1.0/255.255.255.0

##### To block FTP Access #####

vsftpd: 192.168.1.100

vsftpd: 192.168.1.0/255.255.255.0

保存并推出文件,在重新启动sshd和vsftpd服务来使其新的更改生效:

--------------- For SSH Service ---------------

# service sshd restart        [On SysVinit]

# systemctl restart sshd      [On SystemD]

--------------- For FTP Service ---------------

# service vsftpd restart        [On SysVinit]

# systemctl restart vsftpd      [On SystemD]

再尝试用SSH连接服务器或者从被阻止的服务器进行连接:

# ssh 192.168.1.150

会显示:

ssh_exchange_identification: read: Connection reset by peer

再尝试FTP连接服务器:

# ftp 192.168.1.150

输出:

Connected to 192.168.1.150.

421 Service not available.

要再次解除阻止或启用 SSH 和 FTP 服务,请编辑hosts.deny文件并注释掉所有行,最后重新启动 vsftpd 和 sshd 服务。

在实施防火墙规则前,要充分理解其影响并备份关键数据。进行规则测试以确保它们正确执行,不阻碍合法访问,并确认规则针对的是SSH和FTP服务的正确端口。启用SSH密钥认证可增强安全性,同时保持系统和软件的更新,以修补潜在的安全漏洞。遵循这些步骤,可以有效地限制特定IP或网络对SSH和FTP的访问。如需更多帮助欢迎咨询华纳云

华纳云 推荐文章
服务器C盘空间不足有哪些解决方法? 识别IDC机房IP和家庭带宽IP的方法 微信小程序开发与配置全流程指南 网站提醒“您的连接不是私密连接”错误如何处理 常见的linux加密方式有哪些 基于PbootCMS源码搭建网站的方法 UDP协议健康检查的主要方法 美国服务器挂载或读取文件时系统报错怎么办 美国服务器遭入侵如何解决 Redis zadd批量插入怎么实现
客服咨询
7*24小时技术支持
技术支持
渠道支持