I’m writing a few little scripts at the moment, and one of them needed to be able to send an e-mail. I’d not got around to sorting out what my SMTP gateway was from my ISP – but I do tend to use GMail’s SMTP gateway for non-essential stuff.
I thought I could easily setup sendmail, but no, that’s SCARY stuff, and then I thought of Postfix, but that needs an awful lot of configuration for an TLS based SMTP connection, so I did a bit of digging.
Thanks to this post over at the Ubuntu Forums, I worked out how to get a local port 10025 to run, but PHP kept complaining, so I next looked for a “sendmail replacement”, in comes nullmailer.
So, thankfully this is all rather easy.
- sudo apt-get install openssl xinetd nullmailer
-
sudo tee /usr/bin/gmail-smtp <<EOF >/dev/null #!/bin/sh # Thanks to http://ubuntuforums.org/showthread.php?t=918335 for this install guide /usr/bin/openssl s_client -connect smtp.gmail.com:465 -quiet 2>/dev/null EOF sudo chmod +x /usr/bin/gmail-smtp
-
sudo tee /etc/xinetd.d/gmail-smtp <<EOF >/dev/null # default: on # description: Gmail SMTP wrapper for clients without SSL support # Thanks to http://ubuntuforums.org/showthread.php?t=918335 for this install guide service gmail-smtp { disable = no bind = localhost port = 10025 socket_type = stream protocol = tcp wait = no user = root server = /usr/bin/gmail-smtp type = unlisted } EOF sudo /etc/init.d/xinetd reload
-
sudo tee /etc/nullmailer/remotes <<EOF >/dev/null 127.0.0.1 smtp --port=10025 --user=your@user.tld --pass=Y0urC0mp3xGM@ilP@ssw0rd EOF sudo /etc/init.d/nullmailer reload
Setting all this lot up was pretty easy with these guides. There’s no reason why it wouldn’t work on any other version of Linux (provided you can install all these packages).
Good luck with your project!
Works great :)