代理服务器选型-Squid
- 缓存加速
- 缓存频繁访问的网页、图片等静态资源,减少对原始服务器的重复请求,提升响应速度
- 支持HTTP、HTTPS、FTP等协议,通过本地缓存直接响应客户端请求
- 访问控制
- 基于ACL(访问控制列表)实现精细化的权限管理,可按IP地址、时间、域名等条件限制访问
- 支持内容过滤,例如屏蔽特定网站或广告
- 负载均衡与安全
- 作为反向代理时,可分担后端服务器压力,提升Web服务的可靠性和性能
- 隐藏客户端真实IP,增强匿名性和安全性
安装squid
-
通过apt下载squid
sudo apt update sudo apt install squid apache2-utils
-
添加用户名/密码限制访问
sudo htpasswd -c /etc/squid/passwords username # 创建密码文件
如上图密码创建成功
-
编辑配置文件
/etc/squid/squid.conf
sudo vim /etc/squid/squid.conf
加入以下内容,支持用户名和密码认证
# 启用认证 auth_param basic program /usr/lib/squid/basic_ncsa_auth /etc/squid/passwords auth_param basic children 5 auth_param basic realm "Squid Proxy Authentication" auth_param basic credentialsttl 2 hours auth_param basic casesensitive off# 定义认证用户组 acl auth_users proxy_auth REQUIRED# 允许认证用户访问,拒绝其他请求 http_access allow auth_users http_access deny all# 监听端口 http_port 9090
如果不需要用户名密码认证,配置文件改成如下即可
http_access allow all# 监听端口 http_port 9090
-
重启squid
sudo systemctl restart squid
测试代理是否生效
-
使用curl测试通过代理能否访问百度
curl --proxy http://代理服务器地址:端口号 www.baidu.com
如上图显示测试成功
浏览器使用Proxy Switchy Omega3插件,通过代理访问网页
-
安装Proxy Switchy Omega3插件
-
设置http代理
设置完左下角点击应用即可生效
-
通过http代理访问内网网站,如图显示成功访问