例如安装 Nagios 后, 要开放 5666 端口与服务器连接, 命令如下:
- [root@centos7-1 ~]# firewall-cmd --add-port=5666/tcp 即时打开, 这里也可以是一个端口范围, 如 1000-2000/tcp
- success
- [root@centos7-1 ~]# firewall-cmd --permanent --add-port=5666/tcp 写入配置文件
- success
- [root@centos7-1 ~]# firewall-cmd --reload 重启防火墙
- success
- [root@centos7-1 ~]#
CentOS 7 开放端口:
CentOS 升级到 7 之后, 发现无法使用 iptables 控制 Linuxs 的端口, google 之后发现 Centos 7 使用 firewalld 代替了原来的 iptables. 下面记录如何使用 firewalld 开放 Linux 端口:
开启端口
1 firewall-cmd --zone=public --add-port=80/tcp --permanent
命令含义:
- --zone #作用域
- --add-port=80/tcp #添加端口, 格式为: 端口 / 通讯协议
- --permanent #永久生效, 没有此参数重启后失效
重启防火墙
firewall-cmd --reload
设置 CentOS 防火墙开放端口:
在我们使用 CentOS 系统的时候, CentOS 防火墙有时是需要改变设置的. CentOS 防火墙默认是打开的, 设置 CentOS 防火墙开放端口方法如下:
打开 iptables 的配置文件: vi /etc/sysconfig/iptables
修改 CentOS 防火墙时注意: 一定要给自己留好后路, 留 VNC 一个管理端口和 SSh 的管理端口
下面是一个 iptables 的示例:
- # Firewall configuration written by system-config-securitylevel
- # Manual customization of this file is not recommended.
- *filter
- :INPUT ACCEPT [0:0]
- :FORWARD ACCEPT [0:0]
- :OUTPUT ACCEPT [0:0]
- :RH-Firewall-1-INPUT - [0:0]
- -A INPUT -j RH-Firewall-1-INPUT
- -A FORWARD -j RH-Firewall-1-INPUT
- -A RH-Firewall-1-INPUT -i lo -j ACCEPT
- -A RH-Firewall-1-INPUT -p icmp -icmp-type any -j ACCEPT
- -A RH-Firewall-1-INPUT -p 50 -j ACCEPT
- -A RH-Firewall-1-INPUT -p 51 -j ACCEPT
- -A RH-Firewall-1-INPUT -m state -state ESTABLISHED,RELATED -j ACCEPT
- -A RH-Firewall-1-INPUT -m state -state NEW -m tcp -p tcp -dport 53 -j ACCEPT
- -A RH-Firewall-1-INPUT -m state -state NEW -m udp -p udp -dport 53 -j ACCEPT
- -A RH-Firewall-1-INPUT -m state -state NEW -m tcp -p tcp -dport 22 -j ACCEPT
- -A RH-Firewall-1-INPUT -m state -state NEW -m tcp -p tcp -dport 25 -j ACCEPT
- -A RH-Firewall-1-INPUT -m state -state NEW -m tcp -p tcp -dport 80 -j ACCEPT
- -A RH-Firewall-1-INPUT -m state -state NEW -m tcp -p tcp -dport 443 -j ACCEPT
- -A RH-Firewall-1-INPUT -j REJECT -reject-with icmp-host-prohibited
- COMMIT
修改 CentOS 防火墙需要注意的是, 你必须根据自己服务器的情况来修改这个文件.
举例来说, 如果你不希望开放 80 端口提供 web 服务, 那么应该相应的删除这一行:
1 -A RH-Firewall-1-INPUT -m state -state NEW -m tcp -p tcp -dport 80 -j ACCEPT
全部修改完之后重启 iptables:service iptables restart
你可以验证一下是否规则都已经生效: iptables -L
这样, 我们就完成了 CentOS 防火墙的设置修改.
来源: http://www.bubuko.com/infodetail-2770938.html