怎么关闭端口linux?Linux系统下的常用命令与示例


1. 使用iptables:

`iptables` 是Linux中最常用的防火墙工具之一。你可以使用它来允许或拒绝来自特定IP地址、特定端口的流量。

禁止特定端口:

bash`iptables -A INPUT -p tcp --dport 22 -j DROP`

这个命令会阻止所有到22端口的TCP流量。

如果你想临时禁用某个规则,可以使用:

bash`iptables -D INPUT -p tcp --dport 22 -j DROP`

永久保存规则:

你需要将规则添加到`/etc/sysconfig/iptables`文件(在某些发行版中)或使用`iptables-save > /etc/iptables.up.rules`来保存规则。

2. 使用firewalld:

`firewalld` 是另一个流行的防火墙工具,特别是在Red Hat系列的发行版中。

禁止特定端口:

bash`firewall-cmd --permanent --zone=public --remove-port=22/tcp`

这个命令会永久地从公共区域中删除22端口。

重新加载防火墙配置:

bash`firewall-cmd --reload`

3. 使用UFW:

`UFW`(Uncomplicated Firewall)是一个在Ubuntu和其他基于Debian的发行版中使用的防火墙工具。

禁止特定端口:

bash`ufw deny 22/tcp`

永久禁止:

bash`sudo ufw allow 22/tcp`

然后,使用`sudo ufw enable`来启用UFW并保存规则。

4. 使用nftables:

`nftables` 是Linux内核中较新的防火墙工具,它提供了比`iptables`更强大的功能。

禁止特定端口:

bash`nft add rule inet filter input tcp dport 22 drop`

保存规则:

bash`nft list ruleset > /etc/nftables.conf`

然后,你可以使用`nft -f /etc/nftables.conf`来加载规则。

请注意,关闭某些端口,尤其是像SSH(22端口)这样的常用端口,可能会使你的系统于安全风险中。在更改任何防火墙规则之前,请确保你了解这些规则的影响,并考虑使用VPN、SSH密钥或其他安全措施来增强系统的安全性。

每次修改防火墙规则后,最好使用`netstat -tuln`或`ss -tuln`来检查哪些端口是开放的,以确保你的更改已经生效。

这些命令和示例应该为你提供了一个在Linux系统中关闭端口的基本指南。但请记住,在修改任何防火墙规则之前,请确保你了解这些规则的影响,并始终在测试环境中首先尝试这些更改。