Install the Java runtime (JRE 7 or newer) and unzip. For example on Debian, Ubuntu:
sudo apt-get install openjdk-7-jre-headless unzip
Download and extract the release archive:
wget https://github.com/hontvari/mireka/releases/download/4.2.0/mireka-4.2.0.zip unzip mireka-4.2.0.zip cd mireka-4.2.0
Make the start script executable:
chmod +x bin/start.sh
The default configuration opens the usual mail related TCP ports, all below 1024, and that is only allowed to root. Choose from the following three options, ordered by their difficulty.
sudo ./bin/start.sh
Update the configuration to use port numbers greater than 1024:
sed -i '/setup(PopServer/ a\\tport: 1110,' conf/pop.js sed -i '/setup(SMTPServer/ a\\tport: 1025,' conf/mx.js sed -i '/setup(SubmissionServer/ a\\tport: 1587,' conf/submission/submission.js
Now you can run it as a non-root user:
./bin/start.sh
Install authbind. For example on Debian, Ubuntu:
sudo apt-get install authbind
Configure authbind to enable mail ports for you:
echo -e "0.0.0.0/0:25,25\n0.0.0.0/0:110,110\n0.0.0.0/0:587,587" | sudo tee /etc/authbind/byuid/$UID /etc/authbind/byuid/\!$UID > /dev/null
Modify start.sh to use authbind:
sed -i 's/^$JAVA_CMD/authbind &/' bin/start.sh
Now you can run it as a non-root user and still use standard ports:
./bin/start.sh
You will see log messages showing that Mireka listens on port 25 (SMTP), 110 (POP), 587 (Message Submission) or on the ports you configured. For finer log messages:
tail -F log/access.log
Press Ctrl+C to shutdown Mireka.