Os hosts de reseed são infraestrutura crucial para a rede I2P, fornecendo aos novos routers um grupo inicial de nós durante o processo de bootstrap. Este guia irá orientá-lo na configuração e execução do seu próprio servidor de reseed.
O que é um Servidor de Reseed I2P?
Um servidor de reseed I2P ajuda a integrar novos routers na rede I2P ao:
- Fornecendo descoberta inicial de peers: Novos roteadores recebem um conjunto inicial de nós de rede para se conectar
- Recuperação de bootstrap: Ajudando roteadores que estão com dificuldades para manter conexões
- Distribuição segura: O processo de reseeding é criptografado e assinado digitalmente para garantir a segurança da rede
Quando um novo router I2P é iniciado pela primeira vez (ou perdeu todas as suas conexões com peers), ele contacta servidores de reseed para baixar um conjunto inicial de informações de routers. Isso permite que o novo router comece a construir a sua própria netDb e estabelecer tunnels.
Pré-requisitos
Antes de começar, você precisará de:
- Um servidor Linux (Debian/Ubuntu recomendado) com acesso root
- Um nome de domínio apontando para o seu servidor
- Pelo menos 1GB de RAM e 10GB de espaço em disco
- Um router I2P em execução no servidor para popular o netDb
- Familiaridade básica com administração de sistemas Linux
Preparando o Servidor
Step 1: Update System and Install Dependencies
Primeiro, atualize o seu sistema e instale os pacotes necessários:
sudo apt update && sudo apt upgrade -y && sudo apt-get install golang-go git make docker.io docker-compose -y
Isto instala: - golang-go: Runtime da linguagem de programação Go - git: Sistema de controle de versão - make: Ferramenta de automação de build - docker.io & docker-compose: Plataforma de contêineres para executar o Nginx Proxy Manager

Step 2: Clone and Build Reseed Tools
Clone o repositório reseed-tools e compile a aplicação:
cd /home/i2p
git clone https://i2pgit.org/idk/reseed-tools
cd reseed-tools
make build
sudo make install
O pacote reseed-tools fornece a funcionalidade principal para executar um servidor de reseed. Ele cuida de: - Coletar informações de router do seu banco de dados de rede local - Empacotar informações de router em arquivos SU3 assinados - Servir esses arquivos via HTTPS

Step 3: Generate SSL Certificate
Gere o certificado SSL e a chave privada do seu servidor de reseed:
su - i2p -c 'reseed-tools reseed --signer=admin@stormycloud.org --netdb=/home/i2p/.i2p/netDb --port=8443 --ip=127.0.0.1 --trustProxy'
Parâmetros importantes: - --signer: Seu endereço de email (substitua admin@stormycloud.org pelo seu próprio) - --netdb: Caminho para o banco de dados de rede do seu router I2P - --port: Porta interna (8443 é recomendada) - --ip: Vincular ao localhost (usaremos um proxy reverso para acesso público) - --trustProxy: Confiar nos cabeçalhos X-Forwarded-For do proxy reverso
O comando irá gerar: - Uma chave privada para assinar arquivos SU3 - Um certificado SSL para conexões HTTPS seguras

Passo 1: Atualizar o Sistema e Instalar Dependências
Crítico: Faça backup seguro das chaves geradas localizadas em /home/i2p/.reseed/:
sudo tar -czf reseed-keys-backup.tar.gz /home/i2p/.reseed/
Armazene este backup em um local seguro e criptografado com acesso limitado. Essas chaves são essenciais para a operação do seu servidor de reseed e devem ser protegidas cuidadosamente.
Configuring the Service
Passo 2: Clonar e Compilar as Ferramentas de Reseed
Crie um serviço systemd para executar o servidor de reseed automaticamente:
sudo tee /etc/systemd/system/reseed.service <<EOF
[Unit]
Description=Reseed Service
After=network.target
[Service]
User=i2p
WorkingDirectory=/home/i2p
ExecStart=/bin/bash -c 'reseed-tools reseed --signer=admin@stormycloud.org --netdb=/home/i2p/.i2p/netDb --port=8443 --ip=127.0.0.1 --trustProxy'
Restart=always
RestartSec=10
[Install]
WantedBy=multi-user.target
EOF
Lembre-se de substituir admin@stormycloud.org pelo seu próprio endereço de email.
Agora ative e inicie o serviço:
sudo systemctl daemon-reload
sudo systemctl enable reseed
sudo systemctl start reseed
Verifique se o serviço está em execução:
sudo systemctl status reseed

Passo 3: Gerar Certificado SSL
Para desempenho ideal, você pode querer reiniciar o serviço de reseed periodicamente para atualizar as informações do router:
sudo crontab -e
Adicione esta linha para reiniciar o serviço a cada 3 horas:
0 */3 * * * systemctl restart reseed
Setting Up Reverse Proxy
O servidor de reseed é executado em localhost:8443 e precisa de um proxy reverso para lidar com o tráfego HTTPS público. Recomendamos o Nginx Proxy Manager pela sua facilidade de uso.
Passo 4: Faça Backup das Suas Chaves
Implantar o Nginx Proxy Manager usando Docker:
docker run -d \
--name nginx-proxy-manager \
-p 80:80 \
-p 81:81 \
-p 443:443 \
-v $(pwd)/data:/data \
-v $(pwd)/letsencrypt:/etc/letsencrypt \
--restart unless-stopped \
jc21/nginx-proxy-manager:latest
Isto expõe: - Porta 80: Tráfego HTTP - Porta 81: Interface de administração - Porta 443: Tráfego HTTPS
Configure Proxy Manager
Acesse a interface de administração em
http://your-server-ip:81Faça login com as credenciais padrão:
- Email: admin@example.com
- Senha: changeme
Importante: Altere estas credenciais imediatamente após o primeiro login!

- Navegue até Proxy Hosts e clique em Add Proxy Host

- Configure o host proxy:
- Domain Name: Seu domínio de reseed (ex:
reseed.example.com) - Scheme:
https - Forward Hostname / IP:
127.0.0.1 - Forward Port:
8443 - Ative Cache Assets
- Ative Block Common Exploits
- Ative Websockets Support
- Domain Name: Seu domínio de reseed (ex:

- Na aba SSL:
- Selecione Request a new SSL Certificate (Let’s Encrypt)
- Ative Force SSL
- Ative HTTP/2 Support
- Aceite os Termos de Serviço do Let’s Encrypt

- Clique em Save
O seu servidor de reseed deverá agora estar acessível em https://reseed.example.com

Registering Your Reseed Server
Assim que o seu servidor de reseed estiver operacional, entre em contato com os desenvolvedores do I2P para adicioná-lo à lista oficial de servidores de reseed.
Passo 5: Criar Serviço Systemd
Envie um email para zzz (desenvolvedor líder do I2P) com as seguintes informações:
- Email I2P: zzz@mail.i2p
- Email Clearnet: zzz@i2pmail.org
Passo 6: Opcional - Configurar Reinicializações Periódicas
Inclua no seu email:
Verification
Os desenvolvedores do I2P irão verificar se o seu servidor de reseed está: - Devidamente configurado e servindo informações de router - Usando certificados SSL válidos - Fornecendo arquivos SU3 corretamente assinados - Acessível e responsivo
- URL do servidor de reseed: A URL HTTPS completa (ex.:
https://reseed.example.com) - Certificado público de reseed: Localizado em
/home/i2p/.reseed/(anexe o arquivo.crt) - Email de contato: Seu método de contato preferido para notificações de manutenção do servidor
- Localização do servidor: Opcional, mas útil (país/região)
- Tempo de atividade esperado: Seu compromisso em manter o servidor
Instalar o Nginx Proxy Manager
Uma vez aprovado, seu servidor de reseed será adicionado à lista distribuída com os roteadores I2P, ajudando novos usuários a entrarem na rede!
Monitore seu serviço de reseed:
Monitoring and Maintenance
Configurar o Gestor de Proxy
Fique de olho nos recursos do sistema:
sudo systemctl status reseed
sudo journalctl -u reseed -f
Update Reseed Tools
Atualize periodicamente as reseed-tools para obter as últimas melhorias:
htop
df -h
Informações de Contato
Se estiver usando Let’s Encrypt através do Nginx Proxy Manager, os certificados renovarão automaticamente. Verifique se a renovação está funcionando:
cd /home/i2p/reseed-tools
git pull
make build
sudo make install
sudo systemctl restart reseed
Informação Obrigatória
Verifique os logs em busca de erros:
docker logs nginx-proxy-manager | grep -i certificate
Apoio Financeiro
Pode haver apoio financeiro modesto disponível para quem opera servidores de reseed. A StormyCloud fornece uma bolsa anual de até $100 como reembolso parcial dos custos do servidor. A elegibilidade é limitada a operadores que tenham estado a executar servidores de reseed de forma satisfatória durante vários meses. Para mais informações, entre em contato com admin em stormycloud dot org.
Configurando o Serviço
Serviço não inicia
Verifique os logs para erros:
sudo journalctl -u reseed -n 50
Problemas comuns: - Roteador I2P não está em execução ou banco de dados de rede vazio - Porta 8443 já está em uso - Problemas de permissão com o diretório /home/i2p/.reseed/
Nenhuma Informação do Roteador Sendo Servida
Certifique-se de que seu roteador I2P está em execução e já populou seu banco de dados de rede:
ls -lh /home/i2p/.i2p/netDb/
Você deve ver muitos arquivos .dat. Se estiver vazio, aguarde enquanto seu roteador I2P descobre pares.
Erros de Certificado SSL
Verifique se seus certificados são válidos:
openssl s_client -connect reseed.example.com:443 -servername reseed.example.com
Não é possível acessar via domínio
Verifique: - Os registros DNS estão corretamente apontando para o seu servidor - O firewall permite as portas 80 e 443 - O Nginx Proxy Manager está em execução: docker ps
Security Considerations
- Mantenha suas chaves privadas seguras: Nunca compartilhe ou exponha o conteúdo de
/home/i2p/.reseed/ - Atualizações regulares: Mantenha os pacotes do sistema, Docker e reseed-tools atualizados
- Monitore os logs: Fique atento a padrões de acesso suspeitos
- Limitação de taxa: Considere implementar limitação de taxa para prevenir abuso
- Regras de firewall: Exponha apenas as portas necessárias (80, 443, 81 para admin)
- Interface administrativa: Restrinja a interface administrativa do Nginx Proxy Manager (porta 81) a IPs confiáveis
Contributing to the Network
Ao executar um servidor de reseed, você está fornecendo infraestrutura essencial para a rede I2P. Obrigado por contribuir com uma internet mais privada e descentralizada!
Para perguntas ou assistência, entre em contato com a comunidade I2P: - Fórum: i2pforum.net - IRC/Reddit: #i2p em várias redes - Desenvolvimento: i2pgit.org
Guia originalmente criado por Stormy Cloud , adaptado para a documentação do I2P.