4

I am using OpenWrt 10.03 and need to send "reports" from my router by email. I have installed sendmail:

# opkg install mini-sendmail

Then I used my ISP's smtp server:

# echo -e "From: TEST@TEST.TES\nSubject: SUBJECT\nReply-to: TEST@TEST.TES\n\nBODYHERE" \
> | mini_sendmail -sMYISPSSMTPSERVER MYEMAIL@EXAMPLE.COM
mini_sendmail: unexpected response 550 to RCPT TO command

Questions:

  1. How could I know, that my ISP's blocking port 25?

    # telnet MYISPSSMTPSERVER 25
    220 MYISPSSMTPSERVER ESMTP ready
    quit
    221 MYISPSSMTPSERVER closing connection
    Connection closed by foreign host
    

    so it's not blocked?

  2. If port 25 isn't blocked, then how could I check this? Do I need an "email user" at my ISP?

  3. If I can't get email working, than I have to register a free e-mail address [gmail?], and find out, how to send e-mail [with username and password required] in OpenWRT The only problem is that, I don't want to store passwords on the router.
Andrew Schulman
  • 8,811
  • 21
  • 32
  • 47
LanceBaynes
  • 3,087
  • 9
  • 29
  • 31

4 Answers4

4

Solution: I installed ssmtp + registered a free email address with ssl smtp as follows:

# opkg install ssmtp

$ cat /etc/ssmtp/ssmtp.conf
root=MYEMAIL@EXAMPLE.COM
mailhub=SMTP.EXAMPLE.COM:465
rewriteDomain=EXAMPLE.COM
hostname=EXAMPLE.COM
FromLineOverride=YES
UseTLS=YES
AuthUser=MYEMAIL
AuthPass=PASSWORDHERE

$ echo -e "From: MYEMAIL@EXAMPLE.COM\nSubject: SUBJECT\nReply-to: MYEMAIL@EXAMPLE.COM\n\nBODYHERE" \
> | ssmtp -vvv MYOTHEREMAIL@EXAMPLE.COM
Andrew Schulman
  • 8,811
  • 21
  • 32
  • 47
LanceBaynes
  • 3,087
  • 9
  • 29
  • 31
  • openwrt has issues with ssl certificates (unless configured), I think msmtp is easier to configure with tls_certcheck off and can support attachments. – Priyank Bolia Jul 03 '14 at 05:00
4

I know this is old, but it's one of the links that come up when searching "openwrt smtp"
Follow this link- https://forum.openwrt.org/viewtopic.php?id=18669

For sake of preventing linkrot issues..
First install.

# opkg install msmtp

Then create config file.

# cat /etc/msmtprc
account default

host smtp.gmail.com
port 587
auth on
user account@gmail.com
password password

auto_from off
from account@gmail.com

tls on
tls_starttls on
tls_certcheck off

logfile
syslog LOG_MAIL

To email, use the usual sendmail approach.

user606723
  • 544
  • 1
  • 4
  • 10
1

Can you take the router out of the equation and just send an email through telnet? ISPs will often block outbound SMTP (tcp/25) altogether while permitting connections to their mail server, which you can use as a smarthost (that might require authentication) to relay mail for you.

gravyface
  • 13,957
  • 19
  • 68
  • 100
0

Normally consumer Internet service providers will block TCP/25 for all SMTP servers other than their own. So it would be perfectly normal to be able to telnet to it from your router.

Your ISP may require authentication before sending over SMTP and I do not believe mini_sendmail supports SMTP AUTH. You might look at ssmtp opkg instead of (or in addition to) mini_sendmail: http://linux.die.net/man/5/ssmtp.conf

Mat
  • 306
  • 1
  • 2