It's been bugging me for weeks. And it hasn't changed since. No, I'm not talking about volcanic eruptions on Iceland. Neither am I talking about my little cat Twix which is still not able to open the little cat-door so the cat-toilet has to stay inside... No, I'm talking about the problem of the Android Email application which can't send mails. If you try to send an e-mail using your Android Email application (not Gmail!) you may see a yellow bar which contains the disappointing text CONNECTION FAILED. Why is that, you may ask yourself. Should I have bought an iPhone instead, may be the next question. The answer to all that is to analyze the problem. On the remote mail server, the try to send the e-mail is clearly refused because of a helo check:
Apr 22 15:53:04 area-1 postfix/smtpd[23187]: NOQUEUE: reject: RCPT from area-1.ch[78.46.75.44]: 554 5.7.1
gprs47.swisscom-mobile.ch[193.247.250.47]: 220 area-1.ch ESMTP Postfix (Debian/GNU) watchdog_pat: 0x559270 gprs47.swisscom-mobile.ch[193.247.250.47]: EHLO localhost gprs47.swisscom-mobile.ch[193.247.250.47]: 250-area-1.ch gprs47.swisscom-mobile.ch[193.247.250.47]: 250-PIPELINING gprs47.swisscom-mobile.ch[193.247.250.47]: 250-SIZE 10240000 gprs47.swisscom-mobile.ch[193.247.250.47]: 250-VRFY gprs47.swisscom-mobile.ch[193.247.250.47]: 250-ETRN lost connection after EHLO from gprs47.swisscom-mobile.ch[193.247.250.47]
The problem is, that the used HELO/EHLO command used by the Android Email application is 'localhost' which of course is a senseless SMTP helo - everybody is localhost and you don't connect to a remote host like this. Now it would be interesting to compare this with the iPhone, and here we go:gprs31.swisscom-mobile.ch[193.247.250.31]: EHLO [10.122.235.211] gprs31.swisscom-mobile.ch[193.247.250.31]: 250-area-1.ch gprs31.swisscom-mobile.ch[193.247.250.31]: 250-PIPELINING gprs31.swisscom-mobile.ch[193.247.250.31]: 250-SIZE 10240000 gprs31.swisscom-mobile.ch[193.247.250.31]: 250-VRFY gprs31.swisscom-mobile.ch[193.247.250.31]: 250-ETRN
So here we can compare it. Android uses 'localhost' and iPhone some internal IP (10.122.235.211) which isn't perfect either but much better than localhost. Depending on the mail server configuration this might also fail but the chances are definitely greater that the internal IP gets accepted. Many mail servers however reject remote hosts trying to send e-mails and identifying themselves as localhost for a good reason; a lot of spam servers are using this method. There is already a bug report open, issue no. 1063 handles this case. But unfortunately without resolution. I'll follow up on that and try to see what happens, when the entries in /etc/hosts are changed...No comments yet.
AWS Android Ansible Apache Apple Atlassian BSD Backup Bash Bluecoat CMS Chef Cloud Coding Consul Containers CouchDB DB DNS Database Databases Docker ELK Elasticsearch Filebeat FreeBSD Galera Git GlusterFS Grafana Graphics HAProxy HTML Hacks Hardware Icinga Influx Internet Java KVM Kibana Kodi Kubernetes LVM LXC Linux Logstash Mac Macintosh Mail MariaDB Minio MongoDB Monitoring Multimedia MySQL NFS Nagios Network Nginx OSSEC OTRS Office OpenSearch PGSQL PHP Perl Personal PostgreSQL Postgres PowerDNS Proxmox Proxy Python Rancher Rant Redis Roundcube SSL Samba Seafile Security Shell SmartOS Solaris Surveillance Systemd TLS Tomcat Ubuntu Unix VMWare VMware Varnish Virtualization Windows Wireless Wordpress Wyse ZFS Zoneminder