centos7.6搭建squid代理服务器

1.squid代理的工作原理

客户机想访问163网站时,首先向代理服务器请求web页面,代理服务器首先会查看自己的缓存,如果缓存中有,则直接发送给客户机,如果缓存表中不存在,他会向inter发送请求,当获得返回web页面后,将数据发送给客户端的同时保存在缓存表中,方便下次使用

2.根据实现的不同,代理大概分为两种:

传统代理:
首先必须要有代理客户端,浏览器就可以,需要手工指定代理服务器的IP地址
透明代理:
它是利用Linux网关进行代理服务的,因此只需要设置网关即可,不需要指定代理服务器IP

3.编译要用到的参数

./configure --prefix=/usr/local/squid 		//指定squid服务安装的目录
--sysconfdir=/etc/ 				//单独将配置文件存放到其他目录
--enable-arp-acl 					//可以在规则中设置直接通过客户端mac进行管理,防止客户端使用IP欺骗
--enable-linux-netfilter 				//使用内核过滤
--enable-linux-tproxy 					//支持透明模式
--enable-async-io=100 			//异步I/O,提升存储性能
--enable-err-language="Simplify_Chinese" 			//错误信息显示的语言
--enable-underscore --enable-poll 			//使用poll()模式,提升性能
--enable-undersource					//允许URL中有下划线
--enable-gnuregex 					//使用GNU正则表达式

4.开始配置

部署环境

centos_1 192.168.81.137 squid服务器
centos7_2 192.168.81.137 squid服务器
win_7 192.168.81.136 客户端

1.配置yum源

	wget -O /etc/yum.repos.d/centos.repo https://mirrors.aliyun.com/repo/Centos-7.repo 

sed -i ‘s/$releasever/7/g’ /etc/yum.repos.d/centos.repo

yum clean all

2.安装开发工具

yum -y install gcc-c++

3.编译安装squid
这里我们用的是3.4.6

tar xvf squid-3.4.6.tar.gz

4.编译安装squid

./configure --prefix=/usr/local/squid --sysconfdir=/etc --enable-arp-acl --enable-linux-netfilter --enable-async-io=100 --enable-linux-tproxy --enable-err-language="Simplify_Chinese" --enable-underscore --enable-poll --enable-gnuregex && make && make install

5.优化路径

 ln -s /usr/local/squid/sbin/* /usr/local/sbin/

useradd -M -s /sbin/nologin squid

 chown -R squid.squid /usr/local/squid/var/

6.修改配置文件就,加入以下几列
centos7.6搭建squid代理服务器_第1张图片
7.检测配置文件是否正常
squid -k parse
centos7.6搭建squid代理服务器_第2张图片
8.启动squid
squid
重启squid
squid -k reconfig

9.配置iptables

	iptables -t nat -I PREROUTING  -s 192.168.81.0/24 -p tcp --dport 80 -j REDIRECT --to-ports 3128
iptables -t nat -I PREROUTING  -s 192.168.81.0/24 -p tcp --dport 443 -j REDIRECT --to-ports 3128

10.部署web网页

yum -y install httpd
echo "squid代理服务器" > /var/www/html/index.html

11.客户端指定代理服务器地址
右击网络->属性->internet选项->连接->局域网设置

你可能感兴趣的:(Linux运维)