网络安全与管理系统设计与架构.docx
《网络安全与管理系统设计与架构.docx》由会员分享,可在线阅读,更多相关《网络安全与管理系统设计与架构.docx(46页珍藏版)》请在冰豆网上搜索。
网络安全与管理系统设计与架构
实验报告
课程名称:
网络安全与管理系统设计与架构
学院:
信息科学与工程学院
专业:
网络工程13班级:
2013级
姓名:
林靖皓学号:
201301051616
2016年7月3日
山东科技大学教务处制
实验报告
组别
16
姓名
林靖皓
同组实验者
实验项目名称
实验一SSL实验
实验日期
第8周周二7,8节
教师评语
实验成绩
指导教师
廉文娟
1、实验目的
了解SSL是Netscape公司发明的一种用于WEB的安全传输协议。
随着时间的推移由于Netscape失去了市场份额,它将SSL的维护工作移交给因特网工程任务组(IETF)。
第一个后Netscape版本被重新命名为安全传输层协议(TLS),TLS(TransportLayerSecurity:
RFC2246)是基于SSL上研发的,但是与SSLv3.0有细微的差别。
二、实验环境
Windows下SSL VPN的网络拓扑如图3.3.3-1所示,其中:
客户端:
本地主机(Windows XP),IP地址172.22.1.X
服务端:
Windows实验台VPN服务器,IP地址:
172.22.X.X/16,内网IP为172.20.X.X/16
二、实验步骤
一、 根据实验拓扑配置环境
根据实验环境中的拓扑图,配置服务器(Windows实验台)与客户端(本地主机)的IP地址。
二、 安装与配置
这一部分是服务端跟客户端都要做的工作,操作完全相同。
具体如下:
双击 openvpn-2.0.9.exe进行安装,点击NEXT、I Agree、NEXT之后开始选择安装路径,手动修改为C:
\Program Files\OpenVPN 。
点击 Install 开始安装,安装过程如图3.3.3-2所示;安装过程中,弹出硬件安装窗口,点击仍然继续,安装虚拟网卡。
点击 next、Finish 完成安装。
三、 VPN服务器初始化配置
在进行操作之前,首先进行初始化工作:
打开命令提示符:
“开始|运行”,键入cmd,回车,进入命令提示符;或者“开始|程序|附件|命令提示符”;
进入C:
\Program Files\openvpn\easy-rsa目录下,开始初始化,具体命令如下:
cd C:
\Program Files\openvpn\easy-rsa init-config vars clean-all 如下图:
上面是初始化工作,以后,在进行证书制作工作时,仍旧需要进行初始化,但只需要进入openvpn\easy-rsa目录,运行vars就可以了,不需要上面那些步骤了。
四、 服务器证书的制作
(1) 生成根证书
输入build-ca.bat,如图所示;
输入build-dh.bat,如图所示。
(2) 生成服务端密钥
输入build-key-server server,生成服务端密钥;生成服务端密钥的过程中,所填写的common name需要与build-ca中所输入的common name名称一致,其余的摁空格选择默认或手动输入皆可;具体如图所示。
(3) 生成客户端密钥
输入build-key client1生成第一个VPN客户端密钥,如图所示;
build-key client2 //可以继续配置第二个VPN客户端密钥; 生成的密钥存放于C:
\Program Files\openvpn\easy\rsa\keys目录下。
五、 配置服务器
在C:
\Program Files\OpenVPN\easy-rsa\keys目录下,将生成的“ca.crt”、“dh1024.pem”、“server.crt”、“server.key”复制到C:
\Program Files\OPENVPN\KEY目录下(如果没有可以自己创建),这四个文件是VPN服务端运行所需要的文件。
注:
“ca.crt”“dh1024.pem”“server.crt”“server.key”这四个文件是VPN服务端运行所需要的文件。
“ca.crt”“client.crt”“client.key”是VPN客户端所需要的文件
在C:
\Program Files\OpenVPN\config目录下创建server.ovpn,服务器端文件(server.ovpn)示例:
local 172.22.1.X #建立VPN的IP
port 443 #端口号,根据需要,自行修改,如果是用http代理连接,请不要修改 proto tcp-server #通过TCP协议连接 dev tap #win下必须设为tap
server 172.20.0.0 255.255.0.0 # 虚拟局域网网段设置,请根据需要自行修改,不支持和拔号网卡位于同一网段
push "route 0.0.0.0 0.0.0.0" #表示client通过VPN SERVER上网 keepalive 20 180
ca "C:
\\Program Files\\OPENVPN\\KEY\\ca.crt" #CA证书存放位置,请根据实际情况自行修改
cert "C:
\\Program Files\\OPENVPN\\KEY\\server.crt" #服务器证书存放位置,请根据实际情况自行修改
key "C:
\\Program Files\\OPENVPN\\KEY\\server.key" #服务器密钥存放位置,请根据实际情况自行修改
dh "C:
\\Program Files\\OPENVPN\\KEY\\dh1024.pem" #dh1024.pem存放位置,请根据实际情况自行修改
push "redirect-gateway def1"
push "dhcp-option DNS 219.141.140.10" #DNS,请根据实际情况自行修改 mode server tls-server
status "C:
\\Program Files\\OPENVPN\\log\\openvpn-status.log" #LOG记录文件存放位置,请根据实际情况自行修改
comp-lzo verb 4
六、 配置客户端
“ca.crt”“client.crt”“client.key”是VPN客户端所需要的文件,复制到客户端C:
\Program Files\OPENVPN\KEY目录下(如果没有可以自己创建)。
在客户端安装完成之后,需要将 ca.crt client1.crt client1.key 这三个文件拷贝到C:
\Program Files\openvpn\key目录下,这三个文件由服务端生成,所以,连接谁的服务器,就需要跟谁索取这三个文件。
然后,编辑一个 client.ovpn的配置文件存放到C:
\Program Files\openvpn\config目录下,客户端就可以进行连接了;客户端文件(client.ovpn)示例:
七、 VPN服务端命令行启动:
Openvpn.exe "C:
\Program Files\OpenVPN\config\server.ovpn" //启动VPN到443端口 八、 VPN客户端命令行连接:
Openvpn.exe "C:
\Program Files\OpenVPN\config\client.ovpn" 九、 VPN安全性验证
上面的配置拔号成功后,VPN SERVER的IP为172.20.1.Y,VPN client的IP为172.20.1.Y。
(1) 在VPN client上ping VPN SERVER;
(2) 分别抓取真实网卡与虚拟网卡的数据包作对比。
具体结果如下:
(1) 真实网卡:
抓取的为加密ssl数据包(图3.3.3-8为实际环境举例) 。
3、实验总结
需要多练多问多XX
实验报告
组别
16
姓名
林靖皓
同组实验者
实验项目名称
实验二Linux防火墙
实验日期
第9周周二7,8节
教师评语
实验成绩
指导教师
廉文娟
一、实验目的
1、了解防火墙的主要类型
2、了解和用CLI配置CBAC(IOS有状态的包检查)
3、了解和用CLI和SDM配置区域(Zone-Based)策略防火墙
二、实验环境
1网络中包括两个子网A和B。
子网A的网络地址为192.168.1.0/24网关为hostA。
HostA
有两个接口eth0和eth1。
Eth0连接子网AIP地址为192.168.1.1。
eth1连接外部网络
Ip地址为10.0.0.11。
子网B的网络地址为192.168.10.0/24网关为hostB。
HostB有两个
网络接口eth0和eth1。
eth0连接子网B,IP地址为192.168.10.1。
eth1连接外部网络IP
地址为10.0.0.101。
hostA和HostB构成子网C,网络地址是10.0.0.0/24通过集线器连接
到hostC然后通过hostC连接Internet。
HostC的内部网络接口为eth0IP地址为10.0.0.1。
2在hostA、hostB和hostC上都已经安装好Linux系统并且在hostC上已经设置好了
Squid代理服务器。
3、实验内容
开始配置
(1)查看本机关于IPTABLES的设置情况
[root@tp~]#iptables-L-n
可以看出我在安装linux时,选择了有防火墙,并且开放了22,80,25端口.
如果你在安装linux时没有选择启动防火墙,是这样的
[root@tp~]#iptables-L-n
(2)清除原有规则.
不管你在安装linux时是否启动了防火墙,如果你想配置属于自己的防火墙,那就清除现在filter的所有规则.
[root@tp~]#iptables-F清除预设表filter中的所有规则链的规则
[root@tp~]#iptables-X清除预设表filter中使用者自定链中的规则
[root@tp~]#/etc/rc.d/init.d/iptablessave
这样就可以写到/etc/sysconfig/iptables文件里了.写入后记得把防火墙重起一下,才能起作用.
[root@tp~]#serviceiptablesrestart
现在IPTABLES配置表里什么配置都没有了,那我们开始我们的配置吧
(3)设定预设规则
[root@tp~]#iptables-pINPUTDROP
[root@tp~]#iptables-pOUTPUTACCEPT
[root@tp~]#iptables-pFORWARDDROP
上面的意思是,当超出了IPTABLES里filter表里的两个链规则(INPUT,FORWARD)时,不在这两个规则里的数据包怎么处理呢,那就是DROP(放弃).应该说这样配置是很安全的.我们要控制流入数据包
而对于OUTPUT链,也就是流出的包我们不用做太多限制,而是采取ACCEPT,也就是说,不在着个规则里的包怎么办呢,那就是通过.
可以看出INPUT,FORWARD两个链采用的是允许什么包通过,而OUTPUT链采用的是不允许什么包通过.
(4)添加规则.
首先添加INPUT链,INPUT链的默认规则是DROP,所以我们就写需要ACCETP(通过)的链
为了能采用远程SSH登陆,我们要开启22端口.
[root@tp~]#iptables-AINPUT-ptcp--dport22-jACCEPT
[root@tp~]#iptables-AOUTPUT-ptcp--sport22-jACCEPT(注:
这个规则,如果你把OUTPUT设置成DROP的就要写上这一部,好多人都是望了写这一部规则导致,始终无法SSH.在远程一下,是不是好了.
其他的端口也一样,如果开启了web服务器,OUTPUT设置成DROP的话,同样也要添加一条链:
[root@tp~]#iptables-AOUTPUT-ptcp--sport80-jACCEPT,其他同理.)
如果做了WEB服务器,开启80端口.
[root@tp~]#iptables-AINPUT-ptcp--dport80-jACCEPT
如果做了邮件服务器,开启25,110端口.
[root@tp~]#iptables-AINPUT-ptcp--dport110-jACCEPT
[root@tp~]#iptables-AINPUT-ptcp--dport25-jACCEPT
如果做了FTP服务器,开启21端口
[root@tp~]#iptables-AINPUT-ptcp--dport21-jACCEPT
[root@tp~]#iptables-AINPUT-ptcp--dport20-jACCEPT
如果做了DNS服务器,开启53端口
[root@tp~]#iptables-AINPUT-ptcp--dport53-jACCEPT
如果你还做了其他的服务器,需要开启哪个端口,照写就行了.
二,配置一个NAT表放火墙
1,查看本机关于NAT的设置情况
[root@tprc.d]#iptables-tnat-L
ChainPREROUTING(policyACCEPT)
targetprotoptsourcedestination
ChainPOSTROUTING(policyACCEPT)
targetprotoptsourcedestination
SNATall--192.168.0.0/24anywhereto:
211.101.46.235
ChainOUTPUT(policyACCEPT)
targetprotoptsourcedestination
我的NAT已经配置好了的(只是提供最简单的代理上网功能,还没有添加防火墙规则).关于怎么配置NAT,参考我的另一篇文章
当然你如果还没有配置NAT的话,你也不用清除规则,因为NAT在默认情况下是什么都没有的
如果你想清除,命令是
[root@tp~]#iptables-F-tnat
[root@tp~]#iptables-X-tnat
[root@tp~]#iptables-Z-tnat
2,添加规则
添加基本的NAT地址转换,(关于如何配置NAT可以看我的另一篇文章),
添加规则,我们只添加DROP链.因为默认链全是ACCEPT.
防止外网用内网IP欺骗
[root@tpsysconfig]#iptables-tnat-APREROUTING-ieth0-s10.0.0.0/8-jDROP
[root@tpsysconfig]#iptables-tnat-APREROUTING-ieth0-s172.16.0.0/12-jDROP
[root@tpsysconfig]#iptables-tnat-APREROUTING-ieth0-s192.168.0.0/16-jDROP
如果我们想,比如阻止MSN,QQ,BT等的话,需要找到它们所用的端口或者IP,(个人认为没有太大必要)
例:
禁止与211.101.46.253的所有连接
[root@tp~]#iptables-tnat-APREROUTING-d211.101.46.253-jDROP
禁用FTP(21)端口
[root@tp~]#iptables-tnat-APREROUTING-ptcp--dport21-jDROP
这样写范围太大了,我们可以更精确的定义.
[root@tp~]#iptables-tnat-APREROUTING-ptcp--dport21-d211.101.46.253-jDROP
这样只禁用211.101.46.253地址的FTP连接,其他连接还可以.如web(80端口)连接.
按照我写的,你只要找到QQ,MSN等其他软件的IP地址,和端口,以及基于什么协议,只要照着写就行了.
最后:
drop非法连接
[root@tp~]#iptables-AINPUT-mstate--stateINVALID-jDROP
[root@tp~]#iptables-AOUTPUT-mstate--stateINVALID-jDROP
[root@tp~]#iptables-AFORWARD-mstate--stateINVALID-jDROP
允许所有已经建立的和相关的连接
[root@tp~]#iptables-AINPUT-mstate--stateESTABLISHED,RELATED-jACCEPT
[root@tp~]#iptables-AOUTPUT-mstate--stateESTABLISHED,RELATED-jACCEPT
[root@tp~]#/etc/rc.d/init.d/iptablessave
这样就可以写到/etc/sysconfig/iptables文件里了把防火墙重起一下,起作用。
4、实验总结
通过此次防火墙的实验,模拟进行了简单的防火墙的工作,对防火墙的基本工作原理有了认识,加深了对网络传输协议体系的理解,也学习到了对Linux内核扩展的方法。
实验报告
组别
16
姓名
林靖皓
同组实验者
实验项目名称
实验三思科防火墙配置与入侵检测技术
实验日期
第10周周二7,8节
教师评语
实验成绩
指导教师
廉文娟
一、 实验目的
通过该实验了解PIX防火墙的软硬件组成结构,掌握PIX防火墙的工作模式,熟悉PIX防火墙的6条基本指令,掌握PIX防火墙的动态、静态地址映射技术,掌握PIX防火墙的管道配置,熟悉PIX防火墙在小型局域网中的应用。
二、 实验任务
观察PIX防火墙的硬件结构,掌握硬件连线方法 查看PIX防火墙的软件信息,掌握软件的配置模式
了解PIX防火墙的6条基本指令,实现内网主机访问外网主机
三、 实验设备
PIX501防火墙一台,CISCO 2950交换机两台,控制线一根,网络连接线若干,PC机若干
四、 实验拓扑图及内容
图中DMZ区域没有配置,只是配置了内网R1和外网R4,
外网R4:
R4#conf t
Enter configuration commands, one per line. End with CNTL/Z. R4(config)#int f0/0
R4(config-if)#ip add 192.168.1.2 255.255.255.0
R4(config-if)#no shut
R4(config-if)#exit
*Mar 1 00:
02:
56.059:
%LINK-3-UPDOWN:
Interface FastEthernet0/0, changed state to up
*Mar 1 00:
02:
57.059:
%LINEPROTO-5-UPDOWN:
Line protocol on Interface FastEthernet0/0, changed state to up
R4(config)#ip route 0.0.0.0 0.0.0.0 192.168.1.3
R4(config)#
内网R1:
R1#conf t
Enter configuration commands, one per line. End with CNTL/Z. R1(config)#int f0/0
R1(config-if)#ip add 10.1.1.2 255.255.255.0
R1(config-if)#no shut R1(config-if)#
*Mar 1 00:
01:
32.115:
%LINK-3-UPDOWN:
Interface FastEthernet0/0, changed state to up *Mar 1 00:
01:
33.115:
%LINEPROTO-5-UPDOWN:
Line protocol on Interface FastEthernet0/0, changed state to up
R1(config-if)#exit
R1(config)#ip route 0.0.0.0 0.0.0.0 10.1.1.3
R1(config)#exit
R1#
*Mar 1 00:
53:
05.287:
%SYS-5-CONFIG_I:
Configured from console by console
R1#
防火墙上的配置:
pixfirewall# conf t
pixfirewall(config)# hostname pix
pix(config)# pix(config)#
pix(config)# int e0
pix(config-if)# ip add 10.1.1.3 255.255.255.0
pix(config-if)# nameif inside
INFO:
Security level for "inside" set to 100 by default.
pix(config-if)# no shut
pix(config-if)# exit
pix(config)# int e1
pix(config-if)# nameif outside
INFO:
Security level for "outside" set to 0 by default.
pix(config-if)# ip add 192.168.1.3
pix(config-if)# ip add 192.168.1.3 255.255.255.0
pix(config-if)# no shut
pix(config-if)# exit
pix(config)# static (inside,outside) 192.168.1.4 10.1.1.4 netmask 255.255.255.255
pix(config)# access-list 100 permit icmp any any
pix(config)# access-gr
pix(config)# access-group 100 in int
pix(config)# access-group 100 in interface outside
pix(config)# exit pix#
五、实验结