什么是 squid
Squid是一个高性能的代理缓存服务器,Squid支持FTP、gopher、HTTPS和HTTP协议。和一般的代理缓存软件不同,Squid用一个单独的、非模块化的、I/O驱动的进程来处理所有的客户端请求
相关版本
cat /etc/redhat-release 操作系统 : CentOS Linux release 7.4.1708 yum info squid squid : 3.5.20
代理服务器相关配置
squid 安装
yum install -y squid
启动 squid 服务
systemctl start squid
修改配置文件,设置需要代理的 ip
vim /etc/squid/squid.conf
[root@aaron ~]# vim /etc/squid/squid.conf acl localnet src 192.168.0.1/16 #配置运行访问代理服务器的源 http_port 3128 #设置代理服务器监听端口,默认3128,建议修改,如果启用了防火墙需要开放监听端口的安全策略。
查看服务运行状态
netstat -tnpl |grep 3128
tcp6 0 0 :::3128 ::😗 LISTEN 4046/(squid-1)
systemctl status squid
[root@server002 ~]# systemctl status squid ● squid.service - Squid caching proxy Loaded: loaded (/usr/lib/systemd/system/squid.service; disabled; vendor preset: disabled) Active: active (running) since Thu 2022-06-23 14:04:16 CST; 3 days ago Process: 4032 ExecStop=/usr/sbin/squid -k shutdown -f $SQUID_CONF (code=exited, status=0/SUCCESS) Process: 4042 ExecStart=/usr/sbin/squid $SQUID_OPTS -f $SQUID_CONF (code=exited, status=0/SUCCESS) Process: 4036 ExecStartPre=/usr/libexec/squid/cache_swap.sh (code=exited, status=0/SUCCESS) Main PID: 4044 (squid) Tasks: 3 Memory: 13.8M CGroup: /system.slice/squid.service ├─4044 /usr/sbin/squid -f /etc/squid/squid.conf ├─4046 (squid-1) -f /etc/squid/squid.conf └─4047 (logfile-daemon) /var/log/squid/access.log Jun 23 14:04:16 server002 systemd[1]: Starting Squid caching proxy… Jun 23 14:04:16 server002 squid[4044]: Squid Parent: will start 1 kids Jun 23 14:04:16 server002 systemd[1]: Started Squid caching proxy. Jun 23 14:04:16 server002 squid[4044]: Squid Parent: (squid-1) process 4046 started
客户端的使用
软件自带代理功能
像 Apipost 这类软件自带设置代理的功能,在设置中配置即可。
【mac】网络偏好设置
这种方式会使你的浏览器访问的请求,通过代理服务器访问。但是有个问题,比如开发的程序需要通过请求 https://test.com,这种方式就不支持了。我个人感觉是跟代理的作用域有关,有懂的大佬可以留言说明一下,我这边使用 proxifier 实现了该需求。
全局代理,指定应用程序走代理
使用 proxifier。附一个下载链接 proxifier 验证过,确实可以使本地程序走指定的代理服务器,并且可以设置规则,全局代理或者指定某个或某几个应用程序走代理。
window 和 Linux ,后续验证后补充。。。
|