1.实践内容
1.1防火墙配置
任务要求:配置Linux操作系统平台上的iptables,完成如下功能,并进行测试:
(1)过滤ICMP数据包,使得主机不接收Ping包;
(2)只允许特定IP地址,访问主机的某一网络服务(如FTP、HTTP、SMB),而其他的IP地址无法访问
1.2动手实践:Snort
使用Snort对给定pcap文件进行入侵检测,并对检测出的攻击进行说明。在Linux攻击机攻击机上使用Snort,对给定的pcap文件进行入侵检测,获得报警日志。
1.3分析配置规则
分析虚拟网络攻防环境中蜜网网关的防火墙和IDS/IPS配置规则,说明蜜网网关是如何利用防火墙和入侵检测技术完成其攻击数据捕获和控制需求的。
2.实验过程
实验环境为如图表:
| 名称 | IP地址 |
|---|---|
| KALI | 192.168.200.6 |
| WinXpattcker | 192.168.200.5 |
| SEED | 192.168.200.3 |
2.1防火墙配置
(1)过滤ICMP数据包,使得主机不接收Ping包;
在未配置kali的防火墙之前kali输入指令iptables -L可以看到配置规则如下,seed和winXp可以ping通kali



随后输入指令iptables -A INPUT -p icmp --icmp-type echo-request -j DROP,表示拒绝回显

此时再用seed和winXp去尝试ping通kali,发现无法ping通


而使用kali去ping通seed和winXp是可以的

(2)只允许特定IP地址,访问主机的某一网络服务(如FTP、HTTP、SMB),而其他的IP地址无法访问
在kali上使用Python3临时启动HTTP服务

此时seed和winXp都可以通过浏览器进行访问


随后加入规则仅仅允许指定IP访问80端口,拒绝其他所有IP访问80端口

winXp仍然可以访问而seed此时无法进行访问


2.2实践Snort

首先查看安装的snort版本,Snort3使用 snort.lua作为主配置文件,而非旧版的 snort.conf

因此使用snort -c /etc/snort/snort.lua -r listen.pcap -l /var/log/snort命令,可以看到总流量:共处理 135,580 个数据包。
丢弃数据包:45 个(占比 0.033%),可能因校验错误或过滤规则被丢弃。
协议分布:
IPv4:135,560 个(占比 99.985%),几乎全为 IPv4 流量。
TCP:135,512 个(占比 99.95%),以 TCP 连接为主。
UDP:仅3个(占比 0.002%),UDP 流量极少。
ARP:20个,可能存在 ARP 广播或探测行为。

ARP 欺骗:arp_spoof 捕获 20 个 ARP 包,可能存在 ARP 投毒攻击。

但是此时无法在指定位置/var/log/snort查看到日志文件,使用解决办法后可以查看日志文件



这两个文件中详细记录了侦测到了Nmap XMAS 攻击
2.3 分析配置规则

进入honeywall的sudo权限后输入vim /etc/init.d/rc.firewall指令,create_chains函数中包含许多规则链,其中有黑白名单等

具体的防火墙规则可以输入iptables -L | more后查看到,这里允许192.168.200.0/25网段内的任意设备进入

随后输入vim /etc/init.d/snortd可以查看snort的脚本文件
3.学习中遇到的问题及解决
- 问题:snort扫描后日志文件无法输出到指定的文件夹
- 问题解决方案
参考同学的解决方案需要在/etc/snort/snort.lua文件中进行更改如下:
![]()
随后可以再指定文件夹看到日志文件
![]()
4.实践总结
本次实验通过配置iptables防火墙实现了ICMP过滤和基于IP的服务访问控制,掌握了Linux网络安全防护基础。使用Snort对pcap文件进行入侵检测,掌握了snort最新版本的配置文件规则。结合蜜网网关的防火墙与IDS/IPS规则,分析了其通过流量控制、攻击诱捕及深度检测实现攻击数据捕获的机制,深化了对主动防御技术的理解,提升了网络攻防实战能力。


浙公网安备 33010602011771号