Linux防火墙相关命令

2024-01-09 22:19:49

防火墙相关命令


在linux环境中,不同的操作系统,防火墙的命令是有差异的。Centos7使用的是firewall,之前的版本使用iptables。

CentOS7

1.查看防火墙状态

systemctl status firewalld
#或者
firewall-cmd --state

2.启动防火墙

systemctl start firewalld.service

若无法启动,按顺序执行如下命令:

systemctl unmask firewalld.service
systemctl start firewalld.service

3.关闭防火墙

systemctl stop firewalld.service

4.重启防火墙

systemctl retart firewalld.service
#或者
firewall-cmd --reload

5.启动开机启动防火墙

systemctl enable firewalld.service

6.关闭开机启动防火墙

systemctl disable firewalld.service

7.检查是否开机启用防火墙

systemctl is-enabled firewalld.service

8.查询某个端口是否开发

firewall-cmd --query-port=80/tcp

9.查询已开放的端口列表

firewall-cmd --list-port

10.增加开放端口

#--permanent永久生效,没有此参数重启后失效,格式为:端口/通讯协议
firewall-cmd --zone=public --add-port=80/tcp --permanent

11.移除开放端口

firewall-cmd --zone=public --remove-port=80/tcp --permanent
# 或者
firewall-cmd --permanent --remove-port=123/tcp #永久生效,没有permanent参数重启后失效

12.firewall-cmd命令

防火墙操作命令

firewall-cmd
--zone #作用域
--add-port=80/tcp #添加端口,格式为:端口/通讯协议
--remove-port=80/tcp #移除端口,格式为:端口/通讯协议
--permanent #永久生效,没有此参数重启后失效
--list-port #开放端口
--query-port=80/tcp #查询端口
--version #查看版本
--help #查看帮助文档
--state #显示状态
--reload #更新防火墙
--get-active-zones #查看区域信息
--panic-on #拒绝所有包
--panic-off #取消拒绝状态
--query-panic #查看是否拒绝

CentOS6

1.查看防火墙状态

service iptables status

2.启动防火墙

service iptables start

3.关闭防火墙

service iptables stop

4.启动开机启动防火墙

chkconfig -add iptables

5.关闭开机启动防火墙

chkconfig -del iptables

6.查看开机启动服务列表

centos6的服务启动脚本都放在/etc/rc.d/init.d/下,/etc/init.d/是/etc/rc.d/init.d/的软链接;

chkconfig --list

7.iptables命令

  • 语法格式

    iptables [-t 表名] 命令选项 [链名][条件匹配] [-j 目标动作或跳转]
    
    • -t:指定需要维护的防火墙规则表 filter、nat、mangle或raw。在不使用 -t 时则默认使用 filter 表

    • 命令选项:子命令,定义对规则的管理

    • 链名:规则链,与规则表配合

    • 条件匹配:匹配参数

    • ACTION:触发动作

  • 示例

    iptables -t filter -I INPUT -s 192.xx.xxx.xxx -p tcp --dport 3306 -j ACCEPT
    
  • 规则表

    名称包含的链表描述
    filterINPUT、FORWARD、OUTPUT过滤数据包
    NatPREROUTING、POSTROUTING、OUTPUT用于网络地址转换(IP、端口) 内核模块:iptable_nat
    ManglePREROUTING、POSTROUTING、INPUT、OUTPUT、FORWARD修改数据包的服务类型、TTL、并且可以配置路由实现QOS内核模块:iptable_mangle(别看这个表这么麻烦,咱们设置策略时几乎都不会用到它)
    RawOUTPUT、PREROUTING决定数据包是否被状态跟踪机制处理 内核模块:iptable_raw
  • 命令选项规则

    选项功能
    -A添加防火墙规则
    -D删除防火墙规则
    -I插入防火墙规则
    -F清空防火墙规则
    -L列出添加防火墙规则
    -R替换防火墙规则
    -Z清空防火墙数据表统计信息
    -P设置链默认规则
  • 规则链详情

    名称描述
    INPUT进来的数据包应用此规则链中的策略
    OUTPUT外出的数据包应用此规则链中的策略
    FORWARD转发数据包时应用此规则链中的策略
    PREROUTING对数据包作路由选择前应用此链中的规则
    POSTROUTING对数据包作路由选择后应用此链中的规则
  • 条件匹配

    参 数功 能
    [!]-p匹配协议,! 表示取反
    [!]-s匹配源地址
    [!]-d匹配目标地址
    [!]-i匹配入站网卡接口
    [!]-o匹配出站网卡接口
    [!]–sport匹配源端口
    [!]–dport匹配目标端口
    [!]–src-range匹配源地址范围
    [!]–dst-range匹配目标地址范围
    [!]–limit四配数据表速率
    [!]–mac-source匹配源MAC地址
    [!]–sports匹配源端口
    [!]–dports匹配目标端口
    [!]–stste匹配状态(INVALID、ESTABLISHED、NEW、RELATED)
    [!]–string匹配应用层字串
  • 目标动作或跳转

    触发动作功 能
    ACCEPT允许数据包通过
    DROP丢弃数据包
    REJECT拒绝数据包通过
    LOG将数据包信息记录 syslog 曰志
    DNAT目标地址转换
    SNAT源地址转换
    MASQUERADE地址欺骗
    REDIRECT重定向

文章来源:https://blog.csdn.net/KouHao123/article/details/135411913
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。