先说一下前言吧
我想要配置 telnet 服务,使它通过 linux 的防火墙,但是当我使用以下命令的时候
service iptables start
报错了,Failed to start iptables.service: Unit not found.
于是,我就上网搜了搜在 CentOS 7 中,关于端口和防火墙的设置。
Centos 7 使用firewalld代替了原来的iptables。 但是在CentOS7 中也可以 iptables 控制防火墙,只不过需要安装 iptables 模块,具体做法请参考:CentOS7 下配置 iptables
这里就不再叙述了,这篇文章写的很详细啦~
系统命令
systemctl start firewalld #启动
systemctl status firewalld #查看运行状态
systemctl stop firewalld #关闭
systemctl disable firewalld.service #禁止开机启动
firewall-cmd --state #查看默认防火墙状态
firewall-cmd --reload #重启防火墙
与端口相关的命令
firewall-cmd --zone=public --add-port=80/tcp --permanent #开放防火墙 80 端口
# 返回 success 为成功
firewall-cmd --zone=public --query-port=80/tcp #查看防火墙 80 端口
firewall -cmd --zone=public --remove-port=80/tcp --permanent #删除防火墙 80 端口
----------------------------------------------------------------------------------------------
--zone #作用域
--add-port=80/tcp #添加端口,格式为:端口/通讯协议
--permanent #永久生效
重启防火墙
systemctl restart firewalld.service
关闭防火墙
systemctl stop firewalld.service
查看监听(Listen)的端口
netstat -lntp