squid-正向代理

参考

似乎私有 IP 可以随意分配, 是自己可控的. 只有公网 IP 才是由别人分配的.

三个上网的条件:

  • IP
  • Gateway
  • DNS

内网中的主机若是想用一台外网的具有公网 IP 的主机作为正向代理服务器, 需要先搭 VPN 实现内网穿透.

配置网卡

Ubuntu 的路径为 /etc/netplan/ 目录下, docker 容器中无此路径.

CentOS 的路径为 /etc/sysconfig/network-scripts/ 目录下.

需要测试是否能够上网, 代理服务器是需要连网的.

安装 squid

Ubuntu 下可直接:

1
$ apt-get install squid

配置

配置文件位于 /etc/squid/squid.conf.

重启服务 systemctl restart squid.

配置文件

参考

Ubuntu 中位于 1188 行.

配置文件中命令 acl 的含义是 Access Control List. 其用来在服务器端设定特定的上网策略, 哪些用户能上网, 能访问什么网站, 能下载什么文件等等对用户的上网行为进行约束和管理.

ACL 由多个策略规则组成, 它可以根据指定的策略规则来允许或限制访问请求, 匹配顺序由上至下. 一旦形成匹配, 则立即执行相应操作并结束匹配过程.

示例

可以用 acl 创建变量:

1
acl allow_user src 192.168.10.1-192.168.10.50

这里命名了一个 allow_user 的变量, 地址范围为 192.168.10.1-192.168.10.50.

访问控制:

1
2
http_access allow allow_user
http_access deny all

允许 allow_user 规定的用户进行 http 访问, 拒绝其他链接的访问.

配置客户端的正向代理

不同客户端的配置不同.

通过 netstat -ntpl 查看 squid 开启的默认端口, 也可通过查看其配置文件.

通用配置, 指定内网网卡的地址, 以及 squid 的端口.

Squid 访问控制

用 docker 和 squid 搭建正向代理

需要开放 3128 端口.


squid-正向代理
http://example.com/2022/10/16/squid-正向代理/
作者
Jie
发布于
2022年10月16日
许可协议