无线组网 频道

Linux系统下教你设置网络共享ADSL连接

    三、安装Squid代理服务器

    1、安装squid

    通常说来,安装Squid有两种方法:一是从Linux 发行版本中获取该软件的RPM包进行;二是安装从Squid的官方站点http://www.squid-cache.org/ 下载该软件的源码进行编译后安装。目前网上最新的稳定版本为squid-2.5.STABLE10,下面以前者为例进行介绍。

    首先要确认是否已经安装可以使用以下命令查看:“rpm -q squid”如果在系统安装时已经把squid 安装上了,那么我们就可以直接对其进行配置使用了。否则,可以通过Rat Het Linux图形界面下的“添加/删除应用程序”工具进行安装。

    具体方法是,选择“主选单”→“系统设置”→“添加/删除应用程序”,选中 “squid”选项,单击“更新”即可。 也可以从Squid站点www.squid-cache.org 获取该软件的源代码安装包,包括gz和bz2两种压缩方式。可以用以下命令启动squid。

    或者,使用Linux 的启动脚本来启动squid。
/etc/rc.d/init.d/squid start
    同样,也可以用下列脚本停止运行squid或重启动squid。
/etc/rc.d/init.d/squid stop
/etc/rc.d/init.d/squid restart

    2、配置squid透明代理

    透明代理的意思是客户端根本不需要知道有代理服务器的存在。当我们在客户端浏览器中打开一个web请求,比如“http://www.it168.com”,工作流程如下:

    客户端向DNS请求“www.it168.com”,得到相应的IP地址202.99.11.122。然后,客户端使用某一端口向该IP地址的80端口发起web连接请求,请求web页面。
    当该请求包通过透明代理服务器时,被重定向到代理服务器的绑定端口8080。于是,透明代理服务器用某一端口(比如108向202.99.11.120的80端口发起web连接请求,请求web页面。
    收到响应的web页面后,代理服务器把该数据传送给客户端。
    客户端浏览器显示该页面。

    在NAT路由器上,将用户对HTTP的请求(TCP类型,端口号80)重定向到Squid 传输HTTP的端口(TCP类型,默认端口号3128), 即由代理服务器向外请求所需数据然后转交给客户端。配置了透明代理,客户端设置了默认网关后,用户用浏览器浏览网页时, 感觉就像直接上网一样,但实际上却是通过代理服务器浏览网页,也就是说对客户透明。

    将Squid配置为透明代理的两个步骤:

    配置Squid添加如下指令

httpd_accel_host virtual
http_port 3128
httpd_accel_port 80
httpd_accel_with_proxy  on
httpd_accel_uses_host_header on
http_access allow all

    重新起动squid,然后使用iptables进行端口转发

#echo 1 > /proc/sys/net/ipv4/ip_forward
#iptables -t nat -A PREROUTING -i eth0 -p tcp --dport 80 -j REDIRECT --to-port 3128

    以上两句最好写进 /etc/rc.d/rc.local,因为这两条记录重起机器后就失效了。

    2、Windows客户端设置

    Windows下客户端设置见下图。

windows下TCP/IP设置

    在 Internet Explorer 下的配置:

    1. 点击菜单上的 工具 -> Internet 选项
    2. 选择 连接 并单击 局域网设置
    3. 选中 使用代理服务器 输入上述代理服务器的 IP 地址和端口。

    然后在客户机上的windows 计算机就可以访问互联网了。到此为止笔者介绍了一下Linux 异构网络共享ADSL连接经验供您参考。

0
相关文章