linxu代理服务器的实例
本文章是关于《linux高性能服务器开发》书中4.1通信实例的复现
本人用virtualbox上的两台linux虚拟机
大致步骤,在其中的一台虚拟机上布置squid代理服务,在另一台服务器上使用服务通过代理与网站通信
一.虚拟机的一些设置
虚拟机上默认的IP地址是10.0.2.5,我们用到两台虚拟机,因此需要更改IP地址,避免混淆
具体参考:Virtual box的nat模式中,(克隆)虚拟机IP地址重复问题(nat模式下虚拟机间的通信)_云不散的博客-CSDN博客
查看ip地址
ifconfig -a
二.squid的下载和配置
在主机A上部署squid
提示:在root用户上使用
1.先更新apt
在终端输入
apt-get update
等待更新即可
2.下载squid
apt-get install squid
3.配置文件
(1)打开配置文件
1vim /etc/squid/squid.conf
(2)修改默认端口
搜索默认端口(vim在命令模式下输入/+想匹配的字符串即可),修改为3128(书中例子为3128,你可以修改成任意端口)
搜索操作
/ http_port 3128
(3) 设置允许访问服务器的ip段
搜索acl CONNECT method ,在下一行添加
acl lanhome src 10.0.0.0/24
搜索http_access allow localhost,在下一行添加
http_access allow lanhome
(4)
定位到http_access deny all,并替换为
acl localnet src 10.0.2.6/24 http_access allow localnet
其中10.0.2.6是主机B的IP地址
这两行的意思是允许10.0.2.6网络上的所有机器通过该代理服务器来访问Web服务器。
(5)重启squid服务
service squid restart
无回弹信息说明更改成功
三.测试代理服务器
在主机B上测试是否能通过代理连接百度页面
1.配置环境变量
export http_proxy="10.0.2.5:3128"
2.用wget服务获取百度主页信息
wget http:www.baidu.com/index.html
输出为

四出现的错误和解决方法
1.主机B提示连接失败
先是认为主机A的防火墙设置问题,后来按照上文配置文件方式配置完成后,主机B能正常连接
参考文章:ubuntu 14.04中打开squid服务并将本机作为代理服务器_Be The Best!-CSDN博客
浙公网安备 33010602011771号