iptables

iptables

基本信息及操作

Iptable
-t      ##指定表名称
-n      ##不做解析
-L      ##列出指定表中的策略
-F      ##刷掉表中的策略,当-t没指定表时默认filter
-A      ##增加策略
-i      ##进入网卡
-p      ##网络协议
--dport ##端口
-s      ##数据来源
-j      ##动作
ACCEPT  ##允许
REJECT  ##拒绝
-N      ##增加链
-E      ##修改名称
-X      ##删除指定链
-D      ##删除指定策略
-I      ##插入
-R      ##修改策略
-P      ##修改默认策略

[root@desktop57 ~]# systemctl start iptables
[root@desktop57 ~]# iptables -t filter -nL
Chain INPUT (policy ACCEPT)
target     prot opt source               destination        
ACCEPT     all  -- 0.0.0.0/0           0.0.0.0/0            stateRELATED,ESTABLISHED
ACCEPT     icmp --  0.0.0.0/0            0.0.0.0/0          
ACCEPT     all  -- 0.0.0.0/0           0.0.0.0/0          
ACCEPT     tcp  -- 0.0.0.0/0            0.0.0.0/0            state NEW tcp dpt:22
REJECT     all  -- 0.0.0.0/0           0.0.0.0/0            reject-withicmp-host-prohibited

Chain FORWARD (policy ACCEPT)
target     prot opt source               destination        
REJECT     all  -- 0.0.0.0/0            0.0.0.0/0            reject-with icmp-host-prohibited

Chain OUTPUT (policy ACCEPT)
target     prot opt source               destination        
[root@desktop57 ~]# iptables -F
[root@desktop57 ~]# iptable -F
bash: iptable: command not found...
[root@desktop4 ~]# iptables -t filter -nL
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        
[root@desktop57 ~]# service iptables save
iptables: Saving firewall rules to /etc/sysconfig/iptables:[  OK  ]
[root@desktop57~]# iptables -t filter -nL
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        
[root@desktop57 ~]# iptables -A INPUT -i lo -j ACCEPT   ##允许lo
[root@desktop57 ~]# iptables -A INPUT -p tcp --dport 22  -j ACCEPT  ##允许访问22端口
[root@desktop57 ~]# iptables -A INPUT -s 172.25.254.57  -j ACCEPT ##允许250主机访问本机所有端口
[root@desktop57 ~]# iptables -A INPUT -j REJECT  ##拒绝所有主机的数据来源

 

 

[root@localhost ~]# iptables -N redhat             ##增加链redhat

[root@localhost ~]# iptables -E redhat westos      ##修改链名称

[root@localhost ~]# iptables -X westos             ##删除westos
[root@localhost ~]# iptables -D INPUT 2            ##删除INPUT链中第二条策略

[root@localhost ~]# iptables -I INPUT -p tcp --dport 80 -j REJECT      ##插入策略到INPUT链中第一条

[root@localhost ~]# iptables -R INPUT 1 -p tcp --dport 80 -j ACCEPT    ##修改第一条策略

[root@localhost ~]# iptables -P INPUTDROP         ##把INPUT链中的默认策略修改为drop

 

数据包的状态

包的状态依据IP所包含的协议不同而不同,但在内核外部,也就是用户空间里, 
只有4种状态:NEWESTABLISHEDRELATED INVALID。它们主要是和状态匹配一起使用。以便匹配数据包。这可以使我们的防火墙非常强壮和有效

-mstate --state<NEW,ESTATBLISHED,INVALID,RELATED>    ##指定匹配哪种状态

– INVALID无效的封包,例如数据破损的封包状态,该包不匹配于任何连接,通常这些包被DROP 
–ESTABLISHED:已经联机成功的联机状态;该包属于某个已经建立的连接。 
–NEW
:想要新建立联机的封包状态;该包想要开始一个新的连接(重新连接或连接重定向) 
–RELATED
:该包是属于某个已经建立的连接所建立的新连接。举例:FTP的数据传输连接和控制连接之间就是RELATED关系。

 

 

 

iptables -A INPUT-mstate --state RELATED,ESTABLISHED  -j ACCEPT  ##接受已经建立连接的或由已经建立的连接所建立的新连接的TCP连接(状态防火墙能识别TCP或者UDP会话非状态防火墙只能根据端口识别,不能识别会话)

iptables -A INPUT-i lo -mstate --state NEW -j ACCEPT

iptables -A INPUT-p tcp --dport 22 -mstate --state NEW -j ACCEPT ##接受tcp协议22端口新建访问的链接

iptables -A INPUT-p tcp --dport 80 -mstate --state NEW -j ACCEPT

iptables -A INPUT-p tcp --dport 443 -mstate --state NEW -j ACCEPT

iptables -A INPUT-p tcp --dport 53 -mstate --state NEW -j ACCEPT

iptables -A INPUT -j REJECT

 

 

###########实现两个不同网段的通信###########

[root@localhost~]# sysctl -a | grep forward

[root@localhost~]# echo "net.ipv4.ip_forward = 1">>/etc/sysctl.conf          ##开通内核路由功能

[root@localhost~]# sysctl p

net.ipv4.ip_forward= 1

[root@localhost ~]#iptables -t nat -A POSTROUTING -o eth1 -j SNAT --to-source 172.25.254.250      ##原地址转换

[root@localhost ~]#iptables -t nat -A PREROUTING -i eth1 -j DNAT --to-dest 172.25.219.119         ##目标地址转换



过程截图如下:


评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值