防火墙相关命令
文章目录
在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 重定向