使用 Raspbery Pi 隐藏 HTTP 目标

使用 Raspbery Pi 隐藏 HTTP 目标

我想在我的 Raspberry Pi 上实现某种 Web 服务器或代理,以便向任何防火墙隐藏真实的 http 请求。以下场景:

computer@school --请求--> myRPi --请求--> 目的地响应:computer@school <--结果-- myRPi <--结果-- 目的地

但由于 computer@school 的视野受限:

computer@school --> myRPi
响应:computer@school <-- myRPi

有没有办法可以在不使用 SSH 或 VPN 服务的情况下实现这一点?

答案1

我已经有一段时间没有这样做了,但是有一个名为 stunnel 的程序。

它有一个配置文件,您可以在其中指定一个输入端口(接受连接)和一个输出端口(连接到)。

它有一个客户端模式和一个服务器模式。

客户端模式(A)下的 openssl 服务器接受来自客户端程序(例如发出代理请求的 Web 浏览器)的连接,它将使用 ssl 对其进行加密,并可位于您的学校计算机上。

服务器模式 (B) 下的 openssl 服务器将位于 Raspberry Pi 所在的位置,也就是代理服务器所在的位置。它将接受来自学校计算机上的 openssl 服务器的连接,然后连接到它所在的代理,即 Raspberry Pi 上的代理。

因此,而不是..

学校到 PI http 代理到目的地

你会

学校公司网络客户端向学校公司 openssl 服务器发出 http 代理请求,向 pi 公司 openssl 服务器发出 http 代理请求,向 pi 公司 http 代理请求,向目标公司 http 服务器发出 http 代理请求。

并且它将被加密。

至于配置 stunnel,已经有一段时间了,但主要部分是配置文件中的 3 行,例如

如果是为了保护 POP 并且您需要 SSL 客户端和 SSL 服务器,则会出现这种情况。(某些 stunnel 用途只需要一个 openssl 客户端,例如您的客户端程序不支持 ssl,需要连接到支持 ssl 的服务器),而某些 stunnel 用途只需要一个服务器,例如您的服务器程序不支持 ssl,而您希望它支持。对于您的使用,您需要客户端模式 openssl 服务器和服务器模式 openssl 服务器

请原谅这个例子(它使用 pop3 和 pop3 端口)但它只是为了说明原理。

这个文件名为 stunnel.conf 或类似名称

; Example SSL server mode services

;[pop3s]
;client = no  <-- default
;accept  = 995
;connect = 110

; Example SSL client mode services

;[gmail-pop3]
;client = yes
;accept = 127.0.0.1:110
;connect = pop.gmail.com:995

该原理可应用于http代理。

相关内容