Okay, I found a cause – it was my permissions on the the /var/ipfire/dma/auth.conf
I still don’t understand why daemons running as root, started from rc.local or init.d script behaved differently than when started by root from an ssh or console shell. This seems to have something to do with the permissions and/or ownership on /var/ipfire/mail config files and perhaps the setuid settings on sendmail.dma
Here’s the ownership and permissions for dma mail transfer agent:
[root@ipfire dma]# ls -l /usr/sbin/*dma
-rwxr-sr-x 1 root mail 68848 Apr 9 2019 /usr/sbin/dma
lrwxrwxrwx 1 root root 3 Apr 9 2019 /usr/sbin/sendmail.dma → dma
… and here’s the working ownership and permissions on my mail config files:
[root@ipfire dma]# ls -l /var/ipfire/dma
-rw-r----- 1 root mail 43 Sep 8 10:37 auth.conf
-rw-r–r-- 1 nobody nobody 189 Dec 2 19:42 dma.conf
-rw-r–r-- 1 nobody nobody 72 Sep 8 10:37 mail.conf
Specifically, one may note the root:mail ownership of auth.conf