我生活在一个很难访问免费互联网的国家。许多网站都经过过滤,解析主机名的速度很慢,打开网站需要时间,而且你会感觉到中间的服务器在路由你的数据包往返互联网时有多慢。
在这些日常困难中,我在一个自由的国家获得了一个专属于我的 VPS。每个流行的解决方案,如 OpenVPN,都受到政府的控制。他们甚至会降低安全(https、ssh 等)连接的速度,以降低人们使用它们的风险。
在这种情况下,我决定使用自定义隧道解决方案来克服所有这些障碍。为此,我似乎需要一些编程。这些材料应该关注:
- 在本地主机上设置代理服务器,以收集所有程序的所有请求并通过隧道导航它们。我对此一无所知。我使用 Linux(Ubuntu),但我不知道在这种环境中如何实现。如果必须编写代码,我更喜欢 GoLang,因为它是一种比 C 之类的更高级的编程语言。即读即用的解决方案/库也是一个不错的选择。
- 设计一个与远程服务器(VPS)通信的协议。双方都应该进行一些编码。
- 远程服务器应该在自由世界中传播请求并收集响应并将其传递给客户端(我的电脑)。
- 响应应该传达给已将请求发送到本地代理服务器的程序。
显然,本地代理服务器应该对收到的请求进行加密,使它们在政府看来是垃圾,并解读程序的响应。
我对网络基础知识不太熟悉,但了解一点。有什么想法或现成的解决方案吗?