Cómo crear un eepiste con i2pd y apache2 en linux

Publicado por Neo el 01/01/2020

Obviamente lo primero que tenemos que hacer es tener correctamente configurado un router i2pd.

Después debemos tener instalado el servidor web Apache2.

En Debian y derivados sería algo tan sencillo como:

sudo apt install apache2

En Archlinux y derivadas:

sudo pacman -S apache2

Una vez instalado apache2 correctamente pasamos a la configuración del i2pd para que cree un tunel hacia nuestro eepsite. Para ello tenemos que añadir al final del archivo tunnels.conf el siguiente texto:

[neoniet.i2p]
type = http
host = neoniet.i2p
port = 80
keys = neoniet.i2p.dat

Donde:

[neoniet.i2p] indica el nombre que tendrá el tunel.

type = http indica el tipo de tunel, como se trata de una página web, en nuestro caso http.

host = neoniet.i2p el nombre del host en el que está alojada nuestra web. En mi caso en mi intranet tengo un host que aloja el blog con el nombre de neoniet.i2p, pero supongo que la mayoría de las veces instalarás el servidor web en el mismo ordenador en el que tengas instalado el router i2pd, en esos cosos deberás poner 127.0.0.1 o localhost.

port = 80 el puerto en el que está escuhando tu servidor apache.

keys = neoniet.i2p.dat el archivo que contendrá las claves del tunel para ser encontrado en la red i2p.

Una vez editado el archivo tunnels.conf toca reiniciar el servidor i2pd en sistemas que usen systemd tan sencillo como:

sudo systemctl restart i2pd

Tras reiniciar se habría creado el tunel y podríamos ver la dirección asignada en la consola web del router, pinchando en el apartado Tunnels. Se vería algo así:

neoniet.i2p ⇒ jf32pdnofckjvedni77vjt26m6opzzz6ocpkpxof4fptzym56raq.b32.i2p:80

Esa sería la dirección de nuestro eppsite. Si queremos ponerle un nombre de dominio más amigable podemos registrar nuestra dirección i2p en inr.i2p.

Ahora toca configurar apache2. Si hubiéramos instalado apache2 únicamente para servir nuestro eepsite bastaría con poner todo nuestro código del eppsite dentro de /var/www/html o en la carpeta que indicase la directiva DocumentRoot de archivo de configuración /etc/apache2/sites-enabled/000-default.conf y ya tendríamos nuestro eepiste listo.

Opss pero resulta que tienes más de una página web alojada en tu apache2 y quieres usar VirtualHost... en el siguiente post ;-)