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地址]  

squid代理服务器(捎带的SNAT)_防火墙

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


3)验证SNAT

squid代理服务器(捎带的SNAT)_防火墙_02

第一个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设置中 

squid代理服务器(捎带的SNAT)_防火墙_03

在linux中

首选项 高级 网络 中设置

squid代理服务器(捎带的SNAT)_防火墙_04

如果使用图形化界面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)修改配置文件

squid代理服务器(捎带的SNAT)_防火墙_05

添加代理服务器的IP地址 


2)设置iptables重定向策略

squid代理服务器(捎带的SNAT)_squid_06


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

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

squid代理服务器(捎带的SNAT)_代理服务器_07

新增了一条说明成功。