在 Raspberry Pi OS 上设置代理服务器

Jinku Hu 2023年1月30日
  1. 在 Raspberry Pi 上安装 Privoxy Web 代理软件
  2. 在 Raspberry Pi 上配置 Privoxy Web 代理软件
  3. 将 Firefox 浏览器配置为用户 Raspberry Pi 作为代理
在 Raspberry Pi OS 上设置代理服务器

本文将介绍几种在你的树莓派上设置代理服务器的方法。

在 Raspberry Pi 上安装 Privoxy Web 代理软件

代理服务器是访问 Web 服务或为其提供服务的常用工具。

在这种情况下,我们专注于转发代理,客户端可以使用它来增强安全性或限制来自网关的传出流量。我们提出的方案是将 Raspberry Pi 设置为代理服务器,并将来自其他客户端的流量转发给它。

该解决方案使用 Privoxy 软件,该软件为广告拦截和其他高级功能提供过滤功能。请注意,Privoxy 没有缓存功能,因此必须提供附加软件。

Privoxy 通常可在 Raspberry Pi OS 默认存储库上下载。你可以运行以下命令来安装它或以其他方式确认它是否已安装在你的 Raspberry Pi 设备上:

sudo apt install privoxy

在 Raspberry Pi 上配置 Privoxy Web 代理软件

此时,如果安装成功,应该使用默认配置设置 Privoxy 并在 localhost:8118 端口上运行。请注意,此配置仅足以在同一客户端计算机上使用过滤代理功能。

但是,如果我们将 Raspberry Pi 上的代理服务器提供给其他客户端计算机,那么 Privoxy 应该正在侦听外部端口。后者需要通过编辑 /etc/privoxy/config 文件进行配置。

Privoxy 配置文件需要使用 sudo 权限进行编辑,但你可以使用你最熟悉的任何文本编辑器。在以下示例命令中,我们将使用 vim 文本编辑器:

sudo vim /etc/privoxy/config

打开配置文件后,搜索包含 listen-address 127.0.0.1:8118 的行。

请注意,Privoxy 配置文件包含相当大的注释,因此最好搜索特定的关键字。上述行应更改如下:

listen-address :8118

在后台运行的 Privoxy 服务应该会自动生效。你还可以使用另外一篇文章中描述的 nmap 软件检查外部开放端口。

如果由于某种原因,Privoxy 没有监听外部 8118 端口,你可以使用以下命令重新启动服务以强制更新配置:

sudo systemctl restart privoxy.service

将 Firefox 浏览器配置为用户 Raspberry Pi 作为代理

现在,我们继续进行客户端配置,这可以在你希望使用 Pi 上的代理服务器设置访问 Web 的任何客户端计算机上完成。

在这种情况下,我们只在 Firefox 浏览器上显示客户端设置,这允许我们使用代理而不设置系统范围的代理。在 Firefox 的地址栏中输入 about:preferences 并导航到 Network Settings 部分。

然后,单击设置按钮以查看代理配置选项。选择手动代理配置并在 HTTP 代理框中指定 Pi 的 IP 地址。指定端口号 8118 并标记复选框 Also use this proxy for HTTPS

接下来,使用 Raspberry Pi 上的代理服务器访问 Web 服务。要验证这一点,请在地址栏中输入以下地址,然后按 Enter:

http://config.privoxy.org/show-status

它应该显示一个以 Privoxy 版本和运行它的主机名、IP 地址和端口号开头的网页。

如果此步骤导致页面显示未使用 Privoxy,请检查防火墙等其他服务是否会干扰。如果是这样,请允许在 Pi 上运行的防火墙将流量从特定客户端 IP 地址传递到给定的服务端口。

作者: Jinku Hu
Jinku Hu avatar Jinku Hu avatar

DelftStack.com 创始人。Jinku 在机器人和汽车行业工作了8多年。他在自动测试、远程测试及从耐久性测试中创建报告时磨练了自己的编程技能。他拥有电气/电子工程背景,但他也扩展了自己的兴趣到嵌入式电子、嵌入式编程以及前端和后端编程。

LinkedIn Facebook

相关文章 - Raspberry Pi