本文主要介绍Linux中,Centos、Ubuntu和Debian开放防火墙端口的命令(iptables、firewalld和ufw)方法。

1、Centos中开放端口

1) CentOS/RHEL 5/6

如需要开放80和443端口,如下:

[root@kube-master ~]# iptables -I INPUT -p tcp -m tcp -dport 80 -j ACCEPT
[root@kube-master ~]# iptables -I INPUT -p tcp -m tcp -dport 443 -j ACCEPT
[root@kube-master ~]# service iptables save

查看规则:

iptables -L -n 

参考文档Linux iptables防火墙的使用配置

2)CentOS/RHEL 7

sudo firewall-cmd --zone=public --permanent --add-port=PORT/tcp
sudo firewall-cmd --reload

如需要开放80和443端口,如下:

sudo firewall-cmd --zone=public --permanent --add-port=80/tcp
sudo firewall-cmd --zone=public --permanent --add-port=443/tcp
sudo firewall-cmd --reload

参考文档Linux firewalld防火墙的使用配置

3)常用命令

查看防火墙是否开启:

systemctl status firewalld

查看所有开启的端口:

firewall-cmd --list-ports

常用命令介绍:

firewall-cmd --state ##查看防火墙状态,是否是running
firewall-cmd --reload ##重新载入配置,比如添加规则之后,需要执行此命令
firewall-cmd --get-zones ##列出支持的zone
firewall-cmd --get-services ##列出支持的服务,在列表中的服务是放行的
firewall-cmd --query-service ftp ##查看ftp服务是否支持,返回yes或者no
firewall-cmd --add-service=ftp ##临时开放ftp服务
firewall-cmd --add-service=ftp --permanent ##永久开放ftp服务
firewall-cmd --remove-service=ftp --permanent ##永久移除ftp服务
firewall-cmd --add-port=80/tcp --permanent ##永久添加80端口
iptables -L -n ##查看规则,这个命令是和iptables的相同的

2、Ubuntu & Debian中开发端口

1)查看防火墙状态

sudo ufw status verbose

2)开放指定端口

如需要开放80和443端口,如下:

sudo ufw allow 80/tcp
sudo ufw allow 443/tcp
sudo ufw reload

3)常用命令

ufw status 查看防火墙状态

ufw enable 开启防火墙

ufw disable 关闭防火墙

ufw reset 重置防火墙,将删除之前定义的所有过滤规则

ufw allow 允许通过

ufw deny 禁止通过


推荐文档