1.传统代理

传统代理可以隐藏IP地址 多用于Internet 

在Linux中 默认没有安装squid 所以要安装 在red hat中 还要安装perl 语言包的支持 

squid代理服务器需要两块网卡  首先保证你的流量是从linux服务器上过的 所以先保证做完SNAT可以互相通信

1)配置网络参数


在试验中一块网卡桥到VM2 一块VM3             这里内网eth0 对应 VM2  外网eth1 对应VM3

配置主机名:因为做代理代理服务器的时候 或者干其他事 配置主机名很重要

warning:注意实验过程中客户机以及被访问服务器防火墙关闭或者允许ICMP数据包通过 否则用ping测试可能不通过


2)写iptables防火墙规则并开启路由转发功能

这里需要的SNAT规则是: iptables -t nat -A POSTROUTING -s [内网IP地址] -o [出去的网卡 也就是外网网卡] SNAT --to-source [外网IP地址]  spacer.gif

wKioL1RcziGARnMVAAGOGxQ6ShQ867.jpg

开启路由转发功能:vi /etc/sysctl.conf 修改net.ipv4.ip_forward = 1  并且初始化 sysctl -p


3)验证SNAT

spacer.gifwKiom1RczcOg33owAARV627o-jA348.jpg

第一个Red Hat 是防火墙  2008是服务器 第二个linux是客户机 客户机通过防火墙的规则转发访问到了 服务器


4)这时候安装squid服务器rpm包 这里不详细述


5)配置必要参数(传统代理)

 

http_port 3128

visible_hostname [你的主机名]

reply_body_max_size [你想允许的最大下载量 如:10240000(单位K)] allow all


6)重启squid代理服务器 初始化

或者 squid -z(初始化缓存目录) squid -D(启动squid服务)


7)客户端设置

在局域网lan设置中 spacer.gif

wKioL1RczmqTyBl2AANdO19IxlU275.jpg

在linux中

首选项 高级 网络 中设置

spacer.gifwKioL1RczoLTR41nAANJbmYfZLU368.jpg

如果使用图形化界面liunx 需要手工指定环境变量

vi /etc/profile

HTTP_PROXY=http://[代理服务器IP地址]                  //为HTTP指定代理服务器

HTTPS_PROXY=http://[代理服务器IP地址]                //为HTTPS指定代理服务器 

FTP_PROXY=http://[代理服务器IP地址]                    //for FTP

NO_PROXY=192.168.1.,192.168.2.                             //对两个局域网段不使用代理

export    HTTP_PROXY    HTTPS_PROXY  FTP_PROXY NO_PROXY            //应用


8)tail /var/log/httpd/access_log  查看httpd的访问日志

2,透明代理                   

透明代理多用于局域网 客户端不用手动设置 

1)修改配置文件

spacer.gifwKiom1RczjvCk2g_AACcZgFKajM197.jpg

添加代理服务器的IP地址 


2)设置iptables重定向策略

spacer.gifwKioL1RcztTB2PETAACN4SAQhYY019.jpg


3)验证:清理掉指定的代理服务器 不要手动设置代理 如果刚做完传统代理 就手动去掉

动态查看squid的日志 tail -F /var/log/squid/access.log

spacer.gifwKiom1RcznqDSKi2AACa2IeoaZY722.jpg

新增了一条说明成功。