虚拟机配置 Centos07

安装iptables防火墙
yum -y install iptables iptables-services

启动iptables防火墙服务
systemctl start iptables
systemctl enable iptables

iptables语法和数据包控制类型
i) iptables语法
iiptables. [-t表名字]选项[链名字] [条件] [-j 控制类型]
2) iptable控制类型
ACCEPT:允许
DROP:拒绝,不给用户提示
REJECT:拒绝通过,给用户提示信息
LOG:记录日志
iptables防火墙规则常见的选项
i)末尾添加防火墙规则
-A
- 删除指定链中的规则
-D
- 插入规则到首部
-I
- 修改或者替换链中的规则
-R
5)列出所有链中的规则.
-L
6)清空所有链中的规则,不指定链名清空所有表规则
-F
- 设置特定链的默认策略
-P
8)数字显示协议端口号信息
-n
9)显示规则列的详细信息
-v
10)显示链中规则的序号
--line-numbers
查看nat表中的所有规则
iptables -t nat -L

清空nat表中的所有规则
iptables -t nat -F

配置内外网
cp /etc/sysconfig/network-scripts/ifcfg-ens32 /etc/sysconfig/network-scripts/ifcfg-ens34
vim /etc/sysconfig/network-scripts/ifcfg-ens34
systemctl restart network
![]()
配置路油功能
net.ipv4.ip_forward = 1
![]()
客户端配置





清空filter中的默认规则
保存iptables规则
iptables -t filter -F
service iptables save
![]()
禁止客户端ping通iptables防火墙
iptables -t filter -I INPUT -p icmp -j REJECT
iptables -t filter -L


删除ping防火墙规则
iptables -t filter -D INPUT -p icmp -j REJECT
iptables -t filter -L

显示防火墙input链的规则编号
iptables -L INPUT --line-numbers
![]()
input链插入规则根据编号进行排列
iptables -I INPUT 1 -p TCP -j ACCEPT
iptables -I INPUT 2 -p TCP -j ACCEPT
iptables -L INPUT --line-numbers

以数字形式显示input链中的所有规则
iptables -n -L INPUT

删除input链的第一条规则
iptables -D INPUT 1
iptables -L INPUT --line-numbers

清空所有表中的规则
iptables -F
iptables -L
service iptables save

设置防火墙默认链的规则
设置forward链默认拒绝所有通信
iptables -t filter -P FORWARD DROP
iptables -t filter -L

设置默认input允许入站
iptables -P INPUT ACCEPT
![]()
允许转发源192.168.100.0/24网络
iptables -A FORWARD -s 192.168.100.0/24 -j ACCEPT
iptables -I FORWARD -p icmp -s 192.168.200.0/24 -j ACCEPT


拒绝源主机192.168.100.20通过ens32接口进入防火墙
iptables -I INPUT -i ens32 -s 192.168.100.41 -j DROP

配置允许dns访问
iptables -t filter -I FORWARD -p udp -j ACCEPT
iptables -A FORWARD -s 192.168.100.0/24 -p udp --dport 53 -j ACCEPT
iptables -t filter -L
service iptables save

配置dns
options {
listen-on port 53 { any; };
directory "/var/named";
};
zone "bdqn.com." IN {
type master ;
file "bdqn.com.zone";
};

$TTL 86400
@ SOA bdqn.com. root.bdqn.com. (
2020081210
1H
15M
1W
1D
)
@ NS centos08.bdqn.com.
centos08 A 192.168.200.80
www A 192.168.200.80

配置外网ip
TYPE=Ethernet
BOOTPROTO=static
NAME=ens34
DEVICE=ens34
ONBOOT=yes
IPADDR=192.168.200.80
NETMASK=255.255.255.0
GATEWAY=192.168.200.70
DNS1=192.168.200.80

访问测试


使用防火墙控制ftp数据传输
ftp的传输的端口类型
20:传输数据端口使用 21:进行身份验证使用
在外网机器上安装ftp
yum -y install vsftpd

创建测试数据
dd if=/dev/zero of=/var/ftp/pub/1.iso bs=10M count=10

修改配置文件 配置vsftpd被动模式
vim /etc/vsftpd/vsftpd.conf
pasv_enable=yes
pasv_min_port=24500
pasv_max_port=24600
设置拒绝外部访问
iptables -t filter -P FORWARD DROP

设置允许tcp协议访问
iptables -I FORWARD -p TCP -j ACCEPT

客户端访问测试 ftp://192.168.200.80/

允许指定tcp端口访问
iptables -I FORWARD -p tcp --dport 20:21 -j ACCEPT

允许被动模式访问
iptables -A FORWARD -p tcp --dport 24500:24600 -j ACCEPT

icmp协议状态代码类型
icmp状态协议代码类型
8: icmp请求包
0:icmp回应
3:目标主机不可达
2)允许防火墙转发来自192.168.100.0/24 192.168.200.0/24网络的icmp请求包
iptables -I FORWARD -s 192.168.100.0/24 -p icmp --icmp-type 8 -j ACCEPT
iptables -I FORWARD -s 192.168.100.0/24 -p icmp --icmp-type 0 -j ACCEPT
iptables -I FORWARD -s 192.168.100.0/24 -p icmp --icmp-type 3 -j ACCEPT
iptables -I FORWARD -s 192.168.200.0/24 -p icmp --icmp-type 8 -j ACCEPT
iptables -I FORWARD -s 192.168.200.0/24 -p icmp --icmp-type 0 -j ACCEPT
iptables -I FORWARD -s 192.168.200.0/24 -p icmp --icmp-type 3 -j ACCEPT
匹配多个端口
匹配22支持ssh远程管理,支持23的telnet远程管理,支持80的网站服务,2支持邮件,110支 持邮件客户端
iptables -I FORWARD -p tcp -m multiport --dport 80,25,22,23,110 -j ACCEPT

安装httpd服务

客户端访问测试
http://192.168.200.80/

限制源IP地址范围通信
iptables -I FORWARD -p tcp -m iprange --src-range 192.168.100.70-192.168.100.80 -j DROP

查看客户端MAC地址
get mac

限制源MAC地址通信
iptables -I FORWARD -m mac --mac-source 00:0C:29:CA:BA:8C -j DROP

允许客户端发送TCP连接状态请求
iptables -I FORWARD -p tcp -m state --state ESTABLISHED,RELATED -j ACCEPT

ptables防火墙配立SNAT相DNAT
SNAT的作用
修改源IP地址信息
SNAT原理
将源IP地址进行修改转发到Internet上
共享内部网络访问广域网
隐藏内部网络
安全性强
节约公网IP地p止资源
配置将192.168.100.0/24网络映射到192.168.200.80IP地址上
iptables -t nat -A POSTROUTING -s 192.168.100.0/24 -o ens34 -j SNAT --to-source 192.168.200.80
![]()

查看nat规则
iptables -t nat -L

清空net规则
iptables -t nat -F

iptables防火墙配置DNAT
DNAT的作用
发布内部服务器IP地址和端口到外部IP地址和端口.上
DNAT特点
目标端口转换
配置目标端口转换
iptables -t nat -I PREROUTING -i ens34 -d 192.168.200.70 -p tcp --dport 80 -j
DNAT --to-destination 192.168.100.60:80


使用客户端访问

本文详细介绍了如何在Centos7系统中安装、配置和管理iptables防火墙,包括规则设置、数据包控制类型、链的操作,以及如何进行内外网配置、DNS解析、FTP服务控制和SNAT/DNAT转换等。通过实例操作,展示了iptables在网络安全和访问控制中的应用。
1万+

被折叠的 条评论
为什么被折叠?



