Contents
  1. 1. 简介
  2. 2. 安装
  3. 3. 配置
  4. 4. 创建用户
    1. 4.1. 使用htpasswd创建
    2. 4.2. 不使用htpasswd创建
    3. 4.3. 修改文件权限
    4. 4.4. 测试用户
  5. 5. 重启服务器

简介

高度匿名代理:使用此种代理时,被访问的网站不知道你的IP地址,也不知道你在使用代理进行访问。

安装

注意: 以下操作均需要管理员权限,请切换root用户或使用sudo

CentOS

1
yum install squid

Ubuntu

1
apt install squid

配置

修改配置文件

1
vim /etc/squid/squid.conf

分别找到以下几条 前面添加#注释掉

1
2
3
4
http_access deny !Safe_ports
http_access deny CONNECT !SSL_ports
http_access allow localhost
http_access deny all

修改端口号(默认3128不安全)

1
http_port 3128

在末尾添加以下几行

1
2
3
4
5
6
7
8
9
# 用户验证设置
auth_param basic program /usr/lib/squid/basic_ncsa_auth /etc/squid/passwd
auth_param basic realm proxy
acl authenticated proxy_auth REQUIRED
http_access allow authenticated
# 设置为高匿模式
request_header_access X-Forwarded-For deny all
request_header_access From deny all
request_header_access Via deny all

创建用户

使用htpasswd创建

1
htpasswd -c -d /etc/squid/passwd [用户名]

然后会让你输入两次密码,密码需要大于8位

不使用htpasswd创建

没有Apache的也可以使用在线工具创建,搜索“在线htpasswd”,将生成结果保存到 /etc/squid/passwd

修改文件权限

1
chmod 644  /etc/squid/passwd

测试用户

1
/usr/lib/squid/basic_ncsa_auth /etc/squid/passwd

然后输入[用户名] 空格 [密码],会返回是否测试通过

ctrl + c退出

注意,最近发现部分CentOS系统的路径如下

1
/usr/lib64/

相应的测试要换成

1
/usr/lib64/squid/basic_ncsa_auth /etc/squid/passwd

配置文件里的用户验证设置也要相应的修改为 /usr/lib64/

1
2
# 用户验证设置
auth_param basic program /usr/lib64/squid/basic_ncsa_auth /etc/squid/passwd

重启服务器

1
systemctl restart squid

如果启用了UFW管理防火墙,需要添加

1
2
3
ufw allow 'Squid'
# 如果修改了默认端口号:
ufw allow [前面设置的http_port端口号]
Contents
  1. 1. 简介
  2. 2. 安装
  3. 3. 配置
  4. 4. 创建用户
    1. 4.1. 使用htpasswd创建
    2. 4.2. 不使用htpasswd创建
    3. 4.3. 修改文件权限
    4. 4.4. 测试用户
  5. 5. 重启服务器