Reseed data managment tools for I2P
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 
 
Darknet Villain e54a17fbbe Merge pull request #4 from l-n-s/devel 8 years ago
data initialize repository 8 years ago
output initialize repository 8 years ago
pyseeder add github transport (#3) 8 years ago
.gitignore initialize repository 8 years ago
INSTALL.md Instructions updated + requirements fix 8 years ago
README.md Update README.md 8 years ago
pyseeder.py add github transport (#3) 8 years ago
requirements.txt add github transport (#3) 8 years ago
transports.ini.example add github transport (#3) 8 years ago

README.md

pyseeder

Reseed data managment tools for I2P

  • Generate reseed signing keypair
  • Make reseed data files (su3)
  • Download su3 files from official servers for mirroring
  • Upload reseed data to different places (with plugins)
  • Run HTTPS reseed server

Reseed transports are implemented so that users can bootstrap their I2P nodes without needing to connect to "official" I2P reseeds. This makes I2P more invisible for firewalls.

Installation instructions

Usage

$ python3 pyseeder.py --help
$ python3 pyseeder.py keygen --help

Generating keypair

$ python3 pyseeder.py keygen --cert data/user_at_mail.i2p.crt --private-key data/priv_key.pem --signer-id user@mail.i2p

This will generate certificate (user_at_mail.i2p.crt) and private RSA key (priv_key.pem) in data folder. E-mail is used as certificate identifier.

Script will prompt for private key password.

Generating reseed data

$ YOUR_PASSWORD="Pa55w0rd"
$ echo $YOUR_PASSWORD | python3 pyseeder.py reseed --netdb /path/to/netDb --private-key data/priv_key.pem --outfile output/i2pseeds.su3 --signer-id user@mail.i2p

This will generate file i2pseeds.su3 in output folder, using user@mail.i2p as certificate identifier.

Note: you'll have to enter your private key password to stdin, the above is one of the ways to do it (for cron and scripts).

Download su3 file from official servers

$ python3 pyseeder.py transport.pull --urls https://reseed.i2p-projekt.de/ https://reseed.i2p.vzaws.com:8443/ --outfile output/i2pseeds.su3

Note: --urls parameter is optional, defaults are "official" I2P reseeds.

Upload su3 file with pluggable transports

$ python3 pyseeder.py transport.push --config transports.ini --file output/i2pseeds.su3

All parameters are optional. Copy file transports.ini.example to transports.ini. Edit your settings in this new file.

Run HTTPS reseed server

$ python3 pyseeder.py serve --port 8443 --host 127.0.0.1 --private-key data/priv_key.pem --cert data/user_at_mail.i2p.crt --file output/i2pseeds.su3

Note: this server is fine for testing, but for "production" environments please use nginx webserver.