在 CentOS 中,防火墙工具取决于系统版本:
下面分别说明。
systemctl status firewalld
# 或
firewall-cmd --state
systemctl start firewalld
systemctl enable firewalld
systemctl stop firewalld
systemctl disable firewalld
firewall-cmd --list-all
firewall-cmd --list-ports
firewall-cmd --list-services
# 临时生效
firewall-cmd --add-port=80/tcp
# 永久生效
firewall-cmd --add-port=80/tcp --permanent
firewall-cmd --add-service=http --permanent
firewall-cmd --add-service=ssh --permanent
firewall-cmd --remove-port=80/tcp --permanent
firewall-cmd --remove-service=http --permanent
firewall-cmd --reload
firewall-cmd --permanent --add-rich-rule='
rule family="ipv4"
source address="192.168.1.100"
port protocol="tcp" port="3306" accept'
firewall-cmd --reload
firewall-cmd --permanent --add-rich-rule='
rule family="ipv4"
source address="192.168.1.200"
reject'
iptables -L -n
iptables -I INPUT -p tcp --dport 80 -j ACCEPT
service iptables save
service iptables restart
✅ 只允许公司 IP 访问 22 端口:
firewall-cmd --permanent --add-rich-rule='
rule family="ipv4"
source address="10.0.0.0/24"
service name="ssh" accept'
firewall-cmd --permanent --remove-service=ssh
firewall-cmd --reload
✅ 禁止 ping:
firewall-cmd --permanent --add-rich-rule='
rule protocol value="icmp" reject'
firewall-cmd --reload
如果你能说明:
我可以给你直接可执行的命令。