Chinaunix首页 | 论坛 | 博客
  • 博客访问: 1536219
  • 博文数量: 416
  • 博客积分: 10061
  • 博客等级: 上将
  • 技术积分: 3287
  • 用 户 组: 普通用户
  • 注册时间: 2006-12-05 11:12
个人简介

技术在于专研

文章分类

全部博文(416)

文章存档

2021年(3)

2015年(34)

2013年(2)

2012年(1)

2011年(2)

2010年(5)

2007年(344)

2006年(25)

分类: LINUX

2007-08-16 15:00:55

试验环境:一台linux系统服务器,一个web服务器,一个客户机。
拓扑结构:
| |-------------------------------| |------------------------------------| |
Client firewall+squid+dhcp web server
首先,配置一个简单的web server
windows2003系统,在控制面板里面选择添加删除程序-->添加删除windows组件――>应用程序服务器――>点击详细信息――>internet 信息服务――>点击详细信息――>选中万维网服务。单击确定。然后按提示操作就行了。如图所示:

然后在控制面板里面找到管理工具,打开IIS信息管理器 ,如图所示:
右键单击网站,选择新建――>网站,如图所示:

按照提示操作建立一个网站。完成后如图所示:

现在来配置这个网站,右键点击新建的网站,选择属性,如图所示:

在主目录选项卡里面添加网站的路径:

在文档选项卡里面添加主页文件,然后把他移动到最上面,或删除里面原有的所有文档:

在目录安全性选项卡里面选择身份验证和控制访问,单击编辑,选中启用匿名访问,点击确定,如图所示:

然后右键点击新建网站的属性,选择浏览,看网站是否正常启动:

Ok ,web server 配置完成。

现在配置Linux服务器:
1, 配置dchp服务器:
安装dhcp rpm –ivh dhcp-3.0p11-23.i386.rpm
复制dhcp模板到/etc目录下 cp /usr/share/doc/dhcp-3.0p11/dhcpd.conf.sample /etc/dhcpd.conf
然后编辑/etc/dhcpd.conf ,如图所示:

启动dhcp 服务 ,service dhcpd start
把dhcp服务添加到启动项 chkconfig --level 345 on
然后用客户机验证,如图所示:

Dhcp服务器配置完成,在这里我就不配置DNS服务器了,一会直接用IP地址访问web server,具体配置参照以前的DNS服务器配置。
接下来禁用linux服务器的路由转发功能:
echo 0> /proc/sys/net/ipv4/ip_forward
下面配置linux系统下的防火墙iptables :
首先启动iptables , service iptables start
iptables –F 清空防火墙现有规则。
service iptables save 保存防火墙配置。
现在可以查看防火墙的状态了,如图所示

现在来添加新的防火墙规则:
iptables –t nat –A PREROUTING –p tcp --dport 80 –i eht1 –j DNAT --to 192.168.2.1:3128
意思是添加一条nat规则,从eth1网卡进入的协议是tcp目标端口是80 转换到192.168.2.1的3128端口,3128是squid代理服务器的监听端口。
现在安装配置squid代理服务器。
首先用rpm –qa |grep squid 检查squid是否安装,如果没有安装,可以用linux安装光盘安装,
来看看squid的配置文件,如图所示:

由于这个配置文件很大,我就把有用的配置提出来:
在linux系统里面配置文件中所有以#开头的行都表示注释行,对配置不起作用。
下/etc/squid/squid.conf 这个配置文件里面常用的配置有:
1,# http_port 3128 , 去掉前面的#,来启用这个配置。Squid代理服务器监听的端口为3128
2,#cache_mem 8M 去掉前面的#, 这个是配置代理服务器的缓存空间。可以设置大一点的值,这根据需要和服务器的硬件配置来决定。
3.#cache_dir ufs /var/spool/squid/ 100 16 256 去掉前面的# ,这个是配置代理服务器的缓存的目录。
4,#cache_access_log /var/log/squid/access.log 去掉前面的# ,这个是启用代理服务器的访问日志。
5,#acl our_networks src 192.168.1.0/24 192.168.2.0/24 ,去掉前面的# ,这个是定义acl 访问控制列表。
6,#http_access allow our_network 去掉前面的#,这个是允许刚才定义的网段访问外网。
7,#cache_mgr root 去掉前面的# ,这个是当代理页面发生错误时,代理服务器将向这个配置项登记的用户发送邮件消息,可以将这个配置为管理员的实际邮件地址。
8.Visibale_hostname 这个定义返回给客户机的出错信息中的主机名。
这些配置好后代理服务器就可以运行了, squid –z ,service squid start ,chkconfi squid 345 on。运行情况如图所示:

这时代理客户机可以用代理服务器访问外网了,前提是得在客户机的IE属性里面选中选中代理服务器,端口里面添加3128,如图所示:

下面我们来ping web server的ip地址,如图所示:

因为没有路由,所以网络是不通的,当使用了代理后就可以访问这个网站了,如图所示:

这样做是可行的,当处在一个大的网络规模时,这种方法就显得比较落后了,通常是使用透明代理,客户机不用做任何设置就可以上网了。所谓透明代理就是客户机把网关指向NAT服务器,一旦有去往外网的数据包,NAT就将他转发到代理服务器的端口上面,代理服务器帮用户到网上获取他想要的数据。来看怎么解决。
在linux服务器上面编辑squid代理服务器的配置文件,如下:
1,#httpd_accel_port 80 去掉前面的# ,添加httpd_accel_hostname virtual
2,#httpd_accel_single_host off 去掉前面的#把off改为on
3, #httpd_accel_with_proxy off 去掉前面的#把off改为on
4,#httpd_accel_uses_host_header off 去掉前面的#把off 改为on
5,停止squid ,squid –k shutdown ,然后重启squid ,service squid restart
6,现在来改变防火墙的规则:
iptables –t nat –F 清空NAT列表
iptables –t nat –A PROROUTING –p tcp –dport 80 –j REDIRECT --to-port 3128
service iptables save
好了,现在到客户机验证,首先把客户机的IE属性里面的代理服务器取消,如图所示:

现在删除internet临时文件,包括cookies 文件,如图所示:

现在打开刚才的网站测试,如图所示:

OK ,试验到此结束,希望你能有所收获。
  你可能还对以下内容感兴趣:linux 客户端,linux 邮件客户端,linux ftp 客户端,华为客户端 linux,ftp客户端实现,squid透明代理,linux squid,linux iptables,客户端操作系统,微软客户端操作系统,娱乐系统客户端,客户端系统缺少文件,亿邮计费系统客户端,浩方对战平台客户端,浩方对站平台客户端,linux 透明主题,linux pthread 实现,杭州透明售房系统,台州市透明购房系统,透明售房系统。
阅读(968) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~