Signed-off-by: AGentooCat <agentoocat@mail.i2p>
itoomail, a direct Eep2Eep mailing server
itoomail is a basic mail server that can be used to send and receive mails
directly into an I2P server hosting itoomail
(or a similar server).
Setup
itoomail
is designed to be (somewhat) easy to setup:
- Ensure that your I2P router has it's SAM port open.
This can be done by starting (and ticking Run-at-startup) on Java I2P settings or settingenabled
key undersam
section of your I2Pd config totrue
and restarting I2Pd. - Generate a private key for itoomail to use.
A way to do this is to use the SAM bridge with this command:echo -e "HELLO VERSION MIN=3.1 MAX=3.3\nDEST GENERATE SIGNATURE_TYPE=7\nQUIT" | nc 127.0.0.1 7656 | sed -e s/' '/'\n '/g
and noting down thePUB
andPRIV
responses.
Save thePUB
field under/.well-known/i2pmail.key
of your site you want to host your mail server under. - (Optionally) Make a seperate user/group for itoomail to run under.
- (If not launching as root) Make a directory for itoomail to use as it's datadir.
Save thePRIV
response from earlier to theprivkey.dat
of this directory.
If needed, chown/chgrp this directory to the user/group of itoomail. - Make a configuration file as follows:
datadir=/var/lib/itoomail
logfile=/var/log/itoomail.log
pidfile=/var/run/itoomail.pid
[daemon]
loglevel=INFO
user=itoomail
group=itoomail
[ports]
smtp=2500
pop=7165
sam=7656
[service]
adminuser=root
adminpass=adminnimda
hostname=myownsite.i2p
allowed_users=root,git,myownsite
Replace the fields as necessary. If itoomail starts acting weird/crashing then use the DEBUG
loglevel to file a bug report.
- Run itoomail as either root or the wanted user.
If running as non-root then the log/pid/datadir must've been created as explained above.
Otherwise itoomail will create as necessary before changing to the user configured. - You should see a line like
itoomail vx.y.z ready to accept invisible mails
(it may be buried under DEBUG logs if enabled). - Start sending mails to the defined SMTP/POP ports with the address being you site.
Like setting name toMyOwnSite
and address tomyownsite@myownsite.i2p
.
If the destination eepsite has an email server set up like this then your mail shall go through without any problems. - Have fun!
(Known) Limitations
- Can't send/receive from/to Postman's mail.i2p.
A feature mapping itoomail users to mail.i2p users will be implemented in the near future. - Can't (and won't) send/receive from/to clearnet sites or hosts.
- Inability to control itoomail while it's running.
A console-like thing for mails going to "itoomail-system" from the admin account (as the config above) is planned. - Unable to recover from a SAM disconnect making the server a half-zombie until restarted.
itoomail
is an implementation of the Eep2Eep mail server idea of me at here.
Description
Languages
C
94.5%
Makefile
5.5%