包过滤技术:经过对网络层和传输层包头信息的检查,根据用户定义的安全策略规则集,肯定是否应该转发该数据包,将一些不符合安全策略的数据包阻挡在网络的边界处(简单但检查内容较少)
html
基于状态监测的包过滤技术:出了检查每一个独立的数据包以外,还会试图跟踪数除了在网络连接上的上下文关系,并以网络连接状态做为一个附加的匹配标准,以肯定是否容许和拒绝通讯。(强大规则设置简单,但复杂度高,对网络传输性能影响较大,并可能受到拒绝服务攻击的影响)linux
代理技术(proxy):容许客户端经过它与另外一个网络服务进行非直接的连接。代理技术有利于保障网络安全,防止网络攻击,包括应用层代理、电路级代理和NAT代理。vim
简介:netfilter是Linux内核中实现网络的防火墙功能模块,iptables则是应用太防火墙管理工具。安全
netfilter/iptables中包含三个最基本的规则表:用于包过滤处理的filter表、用于网络地址转换处理的nat表,以及用于特殊目的数据包修改的mangle表。
服务器
链:链是顺序执行规则的编排方式,在复杂的网络环境中,管理员需求这种可控的、有序执行的规则应用方式。iptables 提供了5条链:INPUT链、OUTPUT链、FORWARD链、路由前链(Pre-Routing)、路由后链(Post-Routing)。网络
Iptables为用户提供了netfilter规则的命令行接口,其命令语法为:app
$ iptables [-t table] command [match] [target]tcp
-t指定配置规则所在的表,缺省表包括filter、nat、mangle、raw等
工具
命令 | 功能 |
---|---|
-A或--append | 将一条规则附加到链末尾 |
-D或--delete | 匹配指定规则编号并删除 |
-P或--policy | 设置链的缺省目标操做 |
-N或--new-chain | 指定名称建立一个新链 |
-F或--flush | 快速清除 |
-L或--list | 列出指定链的全部规则 |
(1)过滤ICMP数据包,使主机不接受ping包
(2)只容许特定IP地址访问主机的某一网络服务,而其余IP地址没法访问
这里选用SEED-Ubuntu(简称seed)为服务器,kali为信任主机,MetaSploitable(简称meta)做为不可信任主机,用kali访问seed,联网后记录三台机器的IP地址为:性能
主机 | IP |
---|---|
seed | 192.168.31.53 |
kali | 192.168.31.188 |
meta | 192.168.31.111 |
1.过滤ICMP包
(1). 在seed是上使用命令
iptables -L
发现均采用默认规则
(2). 经过指令
iptables -A INPUT -p icmp -j DROP
指令使得主机不接受icmp的数据包。指令详解:-A是追加一条规则,INPUT表示数据包入口(规则),-p用于匹配协议,-j用于指定如何处理(ACTION)。
(3).而后经过kalipingseed时失败,回到SEED再次查看规则,可看到一条icmp针对任何位置不容许访问的规则
(4).使用
iptables -F
删除自定义规则,为下个实践作准备。
(1).确认kali和meta进行telnet登陆seed
(2).接下来使用
iptebles -P INPUT DROP
指令拒绝一切的数据包流入(修改的是默认规则-p),此时应该两台电脑都没法访问
(3).使用指令
iptables -A INPUT -P tcp -s 192.168.31.188 -j ACCEPT
开启kali对seed的tcp服务,并用iptables -L查看规则
(4).再用telnet命令访问seed,发现只有kali能够 访问。
(1).使用
snort -r /home/kali/listen.pacp -c /etc/snort/snort.conf -K ascii
对listen.pacp进行入侵检测,其中-K ascii主要是为了指定输出log文件的编码为ASCII,而后获得对于数据包的检测
(2).查看输出的包,能够发现TCP数据包占据绝大多数。
(3).在 /var/log/snort/ 目录下能够查找到alert文件,这个文件即输出的日志文件。
经过vim打开能够发现这个攻击是nmap发起.
任务:说明蜜网网关是如何利用防火墙和入侵检测技术完成其攻击数据捕获和控制需求
iptables -t filter -L
-t是指定规则表,-L表示列表。查看规则表发现默认的规则都关闭了。
能够看到防火墙和NIPS(snort_inline)是跟随系统启动的,而且开机自动配置刚才的脚本文件。NIDS不会自动启动
snort实际执行参数
经过指令vim /etc/init.d/snortd可查看,snortd是snort启动的脚本文件,snort.conf是具体预警的规则设定,默认使用snort.conf规则,默认监听网卡为eth0,默认存储日志路径为 /var/log/snort。
获取snort_inline实际执行参数
经过指令vim /etc/init.d/hw-snort_inline打开snort_inline脚本,能够看到一些默认信息
Snort规则如何自动升级
在/etc目录下使用命令vim honeywall.conf打开honeywall配置文件,这个里面能够看到一些,如咱们配置的IP地址、子网掩码等等。
snort规则默认是不自动更新的。Oinkmaster是自动更新的软件。
前两个任务并不难,真的让我难受的是第三个任务,蜜网的操做以及vim浏览snort都很不熟练,仍是须要继续学习linux文件的相关操做。snort的浏览不少命令都要不断地去查询,以为真的难,并且烦。