Linux系统下防火墙的基本配置

本文发布时间: 2019-Mar-21
服务脚本: /etc/rc.d/init.d/iptables脚本配置文件:/etc/sysconfig/iptables-configservice iptables {status|start|stop|restart|save}规则的保存位置:/etc/sysconfig/iptables首先要创建/etc/sysconfig/iptables然后再启动若想保存规则 使用命令service iptables save语法格式:iptables [-t TABLE] COMMAND CHAIN [CRETIRIA] -j ACTION-t raw mangle nat filter:-t TABLE也可以省略,默认为filter如果有多个表时,执行顺序依次为raw,mangle,nat,filterCOMMAND:对链,或者对链中的规则进行管理操作链中规则:-A 追加一条规则-I # 插入一条规则 后加数字表示插入为第几条-R # 替换第几条-D # 删除第几条规则链:-N: 新建一个自定义链-X: 删除一个自定义的空链-E:重命名一条自定义链-F: 清空指定链,如果不指定链,则清空整个表中的所有链-P: 设定链的默认策略-Z: 置零 (每条规则,包括默认策略都有两个计数器:一个是被本规则匹配到的所有数据包的个数;另一个是被本规则匹配到的所有数据包的大小之和);查看:-L: 查看 -v -vv -vvv --line-numbers -x:计数器的精确值(不做单位换算) -n: 显示数字地址(不对地址和端口做反解)匹配条件:通用匹配-s 指定源IP或者源网络-d 指定目标IP或者目标网络 网络地址和目标地址前均可用“!”取反-p {icmp|tcp|udp}指明协议类型-i IN_INTERFACE 数据包的流入接口-o OUT_INTERFACE 数据包流出的接口扩展匹配隐式扩展 -p tcp --sport PORT[-PORT2] 源端口 --dport PORT[-PORT2] 目标端口 --tcp-flags SYN,ACK,RST,FIN SYN ,前表示要检查的标志位 ,其后为 必须为1的位 --syn --tcp-flags SYN,ACK,RST,FIN SYN 的简写 -p udp --sport --dport -p icmp --icmp-type 0: echo-reply 响应报文 8: echo-request 请求报文显式扩展: netfilter扩展模块引入的扩展,用于扩展匹配条件,通常需要额外专用选项来定义 -m state: 用于实现连接的状态检测 --state NEW(新发起连接), ESTABLISHED(已建立连接) RELATED, INVALID(非法的、无法识别的、无效的连接) -m multiport 同时指定多个端口号,中间用逗号隔开 --source-ports --destination-ports --ports以下用法示例,本机IP:192.168.0.6,外部IP:192.168.0.7[root@localhost ~]# iptables -L -n 查看已制定规则[root@localhost ~]# iptables -L -n -t nat 查看nat表[root@localhost ~]# iptables -t filter -A INPUT -s 192.168.0.7 -p icmp --icmp-type 8 -j DROP #INPUT DROP 必须大写 拒绝192.168.0.7请求ICMP报文[root@localhost ~]# iptables -L -n --line-numbers 显示行号[root@localhost ~]# iptables -D INPUT 2 删除INPUT链的第二条规则[root@localhost ~]# iptables -A INPUT -s 192.168.0.7 -d 192.168.0.6 -p icmp --icmp-type 0 -j DROP #关闭对方的ping回应报文iptables -A INPUT -s ! 172.16.0.0 -d 172.16.100.1 -p tcp --dport 80 -j DROP 拒绝除172.16.0.0网段的所有主机访问WEB服务[root@localhost ~]# iptables -F INPUT 清除规则[root@localhost ~]# iptables -A INPUT -s 0.0.0.0/0 -d 192.168.0.6 -p tcp --dport 22 -j ACCEPT #写所有地址时一定要写掩码[root@localhost ~]# iptables -A OUTPUT -s 192.168.0.6 -p tcp --sport 22 -j ACCEPT[root@localhost ~]# iptables -P INPUT DROP 把默认策略改为拒绝[root@localhost ~]# iptables -P OUTPUT DROP[root@localhost ~]# iptables -A INPUT -s 192.168.0.7 -d 192.168.0.6 -p icmp --icmp-type 8 -j ACCEPT[root@localhost ~]# iptables -A OUTPUT -s 192.168.0.6 -d 192.168.0.7 -p icmp --icmp-type 0 -j ACCEPT 让别的主机能ping进来[root@localhost ~]# iptables -A OUTPUT -s 192.168.0.6 -p icmp --icmp-type 8 -j ACCEPT[root@localhost ~]# iptables -A INPUT -d 192.168.0.6 -p icmp --icmp-type 0 -j ACCEPT 本机能PING通外边主机[root@localhost ~]# iptables -A INPUT -d 192.168.0.6 -p tcp --dport 22 -m state --state NEW,ESTABLISHED -j ACCEPT 允许新建立的和已建立的连接进来[root@localhost ~]# iptables -A OUTPUT -s 192.168.0.6 -p tcp --sport 22 -m state --state ESTABLISHED -j ACCEPT 允许已建立的连接出去[root@localhost ~]# iptables -A INPUT -d 192.168.0.6 -m state --state NEW,ESTABLISHED -j ACCEPT 不区分协议和端口号[root@localhost ~]# iptables -A OUTPUT -s 192.168.0.6 -m state --state ESTABLISHED -j ACCEPT[root@localhost ~]# iptables -A INPUT -d 192.168.0.6 -p tcp -m multiport --destination-ports 22,80 -m state --state NEW,ESTABLISHED -j ACCEPT 多个端口合到一块本文出自 “菜鸟” 博客


(以上内容不代表本站观点。)
---------------------------------
本网站以及域名有仲裁协议。
本網站以及域名有仲裁協議。

2024-Mar-04 02:08pm
栏目列表