Requires: i2pd 2.21 and genmkfile
Optionally can be used with: samcatd and java-i2p, but compatibility is momentarily limited due to the current shortcomings of samcatd.
Proof-of-Concept for an apt-installable ssh-over-i2p configuration using i2pd's new tunnels.conf.d folder. It consists of an alternate set of configuration files for OpenSSH and i2pd that automatically configures the sshd with fresh, i2p-only keys, only on the localhost, on port 7622. Then it forwards that new SSH service to the i2p network. All automatically. It doesn't have all the features I want it to yet, but I've tried it and it works.
It runs a totally separate sshd, with different keys than the default sshd. Since it depends on sshd being installed, it attempts to detect a pre-existing /etc/ssh/sshd_config and if one does not exist, it stops the default sshd after installing the package. If someone knows a better way to do that I'd like to know.
The larger point is that with the use of /etc/i2pd/tunnels.conf.d instead of a single monolithic tunnels.conf file, it becomes possible to express the configuration of a service that you wish to forward to i2p as an easy-to-install and easy-to create package. In this case it's OpenSSH sshd, but it could be any service that could benefit from being routed using i2p.
genmkfile is pretty awesome for deterministically encapsulating configuration.
- Add Whonix's Signing Key.
sudo apt-key --keyring /etc/apt/trusted.gpg.d/whonix.gpg adv --keyserver hkp://ipv4.pool.sks-keyservers.net:80 --recv-keys 916B8D99C38EAF5E8ADC7A2A8D66066A2EEACCDA
- Add Whonix's APT repository.
echo "deb http://deb.whonix.org stretch main" | sudo tee /etc/apt/sources.list.d/whonix.list
- Update your package lists.
sudo apt-get update
- Install
genmkfile
.
sudo apt-get install genmkfile
If you have debuild and make installed, you can build the experimental package by running
make deb