← Back to team overview

ubuntu-mail-server team mailing list archive

[Bug 1452538] Re: opendkim does not start properly when ldap server can't be contacted

 

i've addressed this, from my perspective, by switching to an independent
systemd unit file:

>cat /etc/systemd/system/opendkim.service 
[Unit]
Description=DomainKeys Identified Mail (DKIM) Milter
Documentation=man:opendkim(8) man:opendkim.conf(5) man:opendkim-genkey(8) man:opendkim-genzone(8) man:opendkim-testadsp(8) man:opendkim-testkey http://www.opendkim.org/docs.html
After=network.target nss-lookup.target syslog.target

[Service]
Type=forking
PIDFile=/run/opendkim/opendkim.pid
EnvironmentFile=-/etc/default/opendkim
ExecStart=/usr/sbin/opendkim -x /etc/opendkim/opendkim.conf
TimeoutStartSec=10
ExecReload=/bin/kill -USR1 $MAINPID
User=opendkim
Group=opendkim

[Install]
WantedBy=multi-user.target

this was built from the sample in the opendkim source
[/contrib/systemd/]

i'll file a separate bug for the SoftStart issue i'm having.

-- 
You received this bug notification because you are a member of Ubuntu
Mail Server, which is subscribed to opendkim in Ubuntu.
https://bugs.launchpad.net/bugs/1452538

Title:
  opendkim does not start properly when ldap server can't be contacted

Status in opendkim package in Ubuntu:
  New

Bug description:
  when starting opendkim, if ldap is in use and the server cannot be
  contacted, opendkim gets stuck in a state where the system appears to
  think it has started, but is not actually running:

  >systemctl -l status opendkim
  ● opendkim.service - LSB: Start the OpenDKIM service
     Loaded: loaded (/etc/init.d/opendkim)
     Active: active (exited) since Wed 2015-05-06 23:16:20 EDT; 1min 24s ago
       Docs: man:systemd-sysv-generator(8)
    Process: 589 ExecStart=/etc/init.d/opendkim start (code=exited, status=0/SUCCESS)

  May 06 23:16:19 server systemd[1]: Starting LSB: Start the OpenDKIM service...
  May 06 23:16:20 server opendkim[589]: Starting OpenDKIM: opendkim: /etc/opendkim/opendkim.conf: ldap://dsa.example.com/ou=domains,ou=mail,dc=example,dc=com?host?sub?(host=$d): dkimf_db_open(): Can't contact LDAP server
  May 06 23:16:20 server opendkim[589]: opendkim.
  May 06 23:16:20 server systemd[1]: Started LSB: Start the OpenDKIM service.

  >ps -aefwww | grep -iF dkim
  root       858   815  0 23:18 pts/0    00:00:00 grep -iF dkim

  additional attempts to start opendkim don't indicate failure, but also
  don't work:

  >systemctl start opendkim
  >

  >ps -aefwww | grep -iF dkim
  root       863   815  0 23:19 pts/0    00:00:00 grep -iF dkim

  additionally, as can be seen in the above systemctl status output,
  systemd appears to think that opendkim has started successfully, but
  when testing manually, it does not:

  >/usr/sbin/opendkim -x /etc/opendkim/opendkim.conf -u opendkim -P /var/run/opendkim/opendkim.pid
  opendkim: /etc/opendkim/opendkim.conf: ldap://dsa.example.com/ou=domains,ou=mail,dc=example,dc=com?host?sub?(host=$d): dkimf_db_open(): Can't contact LDAP server

  >echo $?
  78

  lastly, stopping opendkim [even though it's not really running] and
  then starting it again then results in it actually running:

  >systemctl stop opendkim

  >systemctl start opendkim

  >ps -aefwww | grep -iF opendkim
  opendkim  1105     1  0 23:24 ?        00:00:00 /usr/sbin/opendkim -x /etc/opendkim/opendkim.conf -u opendkim -P /var/run/opendkim/opendkim.pid
  opendkim  1106  1105  0 23:24 ?        00:00:00 /usr/sbin/opendkim -x /etc/opendkim/opendkim.conf -u opendkim -P /var/run/opendkim/opendkim.pid
  root      1117   815  0 23:25 pts/0    00:00:00 grep -iF opendkim

To manage notifications about this bug go to:
https://bugs.launchpad.net/ubuntu/+source/opendkim/+bug/1452538/+subscriptions


References