linux服务中开启防火墙的两种方式

2019-01-16 20:45:15王振洲

-I 或--insert 在指定的位置插入一条规则
-D 或--delete 在规则列表中删除一条规则
-R 或--replace 替换规则列表中的某条规则
-F 或--flush 删除表中的所有规则
-Z 或--zero 将表中所有链的计数和流量计数器都清零

3、匹配选项

 匹配选项指定数据包与规则匹配所应具有的特征,包括源地址、目的地址、传输协议(如TCP、UDP、ICMP)和端口号(如80、21、110)等:
-i 或--in-interface 指定数据包是从哪个网络接口进入
-o 或--out-interface 指定数据包是从哪个网络接口输出
-p 或--porto 指定数据包匹配的协议,如TCP、UDP
-s 或--source 指定数据包匹配的源地址
--sport 指定数据包匹配的源端口号,可以使用“起始端口号:结束端口号”的格式指定一个范围的端口
-d 或--destination 指定数据包匹配的目标地址
--dport 指定数据包匹配的目标端口号,可以使用“起始端口号:结束端口号”的格式指定一个范围的端口

4、动作选项

动作选项指定当数据包与规则匹配时,应该做什么操作,如接受或丢弃等。

ACCEPT 接受数据包
DROP 丢弃数据包
REDIRECT 将数据包重新转向本机或另一台主机的某个端口,通常用此功能实现透明代理或对外开放内网的某些服务
SNAT 源地址转换,即改变数据包的源地址
DNAT 目标地址转换,即改变数据包的目的地址
MASQUERADE IP伪装,即常说的NAT技术。MASQUERADE只能用于ADSL等拨号上网的IP伪装,也就是主机的IP地址是由ISP动态分配的;如果主机的IP地址是静态固定的,就要使用SNAT
 LOG 日志功能,将符合规则的数据包的相关信息记录在日志中,以便管理员进行分析和排错

(七)、iptables命令的使用

1、查看iptables规则

 初始的iptables没有规则,但是如果在安装时选择自动安装防火墙,系统中会有默认的规则存在,可以先查看默认的防火墙规则:

#iptables [-t 表名] 
 [-t 表名]:定义查看哪个表的规则列表,表名可以使用filter、nat和mangle,如果没有定论表名,默认使用fliter表
 :列出指定表和指定链的规则
 :定义查看指定表中哪个链的规则,如果不指明哪个链,将查看某个表中所有链的规则
#iptables -L -n (查看filter表所有链的规则)
注:在最后添加-n参数,可以不进行IP与HOSTNAME的转换,显示的速度会快很多。
#iptables -t nat -L OUTPUT (查看nat表OUTPUT链的规则)

2、定义默认策略

 当数据包不符合链中任何一条规则时,iptables将根据该链默认策略来处理数据包,默认策略的定义方法如下

#iptables [-t 表名]  
 [-t 表名]:定义查看哪个表的规则,表名可以使用filter、nat和mangle,如果没有宝,默认使用filter表