设为首页 加入收藏

TOP

iptables、共享上网SNAT、端口转发DNAT(一)
2023-09-09 10:25:41 】 浏览:135
Tags:iptables SNAT DNAT

iptables、共享上网SNAT、端口转发DNAT

1.防火墙概述

封端?,封ip
实现NAT功能
共享上?
端?映射(端?转发),ip映射

2.防火墙

2.1防火墙种类以及使用说明

硬件:整个企业入口

软件:开源软件 网站内部 封ip
iptables

云防火墙
安全组
NAT网关
waf应用防火墙

2.2专有名词

容器、表、链、规则

2.3iptables执行过程

1.防?墙是层层过滤的,实际是按照配置规则的顺序从上到下,从前到后进?过滤的。
2.如果匹配成功规则,即明确表示是拒绝(DROP)还是接收(ACCEPT)数据包就不再向下匹配新的规则
3.如果规则中没有明确表明是阻?还是通过的,也就是没有匹配规则,向下进?匹配,直到匹配默认规则得到明确的阻?还是通过。
4.防?墙的默认规则所有规则都匹配完才会匹配的

2.4表与链

iptables 是 4表伍链
4表: filter 表 nat表 raw表 mangle表
伍链: INPUT OUTPUT FORWARD PREROUTING POSTROUTING

1.filter表
实现防火墙功能:屏蔽或准许端口ip

2.nat表
实现nat功能:实现共享上网 端口映射和ip映射

2.5环境准备及命令

先关闭防火墙

systmectl stop firewalld
systemctl disable firewalld

1.安装并启动

yum install iptables-services
   
systemctl enable iptables
systemctl start iptables

2.设置开机自启防火墙相关模块

cat >>/etc/rc.local<<EOF
modprobe ip_tables
modprobe iptable_filter
modprobe iptable_nat
modprobe ip_conntrack
modprobe ip_conntrack_ftp
modprobe ip_nat_ftp
modprobe ipt_state 
EOF

lsmod | egrep 'filter|nat|ipt'

3.查看规则

iptables -nL 默认filter -n不要把端? 或ip反向解析为名字 -L 列出规则

[root@localhost ~]# iptables -nL
Chain INPUT (policy ACCEPT)
target     prot opt source               destination         
ACCEPT     all  --  0.0.0.0/0            0.0.0.0/0            state RELATED,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-with icmp-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   

查看指定表的规则 iptables -t nat -nL

[root@localhost ~]# iptables -t nat -nL
Chain PREROUTING (policy ACCEPT)
target     prot opt source               destination         

Chain INPUT (policy ACCEPT)
target     prot opt source               destination         

Chain OUTPUT (policy ACCEPT)
target     prot opt source               destination         

Chain POSTROUTING (policy ACCEPT)
target     prot opt source               destination 

配置filter表规则

-A 添加防火墙规则(尾部追加)
-D 删除防火墙规则
-I 插入防火墙规则(首部插入)
-F 清空防火墙规则
-X 删除用户自定义的链
-L 列出添加防火墙规则
-R 替换防火墙规则
-Z 清空防火墙数据表统计信息
-P 设置链默认规则
-p 协议 protocal tcp/udp/icmp/all 指定端口的时候需要用到指定协议
--dport 目标端口
-j 满足条件后的动作 DROP/ACCEPT/REJECT drop 把数据丢掉不会返回给用户 reject 返回拒绝信息
-s --source 源ip
-d --destination ?标ip

1.先清空规则

[root@localhost ~]# iptables -F
[root@localhost ~]# iptables -X
[root@localhost ~]# iptables -Z
[root@localhost ~]# iptables -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    

2.添加规则

iptables -t filter -I INPUT -p tcp --dport 22122 -j drop

3.删除规则

iptables -t filter -D INPUT 1  //1是行号 上述添加的规则的行号

1:封ip

1.192.168.70.133机器 ping 192.168.70.136机器

[root@web2 ~]# ping 192.168.70.136
PING 192.168.70.136 (192.168.70.136) 56(84) bytes of data.
64 bytes from 192.168.70.136: icmp_seq=1 ttl=64 time=0.937 ms

2.136机器添加规则

iptables -t filter -I INPUT -s 192.168.70.134 -j DROP

3.删除规则

iptables -D INPUT 1  //删除后可以发现又继续ping了

2:禁止网段访问指定端口

iptables -t filter -I INPUT -s 192.168.70.0/24 -p tcp --dport 8888 -j DROP

3:只允许指定网段连入

iptables -I INPUT ! -S 192.168.70.0/24 -j DROP

4:指定多端口

iptables  -I INPUT -m multiport -p tcp --dport 80,433 -j DROP  //禁止80和433端口
iptables  -I INPUT -p tcp --dport 1:10 -j DROP  //禁止1-10端口

5:控制是否能ping

iptab
首页 上一页 1 2 3 下一页 尾页 1/3/3
】【打印繁体】【投稿】【收藏】 【推荐】【举报】【评论】 【关闭】 【返回顶部
上一篇CentOS下载软件包及其依赖包 下一篇[20230826]dc命令复杂学习2.txt

最新文章

热门文章

Hot 文章

Python

C 语言

C++基础

大数据基础

linux编程基础

C/C++面试题目