Linux防火墙相关命令

防火墙相关命令

文章目录

  • 防火墙相关命令
    • CentOS7
      • 1.查看防火墙状态
      • 2.启动防火墙
      • 3.关闭防火墙
      • 4.重启防火墙
      • 5.启动开机启动防火墙
      • 6.关闭开机启动防火墙
      • 7.检查是否开机启用防火墙
      • 8.查询某个端口是否开发
      • 9.查询已开放的端口列表
      • 10.增加开放端口
      • 11.移除开放端口
      • 12.firewall-cmd命令
    • CentOS6
      • 1.查看防火墙状态
      • 2.启动防火墙
      • 3.关闭防火墙
      • 4.启动开机启动防火墙
      • 5.关闭开机启动防火墙
      • 6.查看开机启动服务列表
      • 7.iptables命令

在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
    
  • 规则表

    名称 包含的链表 描述
    filter INPUT、FORWARD、OUTPUT 过滤数据包
    Nat PREROUTING、POSTROUTING、OUTPUT 用于网络地址转换(IP、端口) 内核模块:iptable_nat
    Mangle PREROUTING、POSTROUTING、INPUT、OUTPUT、FORWARD 修改数据包的服务类型、TTL、并且可以配置路由实现QOS内核模块:iptable_mangle(别看这个表这么麻烦,咱们设置策略时几乎都不会用到它)
    Raw OUTPUT、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 重定向

你可能感兴趣的:(shell,linux)