ubuntu配置透明代理
时间: 2023-07-04 20:10:29 浏览: 420
在 Ubuntu 上配置透明代理的步骤如下:
1. 安装 Squid 代理服务器,可以使用以下命令进行安装:
```
sudo apt-get update
sudo apt-get install squid
```
2. 配置 Squid 代理服务器,需要编辑 Squid 配置文件 `/etc/squid/squid.conf`,将以下内容添加到文件末尾:
```
http_port 3128 intercept
https_port 3129 intercept ssl-bump generate-host-certificates=on dynamic_cert_mem_cache_size=4MB cert=/etc/squid/ssl_cert/myCA.pem
ssl_bump server-first all
sslproxy_cert_error allow all
sslproxy_flags DONT_VERIFY_PEER
```
这里将 Squid 的 HTTP 端口设置为 3128,HTTPS 端口设置为 3129,并设置为拦截模式(intercept)。
3. 配置 iptables 规则,将请求流量重定向到 Squid 代理服务器。可以使用以下命令进行配置:
```
sudo iptables -t nat -A PREROUTING -p tcp --dport 80 -j REDIRECT --to-port 3128
sudo iptables -t nat -A PREROUTING -p tcp --dport 443 -j REDIRECT --to-port 3129
```
4. 保存 iptables 规则,可以使用以下命令进行保存:
```
sudo sh -c "iptables-save > /etc/iptables.rules"
```
5. 配置系统开机自启动,可以使用以下命令进行配置:
```
sudo apt-get install iptables-persistent
```
安装 iptables-persistent 后会提示你是否保存当前的 iptables 规则,选择 Yes 即可。之后,系统会自动将 iptables 规则保存到 `/etc/iptables/rules.v4` 文件中,实现系统开机自启动。
6. 重启 Squid 代理服务器,可以使用以下命令进行重启:
```
sudo service squid restart
```
配置完成后,所有的网络请求流量都会被重定向到 Squid 代理服务器,实现透明代理的功能。
阅读全文