个人博客

CentOS 7中的防火墙使用

CentOS 7中防火墙是一个非常强大的功能,在CentOS 6.5的iptables防火墙中进行了升级。

防火墙的配置

注意:所有的firewall操作只有在重启防火墙之后才生效,重启命令:service firewall restart。

系统配置目录

/usr/lib/firewalld

目录中存放定义好的网络服务和端口、系统参数,不能修改

picture

用户配置目录

/etc/firewalld/

picture

自定义添加端口

用户可以通过修改文件的方式添加端口,也可以通过命令添加,注意修改的文件都会在用户配置目录(/etc/firewalld/)下体现。

命令的方式添加端口:

firewall-cmd --permanent --add-port=4567/tcp
# firewall-cmd:是linux提供firewall的一个工具。
# --permanent:表示设置为持久。
# --add-port:添加的端口。

另外firewall中还有zone的概念,可以将具体的端口制定到具体的zone配置文件中。

firewall-cmd --zone=public --permanent --add-port=8088/tcp
# --zone=public:指定zone为public。

执行完之后会在/etc/firewalld/zones/public.xml文件中增加一行内容。

picture

修改配置文件的方式:

<?xml version="1.0" encoding="utf-8"?>
<zone>
    <short>Public</short>
    <description>For use in public areas.</description>
    <rule family="ipv4">
        <source address="192.168.0.101"/>
        <port protocol="udp" port="1234"/>
        <accept/>
    </rule>
    <rule family="ipv4">
        <source address="192.168.0.102"/>
        <port protocol="tcp" port="10010-10011"/>
        <accept/>
    </rule>
    <rule family="ipv4"> 放通任意ip访问服务器的8888端口
        <port protocol="tcp" port="8888"/>
        <accept/>
    </rule>
</zone>

上述的配置文件,开放了源IP为192.168.0.101的1234端口,协议为udp;开放了源IP为192.168.0.102的10010-10011端口,协议为tcp;开放所有源IP的8888端口,协议为tcp。

firewall常用命令

service firewall restart # 重启

service firewall start # 开启

service firewall stop # 关闭

systemctl status firewall # 查看firewall服务状态

firewall-cmd --state # 查看firewall的状态

firewall-cmd --list-all # 查看防火墙规则

相关标签
回到顶部