文章
技术

2024年如何入门使用I2P网络?如何使用最顶级的匿名手段?

Dreamer  ·  4月2日

阅前注意

我是 Dreamer ,这次我要说的是如何入门,使用I2P,访问I2P网络,使用I2P网络中的电子邮件与IRC服务实现最顶级的匿名手段,这是继编程随想后的在中文互联网上最新最易上手的关于I2P的教程,他的文章太旧了。

看前最好先去我的 github 仓库拿签名去验证一下文章的完整性,确定本文是我本人写的,从本文开始我的所有文章都会被我的PGP密钥签名,未被签名的以我署名的文章均不是我写的。

注意,请以我的PGP密钥为我的唯一身份认证方式,因为 github 作为一个并不是去中心的网站,账户的所有权被窃取了也是存在可能性的。 你可以在这里 获得我的公钥,以下我的公钥指纹,请在导入后确定指纹与此相同,为防止网站恶意篡改我的指纹,你可以去其它平台品葱等平台中比对我被转载的帖子中的指纹。

指纹:057F 2D5E BADE 1A65 FFEF 1B09 58CA B381 5F2D 4A64

大致介绍

I2P(Invisible Internet Project即“隐形互联网计划”),是一项混合授权的匿名网络项目。 I2P网络是由I2P路由器以大蒜路由方式组成的覆盖网络,建立于其上的应用程序可以安全匿名的相互通信。它可以同时使用UDP及TCP协议,支持UPnP映射。其应用包括匿名上网、聊天、搭建暗网服务和文件分享。

更多请看 https://zh.wikipedia.org/zh-cn/I2P

其它的介绍请自行搜随想的I2P的简单扫盲,我总结下来I2P就是一个与TOR类似的网络,它们都是在明网之下的,而其与TOR相比显著的优点有:

1 匿名性更高,可以自定义设置跳转节点,多次弹跳

2 完全分布式,自发组织的开源项目,开发者大多是完全彻底匿名的

3 更多配套的设施(专门为I2P服务的 BitTorrent,IRC,邮件,网站服务)

4 每个人都是节点,为其它人路由(大家一起增加匿名性)

I2P被比喻成大蒜,一块一块散落开来,与 TOR 的洋葱象征不同,洋葱是层层包裹的,只要解开外面的三层就可以知道里面的内容,I2P被许多在大部分国家被设定为非法的网站作为最后栖息地,它们更倾向于在I2P中提供服务

在 进入 I2P 后,同样可以通过使用第三方的出口代理服务或者自己搭建出口代理,像 TOR 一样访问明网。

准备

  • 自己的设备上装有 Linux 操作系统,例 ubuntu,(推荐使用 Qubes os 增强安全性),不使用 windows ,mac os 等非开源桌面操作系统
  • 数额一般的电子钱币
  • 在网络封禁较为严格的地区需要准备翻墙服务

开始

购买 VPS

我们的策略是在一台远程的 VPS 上运行 I2P 相关软件,使用 SSH 端口转发到本地的电脑上,用本地的电脑间接的访问 I2P,所以我们需要先购买一个VPS,VPS 的要求如下。

  • 一个公网IP
  • 内存大于 500MB
  • 每月大于100G的流量(用的多可以加)
  • 运行 linux 发行版
  • 服务商信誉良好,不在言论管控严格地区(例不购买阿里云等在中国提供服务的VPS服务商)

支付手段优先选择加密货币支付。

如果不知道什么是 VPS 请看 https://zh.wikipedia.org/zh-cn/%E8%99%9A%E6%8B%9F%E4%B8%93%E7%94%A8%E6%9C%8D%E5%8A%A1%E5%99%A8

安装 I2P 软件包

在VPS服务商购买成功后,一般会获得 VPS 的 IP 地址和密码,使用 SSH 连接到 VPS ,在一些特定地区如果无法访问可以试试搭配翻墙服务。 以下都是假设 VPS 的系统是 Ubuntu 18.04或更高版本

ssh user@ip_address -p port

其中:

    user:服务端的用户名,这里第一访问填 root 就可以了
    ip_address:服务端的公网IP地址
    port:服务端的SSH端口号,默认是22

例如,要访问IP地址为123.45.67.89,SSH端口号为22的服务,可以使用以下命令:

ssh user@123.45.67.89 -p 22

如果服务端使用了非默认的SSH端口号,则需要在命令中指定端口号。例如,要访问IP地址为123.45.67.89,SSH端口号为2222的服务,可以使用以下命令:

ssh user@123.45.67.89 -p 2222

在连接到 VPS 后,我们需要安装 I2P 软件包,这里使用的是 I2P 项目官方的软件包,其它的衍生的可以自己探索,例 i2pd

apt-add-repository ppa:i2p-maintainers/i2p

apt-get update

apt-get install i2p

这段来源于 https://geti2p.net/zh/download/debian ,也可以使用官方的其它安装方法在 VPS 上安装 I2P 软件包,apt-add-repository 指令没找到,安装下 PPA 就可以了。

接下来我们需要一个用户来运行 I2P,不使用 ROOT 身份运行 I2P

useradd test

这条指令是创建一个名为 test 的用户,你想要什么名字都可以,输入后会让你设置密码等等,密码设置的复杂一些,保证安全。

passwd test

用这个可以设置 test 用户的密码

设置完毕后,输入 exit,ctrl+c 断开 SSH,登陆 test ,密码是你设置的。

ssh test@123.45.67.89 -p 22

启动 I2P

i2prouter start

I2P 已经被启动了,最后一步是使用 SSH 端口转发,让本地的电脑可以访问到 VPS 上的 I2P,I2P 默认的几个端口都是要用的,使用 WIREGUARD 等也是好的主意,以下是这些端口的用处,我提供一个常用的 SSH 端口转发的指令。

一般来说只是用的到 4444,6668,7657 这三个端口,如果你要自己搭建 I2P 网站,也可以去用 7658 端口,7659 和 7660 可以帮助使用 I2P邮件服务

ssh -L 127.0.0.1:7657:localhost:7657 -L 127.0.0.1:4444:localhost:4444 -L 127.0.0.1:7659:localhost:7659 -L 127.0.0.1:7660:localhost:7660 test@123.45.67.89 -p 22
端口 网络接口 描述 传输控制协议/用户数据报协议
4444 127.0.0.1 HTTP 代理 传输控制协议
4445 127.0.0.1 HTTPS 代理 传输控制协议
6668 127.0.0.1 IRC 代理 传输控制协议
7654 127.0.0.1 I2CP 协议 传输控制协议
7656 127.0.0.1 SAM Bridge TCP 传输控制协议
7657 127.0.0.1 路由控制台 传输控制协议
7658 127.0.0.1 I2P 网页 传输控制协议
7659 127.0.0.1 SMTP 代理 传输控制协议
7660 127.0.0.1 POP3 代理 传输控制协议
7652 LAN 接口 UPnP 传输控制协议
7653 LAN 接口 UPnP 用户数据报协议
12345 0.0.0.0 I2NP 协议 传输控制协议 和 用户数据报协议

在输入这个指令后请检查有没有转发成功根据,https://geti2p.net/zh/about/browser-config 配置浏览器的代理,让浏览器的流量全部走 I2P ,请使用开源的浏览器,Firefox ,librewolf,闭源的浏览器很不安全。

配置 I2P

在浏览器的网址栏输入 127.0.0.1:7657 访问 路由控制台,在这里可以操纵你的路由,根据向导一步一步完成,I2P 的中文支持还可以。

推荐你把其中的上传和访问量设置为它的推荐量,这有利于对 I2P 的贡献,和 BitTorrent 有点像,所有人都提供一些流量,可以更好的增强匿名性。

配置完成后,你可以试着访问路由控制台中的几个网址,例 I2P 论坛,I2P邮箱。

高级玩法

  • thuderbird + i2p mail

i2p mail 与 thuderbird 结合,提升邮箱的便利性。

  • irc 服务

i2p irc 服务可以自己搭建也可以使用官方的,即时聊天,只需要使用 irc 客户端,再转发 6668 端口,举一反三。

  • 搭建反贼博客网址

转发 7658 端口,在浏览器访问 127.0.0.1:7658 ,里面有详细的教程

  • 加强浏览器安全性

给浏览器安装 NoScript 等插件,组装成一个小 tor 浏览器。

  • 使用 qubes os 一次性虚拟机,想要了解斯诺登同款的 qubes os 系统参考我的往期回顾

其它

本文首先发布在 2047.one 网站,遵守 CC BY-NC-SA 4.0 署名-非商业性使用- 4.0

转载时请务必署名 Dreamer 057F 2D5E BADE 1A65 FFEF 1B09 58CA B381 5F2D 4A64,也可以额外署名我在2047的主页。

我推荐你转载此教程到其它论坛(红迪品葱什么的,都行),但请把我PGP公钥的指纹带上,反响不错我再写几个 qubes os 教程,首发在2047。

你可以通过向 Dreamer2047@protnmail.com 发送电子邮件,和我讨论相关问题,请使用我的公钥加密文本,我不会通过2047等网站的回复功能回答问题,我生活在瑞典附近,在每天的苏黎世时间 下午2:00 我会回复邮件

往期回顾

  • 高危人士如何在墙内该用什么操作系统保护自己的安全?Qubes-os 介绍 https://web.archive.org/web/20240212070218/https://2047.one/t/21493
  • 安全快速访问 matrix 教程以及进阶操作 Qubes-os 系列教程 https://web.archive.org/web/20231228153526/https://2047.one/t/21363
菜单