LinuxCast IPTables 视频教程笔记

IPTables防火墙: 设置哪些IP可以访问服务器,哪些协议可以使用,是否需要修改数据包等

IPTables调用的是内核层的netfilter模块,以达到网络控制的功能。它可以对数据进行允许、丢弃、修改等操作,包含以下数据包:
源IP、目标IP、接口、协议(TCP、UDP、ICMP等)、端口、状态(new、established、related、invalid等)

filter(chain)用来对数据过滤,nat用来对数据包的源、目标地址进行修改,mangle用来做高级修改

设置iptables规则/策略:
iptables -t filter -A INPUT -s 192.168.1.1 -j DROP
             表         链          属性       动作

表: filter、nat、mangle
链(过滤点): INPUT、OUTPUT、FORWARD、PREROUTING、POSTROUTING
属性: ip地址、协议、端口、接口
动作:ACCEPT、DROP、REJECT

查看现有的规则:
root@iZ23totlue9Z:~# iptables -L
Chain INPUT (policy ACCEPT)
target     prot opt source               destination         

Chain FORWARD (policy ACCEPT)
target     prot opt source               destination         

Chain OUTPUT (policy ACCEPT)
target     prot opt source               destination  

添加一个规则:
iptables -I INPUT 2 -p tcp --dport 22 -j ACCEPT

删除一个规则:
iptables -D INPUT 2

删除所有规则:
iptables -F


匹配参数:
-s 源ip地址
-d 目标ip地址

基于接口:
-i eth0
-o eth1

排除参数:(取反)
-s '!' ip地址

基于协议:
-p tcp --dport 23
-p udp --sport 53
-p icmp

如果是路由器上的linux,那么通过FORWARD来控制转发

使用service iptables save保存规则。如果ssh登录的话,第一条最好设置为保证ssh流量经过的规则,免得设置了规则后把自己锁在外面

你可能感兴趣的:(LinuxCast IPTables 视频教程笔记)