教你如何在5分钟轻松部署squid正向代理

       正向代理是一个位于客户端和原始服务器(origin server)之间的服务器,为了从原始服务器取得内容,客户端向代理发送一个请求并指定目标(原始服务器),而后代理向原始服务器转交请求并将得到的内容返回给客户端,客户端才能使用正向代理。vim

       正向代理的典型用途是为在防火墙内的局域网客户端提供访问Internet的途径。正向代理还可使用缓冲特性(由mod_cache提供)减小网络使用率。正向代理容许客户端经过它访问任意网站而且隐藏客户端自身,所以你必须采起安全措施以确保仅为通过受权的客户端提供服务。和反向代理不一样之处在于,典型的正向代理是一种最终用户知道并主动使用的代理方式。       浏览器

       借用知乎两张图来解释正向代理:https://www.zhihu.com/question/24723688
缓存


微信图片_20191203091314.jpg


微信图片_20191203091322.jpg


做用安全

  • 访问原来没法访问的资源,如google服务器

  • 作缓存,加速访问资源微信

  • 对客户端访问受权,上网进行认证网络

  • 代理能够记录用户访问记录(上网行为管理),对外隐藏用户信息app


普通代理dom

普通代理:代替局域网内的全部主机访问公网的网站服务,局域网内的主机须要在本身的浏览器中指定代理服务器的ip地址和监听的端口号
安装软件包squidtcp

[root@ECS58979490c134 ~]# yum -y install squid

编辑主配置文件/etc/squid/squid.conf

[root@ECS58979490c134 ~]# vim  /etc/squid/squid.conf

http_port 3128       //squid默认监听的端口号

cache_mem  8MB      //默认缓存容量8MB    

cache_dir  ufs  /var/spool/squid  100  16  256   //设置缓存目录的大小,缓存文件的格式,大小100M,一级子目录16个,每一个一级子目录下有256个二级子目录

access_log /var/log/squid/access.log  squid  //访问日志文件,默认开启

visible_hostname   proxy.eflycloud.com  //默认用环回口的主机名做为代理服务器的主机名。手动指定主机名时必须与物理接口绑定

maximum_object_size  //容许缓存数据的最大值。不设置时,不限制

reply_body_max_size   //容许经过代理服务器访问的最大目标对象

http_access allow all    //默认拒绝全部主机
[root@ECS58979490c134 ~]# cat /etc/hosts127.0.0.1        localhost.localdomain localhost::1             localhost6.localdomain6 localhost6192.168.1.254   proxy.eflycloud.com proxy  //物理接口绑定主机名

启动服务


[root@ECS58979490c134 ~]# service squid start
init_cache_dir /var/spool/squid... Starting squid: .[  OK  ]
[root@ECS58979490c134 ~]# netstat -anptu | grep :3128
Tcp  0  0 0.0.0.0:3128        0.0.0.0:*        LISTEN      10439/(squid)


客户端浏览器中设置代理服务器

微信图片_20191203102237.jpg


透明代理

透明代理:客户端不须要在本机的浏览器里指定代理服务器的IP地址和监听的端口号,给客户端的感受是直接与公网通信的。不过客户端须要指定或者添加透明代理服务器为网关。

配置透明代理服务器

[root@ECS58979490c134 ~]# vim /etc/squid/squid.conf
http_port  3128  transparent   //透明传输
[root@ECS58979490c134 ~]#service squid restart


写防火墙规则,把访问目标端口是80的请求转到3128端口。若是不指定端口则是所有请求都会转到3128端口


[root@ECS58979490c134 ~]# service iptables start     //开启防火墙服务
[root@ECS58979490c134 ~]#setup[root@ECS58979490c134 ~]# iptables  -t  filter  -F   //清空表filter防火墙规则
[root@ECS58979490c134 ~]# iptables  -t  nat   -F   //清空表nat防火墙规则
[root@ECS58979490c134 ~]# iptables -t nat  -A PREROUTING -i eth0 -s 192.168.1.0/24 -p tcp --dport 80 -j REDIRECT --to-ports 3128  //PREROUTING 在路由以前,-i 数据包从哪一个口进来,-s 源IP地址, –p 协议, –dport 目标端口, --to-ports 转到哪一个端口
[root@ECS58979490c134 ~]# service iptables save    //永久生效


客户端将网关指向代理服务器的内网接口的ip地址


[root@ECS58979490c164 ~]# route add default gw 192.168.1.254

睿江云官网连接:https://www.eflycloud.com/home?from=RJ0035

相关文章
相关标签/搜索