大蒜和洋葱托管:如何筹集网络资源,以使域名不被抢走





免责声明:此处描述的工具是完全合法的。这就像一把刀:有人将白菜切成沙拉,有人用它来攻击。因此,该帖子专门讨论可用于好的和坏的工具。



全球DNS是一件幸存了数十年的美好事物。但这是一个根本性的问题-如果您的域突然决定您违反了某些内容,则可以将您的域简单地拆分。否则,有钱和人脉的人会对你怀恨在心。每个人都记得同一torrents.ru的历史。如果出于某种原因您希望消除此类风险,则可以考虑使用完全没有监管机构来划分域名的覆盖网络。因此,我们将筹集洋葱和i2p网络资源。



洋葱圈



让我们从经典开始。我认为在哈布雷(Habré)上几乎每个人都以Tor浏览器捆绑包的形式使用Tor 。在寻找Telegram的过程中,他们突然开始突然中断与最意外地方中最大的主机的连接,这对我很有帮助。在这种模式下,Tor使用经典的洋葱加密技术,逐层包装数据,从而无法确定数据包的源和目的地。尽管如此,路由的终点仍然是常规Internet,我们最终通过Exit节点到达Internet。



此解决方案有几个问题:



  1. Exit- , , . , , , .
  2. tor , .


-



因此,我们将直接在网络中增加洋葱资源,而无需访问常规Internet。例如,作为资源的附加备份入口点。假设您已经有一个Web服务器,其中包含由nginx提供的某些内容。对于初学者,如果您不想在公共Internet上使用,请不要太懒惰以使用iptables并配置防火墙。必须禁止从本地主机以外的任何地方访问Web服务器。结果,您在本地主机上可以访问一个站点:8080 /。https的额外固定在这里将是多余的,因为tor传输将接管此任务。



扩展TOR



我将以Ubuntu为例进行安装,但与其他发行版之间没有根本差异。首先,让我们定义存储库。官方文档不建议使用由发行版本身维护的软件包,因为它们可能包含已由开发人员上游修补的严重漏洞。此外,开发人员建议使用无人值守升级机制进行自动更新,以确保及时交付。



为其他存储库创建文件:



# nano /etc/apt/sources.list.d/tor.list


并在其中添加必要的地址:



deb https://deb.torproject.org/torproject.org bionic main
deb-src https://deb.torproject.org/torproject.org bionic main


现在,我们需要注意gpg密钥,否则,服务器将无法合理地信任新软件包。



# curl https://deb.torproject.org/torproject.org A3C4F0F979CAA22CDBA8F512EE8CBC9E886DDD89.asc | gpg --import
# gpg --export A3C4F0F979CAA22CDBA8F512EE8CBC9E886DDD89 | apt-key add -


现在,您可以从上游安装主包和钥匙串以自动更新签名。



# apt update
# apt install tor deb.torproject.org-keyring


配置代理



在/ etc / tor / torrrc中,您将找到守护程序的配置文件。更新后,不要忘记重新启动它。

只想警告特别好奇的用户。不要在家用计算机上启用中继模式!特别是在出口节点模式下。他们会敲门。在VPS上,我也不会将节点配置为中继,因为这会给处理器和流量造成相当大的负担。在较宽的频道上,您每月可以轻松达到2-3 TB。



在torrc中找到如下部分:



############### This section is just for location-hidden services ###


在这里,您需要注册您的本地主机Web资源。或多或少像这样:



HiddenServiceDir /Library/Tor/var/lib/tor/hidden_service/
HiddenServicePort 80 127.0.0.1:8080


或者您可以使用unix套接字:



HiddenServiceDir /Library/Tor/var/lib/tor/hidden_service/
HiddenServicePort 80 unix:/path/to/socket


我们得到地址



就是这样,现在我们通过systemctl重新启动tor守护程序,并查看HiddenServiceDir。将有几个文件-私钥和您的洋葱主机名。它是一个随机的16个字符的标识符。例如,gjobqjj7wyczbqie.onion是Candle搜索资源的地址。该地址是完全随机的,但是通过足够长的搜索,可以从该地址和私钥生成人类可读的对。当然,并非所有16个字符都需要数十亿年的时间。例如,著名的Flibusta书籍目录中有一个镜像flibustahezeous3.onion,而Facebook花了很多资源从生成的选项中选择最引人入胜的:facebookcorewwwi.onion



就是这样,一段时间后,您的资源将被宣布并将在全球范围内可用。请注意,您不仅可以代理http协议,还可以代理任何其他协议。



大蒜



图片

第二种选择被认为本质上更加偏执。i2p项目最初并不是将流量代理到常规Internet的方式,它的体系结构是完全封闭的覆盖网络。在两个方向上都有单独的门,但这是一个例外。这可能是不安全的。



图片

红色参考i2p徽标和洋红色i2pd实现



I2p具有用于实现软件路由器节点的多个选项。官方实现是用Java编写的。而且就RAM和CPU而言,它极大地吞噬了所有可用资源。尽管如此,还是她被视为参考并受到定期审核。我建议您使用以C ++编写的轻得多的版本i2pd。它有自己的细微差别,可能会导致某些i2p应用程序失败,但是总的来说,它是一个很好的替代实现。该项目目前正在积极进行中。



安装恶魔



最好的部分是作者提供了许多部署选项,包括docker和snap。您可以采用传统存储库的方式。



sudo add-apt-repository ppa:purplei2p/i2pd
sudo apt-get update
sudo apt-get install i2pd


但我建议使用snap。它不仅可以快速方便地部署守护程序,还可以根据所选的分发渠道直接从上游提供自动更新。



no_face@i2pd:~$ snap info i2pd
name:      i2pd
summary:   Distributed anonymous networking framework
publisher: Darknet Villain (supervillain)
store-url: https://snapcraft.io/i2pd
license:   BSD-3-Clause
description: |
  i2pd (I2P Daemon) is a full-featured C++ implementation of I2P client.
  I2P (Invisible Internet Protocol) is a universal anonymous network layer.
  All communications over I2P are anonymous and end-to-end encrypted,
  participants don't reveal their real IP addresses.
snap-id: clap1qoxuw4OdjJHVqEeHEqBBgIvwOTv
channels:
  latest/stable:    2.32.1 2020-06-02 (62) 16MB -
  latest/candidate: ↑
  latest/beta:      ↑
  latest/edge:      2.32.1 2020-06-02 (62) 16MB -


如果尚未安装,请安装snap并设置默认的稳定选项:



apt install snapd
snap install i2pd


配置中



与Web-gui Java版本不同,i2pd没有太多设置,曲折和制表符。禁欲主义之前只有最必要的事情。但是,最简单的方法是直接在配置文件中进行配置。



为了使您的Web资源在i2p中可用,您需要以与洋葱相同的方式代理它。为此,请转至〜/ .i2pd / tunnels.conf并添加您的后端。



[anon-website]
type = http
host = 127.0.0.1
port = 8080
keys = anon-website.dat


重新启动守护程序后,您将获得一个随机的32位地址。可以在Web控制台中查看它,默认情况下可用127.0.0.1:7070 /?Page = i2p_tunnels。如有必要,不要忘记允许从您的IP地址访问它。默认情况下,它仅在本地接口上可用。会有一些可怕的内容,例如ukeu3k5oycgaauneqgtnvselmt4yemvoilkln7jpvamvfx7dnkdq.b32.i2p。



i2p网络具有类似DNS的外观,但更像是/ etc / hosts的分散列表。您订阅了控制台中的特定资源,这些资源告诉您如何进入条件flibusta.i2p因此,有必要在诸如inr.i2p之类的大型资源中添加一个或多或少的漂亮名称。



是否可以与我们一起部署i2p和onion?



只想警告RuVDS而不是防弹托管。如果对我们的客户有积极的投诉,我们可以终止合同并关闭虚拟机。大多数托管服务商会这样做。但是,由于tor体系结构(尤其是i2p)的特殊性,要确定网站的确切托管位置非常困难,而且通常根本不可能。



尽管如此,使用此类工具并没有违法行为。因此,我们不介意您是否在覆盖网络中打开合法Web资源的镜像。无论如何,我强烈建议您不要在家用计算机上盲目尝试Tor。IP可能会被列入黑名单,或者pative会到达。更好地租用VPS,价格便宜。






All Articles