配置Linux下的防火墙路由器和代理服务器.docx
- 文档编号:8165211
- 上传时间:2023-01-29
- 格式:DOCX
- 页数:16
- 大小:26.39KB
配置Linux下的防火墙路由器和代理服务器.docx
《配置Linux下的防火墙路由器和代理服务器.docx》由会员分享,可在线阅读,更多相关《配置Linux下的防火墙路由器和代理服务器.docx(16页珍藏版)》请在冰豆网上搜索。
配置Linux下的防火墙路由器和代理服务器
实验十九
配置Linux下的防火墙、路由器和代理服务器
实验二十
实验二十一
一.一. 实验目的:
掌握在Linux系统平台下架设路由器和用ipchains配置防火墙、透明代理、以及NAT的方法。
二.二. 实验内容:
1.1. 配置静态路由器;
2.2. 配置防火墙;
3.3. 配置NAT;
1.1. 配置透明代理;
2.2. 配置Squid代理服务器。
三.三. 实验环境:
1.1. 网络中包括两个子网A和B。
子网A的网络地址为192.168.1.0/24,网关为hostA。
HostA有两个接口,eth0和eth1。
Eth0连接子网A,IP地址为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的内部网络接口为eth0,IP地址为10.0.0.1。
2.2. 在hostA、hostB和hostC上都已经安装好Linux系统,并且在hostC上已经设置好了Squid代理服务器。
四.四. 实验练习:
任务一配置路由器
实验要求:
在hostA、hostB和hostC上配置路由器,使子网A和B之间能够互相通信,同时子网A和B内的主机也能够和hostC相互通信。
实验内容:
配置路由器,实现各子网和主机间的通信,检测配置。
实验步骤:
◆◆ 配置hostA
1.1. 给两个网络接口设置IP地址,启动网络接口:
ifconfigeth1192.168.1.1netmask255.255.255.0up
ifconfigeth110.0.0.11netmask255.255.255.0up
2.2. 检查网络接口启动状况:
ifconfig
3.3. 启动路由功能:
echo1>/proc/proc/sys/net/ipv4/ip_forward
4.4. 配置默认网关为hostC:
routeadd–net192.168.1.0netmask255.255.255.0deveth0
5.5. 配置到本子网的路由:
routeadd–net192.168.1.0netmask255.255.255.0deveth1
6.6. 配置到子网B的路由:
routeadd–net192.168.10.0netmask255.255.255.0gw10.0.0.101deveth1
7.7. 检查核心路由表:
route。
◆◆ 配置hostB
1.1. 给两个网络接口设置IP地址,启动网络接口:
2.ifconfigeth1192.168.10.1netmask255.255.255.0up
3.ifconfigeth010.0.0.101netmask255.255.255.0up
4.2. 检查网络接口启动状况:
ifconfig
5.3. 启动路由功能:
echo1>/proc/proc/sys/net/ipv4/ip_forward
6.4. 配置默认网关为hostC:
routeadddefaultgw10.0.0.1deveth0
7.5. 配置到本子网的路由:
routeadd–net192.168.10.0netmask255.255.255.0deveth1
8.6. 配置到子网A的路由:
routeadd–net192.168.1.0netmask255.255.255.0gw10.0.0.11deveth0
9.7. 检查核心路由表:
route。
◆◆ 配置hostC
1.1. 配置eth0的IP地址,启动接口:
ifconfigeth010.0.0.1netmask255.255.255.0up
2.2. 启动路由功能:
echo1>/proc/proc/sys/net/ipv4/ip_forward
3.3. 配置到子网A和子网B的路由:
routeadd–net192.168.1.0netmask255.255.255.0gw10.0.0.11deveth0
routeadd–net192.168.10.0netmask255.255.255.0gw10.0.0.101deveth0
◆◆ 检测配置:
1.1. 登录到子网A中的一台客户机,检测是否能够连通网络B,C中的客户机:
ping192.168.10.24;ping10.0.0.1;
2.2. 登录到子网B中的一台客户机,检测是否能够连通A,C中的客户机。
操作与上述相同。
任务二:
配置防火墙
实验要求:
在hostA上用ipchains配置防火墙,实现如下规则:
●● 允许转发数据包,保证hostA的路由功能;
●● 允许所有来自子网A内的数据包通过;
●● 允许子网A内的主机对外发出请求后返回的TCP数据包进入子网A;
●● 只允许子网A外的客户机连接子网A内的客户机的22号TCP端口,也就是只允许子网A外的主机对子网A内的主机进行SSH连接;
●● 禁止子网A外的主机ping子网A内的主机,也就是禁止子网A外的ICMP包进入子网A。
实验内容:
用ipchains配置hostA的防火墙,检测配置。
实验步骤:
◆◆ 配置防火墙
1.1. 登录到hostA,清空所有链中的规则:
ipchains–F
2.2. 添加默认策略,允许所有数据包通过:
ipchains–Pinputaccept
ipchains–Poutputaccept
ipchains–Pforwardaccept
3.3. 允许来自子网A内的数据包通过:
ipchains–Ainput–Ieth1–s192.168.1.0/24–jaccept
ipchains–Ainput–Ieth0–s192.168.1.0/24–jdeny
4.4. 允许子网A外的主机对A内的主机进行SSH连接,而禁止所有其他的初始化连接:
5. ipchains–Ainput–Ieth0–d192.168.1.0/24!
22–ptcp–y–jdeny
6.5. 禁止子网A外的主机ping子网A内的主机:
7. ipchains–Ainput–Ieth0–d192.168.1.0/24–picmp–jdeny
8.6. 查看配置:
ipchains–Linput
◆◆ 检测配置
9.1. 登录到子网A内的一台主机,连接B中的主机和hostC,检测是否能够连通(不要用ping)。
10.2. 登录到子网B内的一台主机,用SSH命令连接子网A内的一台开有SSH服务的主机,看看能否连通:
ssh–uroot192.168.1.10
11.3. 尝试连接子网A内的主机的其他服务端口,看看能否连通。
12.4. 用ping命令检测A内的主机。
任务三配置NAT
实验要求:
重新配置hostA和hostB上的路由规则和防火墙规则,启用IPMasquade功能。
在hostA上对子网A内的IP地址进行伪装,实现NAT,使子网A内的主机能够访问外部网络。
实验内容:
配置路由;配置IPMasquade;检测配置。
实验步骤:
◆◆ 配置路由
1.1. 登录到子网hostB,删除到A的路由:
routedel–net192.168.1.0netmask255.255.255.0gw10.0.0.1deveth0
2.2. 登录到子网A中的主机。
测试一下现在能否连通B内的主机。
◆◆ 配置IPMasquade
3.1. 登录到hostA,保持前面配置好的路由和防火墙规则不变。
4.2. 配置IPMasquade:
ipchains–Aforward–Ieth0–s192.168.1.0/24–jMASQ
5.3. 登录到A内的一台主机,用ssh命令连接B内开放了ssh服务的主机,看是否能连接上:
ssh–uroot192.168.10.24
6.4. 登录后,用netstat查看一下网络连接。
可以看到,连接到本机的ssh端口的IP地址是10.0.0.11,也就是子网A的网关的外部Ip地址,而不是子网A的主机本身的IP地址:
netstat–at|grepssh
任务四配置透明代理
实验要求:
在hostC上设置防火墙规则,把来自子网A和B中的客户机的发往Internet的端口为80的数据包,重定向到hostC的Squid的端口,实现透明代理。
实验步骤:
1.1. 登录到hostC,配置防火墙规则:
ipchains–Pinputaccecpt
ipchains–Poutputaccecpt
ipchains–Pforwarddeny
ipchains–Ainput–ptcp–s192.168.1.0/24–d0.0.0.0/080–jredirect3128
ipchains–Ainput–ptcp–s192.168.10.0/24–d0.0.0.0/080–jredirect3128
2.2. 登录到A内的一台主机,启动浏览器,不设置代理服务器,看能否直接连入Internet。
任务五Squid代理服务器
1.1. 安装squid:
#rpm–Uvh软件包名
2.2. 启动服务:
servicesquidstart,然后配置浏览器使用localhost作为Proxy并且把端口设定为3128。
3.3. 尝试访问一些主页。
4.4. 两个同学一组将对方的主机当作Proxy。
这样子应该不能工作。
squid返回的页面在/var/log/squid/access.log文件的底部有所解释。
5.5. 编辑/etc/squid/squid.conf文件。
在文件中查找第二次出现Recommendminimumconfiguration的地方。
将会看到缺省的存取控制列表(acl)。
在CONNECTmethodCONNECT行的下面添加一个对于本地网络的存取访问列表项目:
aclexamplesrc192.168.0.0/24。
对于这个配置可以把它作为参考以应用到其他的任何地方。
src是该acl的源IP地址。
6.6. 在文件中查找INSERTYOURRULE(S)HERE,在localhostacl的上面增加如下的内容:
http_accessallowexample。
重新启动squid。
您的邻居将能够访问您的Web缓存了。
7.7. 拒绝访问一些URL。
返回到acl的部分,在新添加行的下面添加:
aclotherguys192.168.xx.xx(指定你同组同学的IP地址)
8.8. 增加一条拒绝访问规则应用到。
返回到刚才添加allow的地方,在其下面增加如下行:
http_accessdenyotherguys再次重新启动squid,再次检查这些相关的域,非常不幸,访问没有被拒绝。
9.9. 再次打开配置文件,将添加的拒绝规则放在example的允许规则之前。
也就是说,在otherguys拒绝规则之前的example允许规则使得访问被允许,但是拒绝没有被生效。
在移动规则以后,重新启动squid。
这回它将禁止访问在任何上面禁止访问的域内的站点了。
五.五. 思考题:
1.1. 能不能使子网A内的主机向hostC发出的数据包,通过子网B的网关hostB到达hostC?
这种路由该如何设置?
2.2. 在hostA上是否可以配置双向的IPMasquade,使子网A内的数据包发往子网B时对其进行转换;同时使子网B内的发往子网A内的主机的数据包经过hostA时,也对其他进行地址转换?
如何设置?
3.3. 在客户端用ftp从Internet上下载文件能够使用Squid吗,如何设置?
实验十九
配置Linux下的防火墙、路由器和代理服务器
实验二十
实验二十一
六.一. 实验目的:
掌握在Linux系统平台下架设路由器和用ipchains配置防火墙、透明代理、以及NAT的方法。
七.二. 实验内容:
1.1. 配置静态路由器;
2.2. 配置防火墙;
3.3. 配置NAT;
3.1. 配置透明代理;
4.2. 配置Squid代理服务器。
八.三. 实验环境:
3.1. 网络中包括两个子网A和B。
子网A的网络地址为192.168.1.0/24,网关为hostA。
HostA有两个接口,eth0和eth1。
Eth0连接子网A,IP地址为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的内部网络接口为eth0,IP地址为10.0.0.1。
4.2. 在hostA、hostB和hostC上都已经安装好Linux系统,并且在hostC上已经设置好了Squid代理服务器。
九.四. 实验练习:
任务一配置路由器
实验要求:
在hostA、hostB和hostC上配置路由器,使子网A和B之间能够互相通信,同时子网A和B内的主机也能够和hostC相互通信。
实验内容:
配置路由器,实现各子网和主机间的通信,检测配置。
实验步骤:
◆◆ 配置hostA
8.1. 给两个网络接口设置IP地址,启动网络接口:
ifconfigeth1192.168.1.1netmask255.255.255.0up
ifconfigeth110.0.0.11netmask255.255.255.0up
9.2. 检查网络接口启动状况:
ifconfig
10.3. 启动路由功能:
echo1>/proc/proc/sys/net/ipv4/ip_forward
11.4. 配置默认网关为hostC:
routeadd–net192.168.1.0netmask255.255.255.0deveth0
12.5. 配置到本子网的路由:
routeadd–net192.168.1.0netmask255.255.255.0deveth1
13.6. 配置到子网B的路由:
routeadd–net192.168.10.0netmask255.255.255.0gw10.0.0.101deveth1
14.7. 检查核心路由表:
route。
◆◆ 配置hostB
10.1. 给两个网络接口设置IP地址,启动网络接口:
11.ifconfigeth1192.168.10.1netmask255.255.255.0up
12.ifconfigeth010.0.0.101netmask255.255.255.0up
13.2. 检查网络接口启动状况:
ifconfig
14.3. 启动路由功能:
echo1>/proc/proc/sys/net/ipv4/ip_forward
15.4. 配置默认网关为hostC:
routeadddefaultgw10.0.0.1deveth0
16.5. 配置到本子网的路由:
routeadd–net192.168.10.0netmask255.255.255.0deveth1
17.6. 配置到子网A的路由:
routeadd–net192.168.1.0netmask255.255.255.0gw10.0.0.11deveth0
18.7. 检查核心路由表:
route。
◆◆ 配置hostC
4.1. 配置eth0的IP地址,启动接口:
ifconfigeth010.0.0.1netmask255.255.255.0up
5.2. 启动路由功能:
echo1>/proc/proc/sys/net/ipv4/ip_forward
6.3. 配置到子网A和子网B的路由:
routeadd–net192.168.1.0netmask255.255.255.0gw10.0.0.11deveth0
routeadd–net192.168.10.0netmask255.255.255.0gw10.0.0.101deveth0
◆◆ 检测配置:
3.1. 登录到子网A中的一台客户机,检测是否能够连通网络B,C中的客户机:
ping192.168.10.24;ping10.0.0.1;
4.2. 登录到子网B中的一台客户机,检测是否能够连通A,C中的客户机。
操作与上述相同。
任务二:
配置防火墙
实验要求:
在hostA上用ipchains配置防火墙,实现如下规则:
●● 允许转发数据包,保证hostA的路由功能;
●● 允许所有来自子网A内的数据包通过;
●● 允许子网A内的主机对外发出请求后返回的TCP数据包进入子网A;
●● 只允许子网A外的客户机连接子网A内的客户机的22号TCP端口,也就是只允许子网A外的主机对子网A内的主机进行SSH连接;
●● 禁止子网A外的主机ping子网A内的主机,也就是禁止子网A外的ICMP包进入子网A。
实验内容:
用ipchains配置hostA的防火墙,检测配置。
实验步骤:
◆◆ 配置防火墙
13.1. 登录到hostA,清空所有链中的规则:
ipchains–F
14.2. 添加默认策略,允许所有数据包通过:
ipchains–Pinputaccept
ipchains–Poutputaccept
ipchains–Pforwardaccept
15.3. 允许来自子网A内的数据包通过:
ipchains–Ainput–Ieth1–s192.168.1.0/24–jaccept
ipchains–Ainput–Ieth0–s192.168.1.0/24–jdeny
16.4. 允许子网A外的主机对A内的主机进行SSH连接,而禁止所有其他的初始化连接:
17. ipchains–Ainput–Ieth0–d192.168.1.0/24!
22–ptcp–y–jdeny
18.5. 禁止子网A外的主机ping子网A内的主机:
19. ipchains–Ainput–Ieth0–d192.168.1.0/24–picmp–jdeny
20.6. 查看配置:
ipchains–Linput
◆◆ 检测配置
21.1. 登录到子网A内的一台主机,连接B中的主机和hostC,检测是否能够连通(不要用ping)。
22.2. 登录到子网B内的一台主机,用SSH命令连接子网A内的一台开有SSH服务的主机,看看能否连通:
ssh–uroot192.168.1.10
23.3. 尝试连接子网A内的主机的其他服务端口,看看能否连通。
24.4. 用ping命令检测A内的主机。
任务三配置NAT
实验要求:
重新配置hostA和hostB上的路由规则和防火墙规则,启用IPMasquade功能。
在hostA上对子网A内的IP地址进行伪装,实现NAT,使子网A内的主机能够访问外部网络。
实验内容:
配置路由;配置IPMasquade;检测配置。
实验步骤:
◆◆ 配置路由
7.1. 登录到子网hostB,删除到A的路由:
routedel–net192.168.1.0netmask255.255.255.0gw10.0.0.1deveth0
8.2. 登录到子网A中的主机。
测试一下现在能否连通B内的主机。
◆◆ 配置IPMasquade
9.1. 登录到hostA,保持前面配置好的路由和防火墙规则不变。
10.2. 配置IPMasquade:
ipchains–Aforward–Ieth0–s192.168.1.0/24–jMASQ
11.3. 登录到A内的一台主机,用ssh命令连接B内开放了ssh服务的主机,看是否能连接上:
ssh–uroot1
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 配置 Linux 防火墙 路由器 代理服务器