作为Linux的经典杰作,云服务器利用率最高的centos系统深受大众喜爱。在使用中,经常需要检查端口和释放端口。刚接触它的人通常很难理解。百度里经常有firewall和iptables这两个命令。centos6默认使用iptables命令,centos默认使用firewall命令,这取决于你的centos系统版本。
Centos7系统查看及发布端口
1、查看防火墙状态
firewall-cmd --state
如果返回结果是运行,则表示防火墙正在运行;如果返回结果未运行,则表示防火墙已安装但未启用;如果返回结果是-bash: firewall-cmd: command not found,表示防火墙没有安装。
2、查看开放端口
firewall-cmd --zone=public --list-ports
只有在安装并启用防火墙时,其中zone代表信任级别,才使用public。例如下图中,端口 20、21、22、 80、8888、39000-40000、888、@ >443 端口。
3、添加发布端口
firewall-cmd --zone=public --add-port=3563/tcp --permanent
如果需要添加端口发布,输入上述命令即可(上述命令释放3563端口),返回结果为成功,说明发布成功。以下参数permanent表示永久生效,重启系统后继续生效。
4、删除一个端口
firewall-cmd --zone=public --remove-port=3563/tcp --permanent
如果要删除一个已经释放的端口,只需要输入上述命令即可(上述命令删除释放的3563端口),返回结果为成功,说明释放成功。以下参数permanent表示永久生效,重启系统后继续生效。
5、重新加载配置
firewall-cmd --reload
重新加载配置的目的是为了让你的操作生效。你可以使用上面的命令。如果返回成功,则操作已经生效。
Centos6系统查看和发布端口
1、查看端口打开状态
iptables -L -n
执行命令后,可以在返回的结果中找到下图所示的内容。下图中,22、20、21、80、8888、@ >390000:40000、888、443港口。
2、添加发布端口
iptables -I INPUT -p tcp --dport 3312 -j ACCEPT
使用上述命令释放3312端口,其中INPUT表示入站规则/入站流量(OUTPUT表示出站规则/出站流量),ACCEPT表示接受(DROP表示丢弃包,QUEUE表示切换包,RETURN忽略链的后续规则),执行后没有返回值,不用担心。
3、删除一个已经释放的端口
iptables -D INPUT 3
使用上述命令删除端口/规则。命令中的 3 表示:序列号为 3 的 INPUT 链式规则,所以查看时必须使用显示的序列号进行操作。
4、保存生效
以上仅在当前运行时生效。如果希望重启后不失败,可以永久保存当前的iptables设置,根据系统顺序依次执行以下三个命令:
- service iptables save
- service iptables stop
- service iptables start