J'ai un problème après l'installation d'Openntpd sur Ubuntu 16.04.2 x64 (cela peut arriver sur d'autres versions). Le service openntp ne veut pas démarrer dans les journaux, je vois:
Apr 14 12:00:00 my-Host kernel: [24.6] type=1400 audit(1.2:1): apparmor="DENIED" operation="open" parent=1 profile="/usr/sbin/ntpd" name="/etc/openntpd/ntpd.conf" pid=1526 comm="ntpd" requested_mask="r" denied_mask="r" fsuid=0 ouid=0
Pour le bénéfice du lecteur:
Le problème provient d'une installation précédente du paquet ntp
. Lorsque ntp
est remplacé par openntpd
, certains fichiers de configuration sont conservés, notamment /etc/apparmor.d/usr.sbin.ntpd
. Ceci bloque alors openntpd
de fonctionner correctement. ntp
est normalement installé par défaut, ce qui se produit généralement après l'installation de openntpd
lorsque apparmor
est actif.
La solution est:
Sudo apt-get purge ntp
Sudo /etc/init.d/apparmor reload
Sudo /etc/init.d/openntpd restart
Si vous aimez utiliser apparmor
avec openntpd
(vous êtes probablement passé à openntpd
pour avoir quelque chose de plus sécurisé, non?), Voici ce que j'ai ajouté en tant que /etc/apparmor.d/openntpd
(I Je ne sais pas si cela est complet. Cela fonctionne à mes côtés jusqu'à présent):
# vim:syntax=apparmor
#include <tunables/global>
/usr/sbin/ntpd {
#include <abstractions/base>
#include <abstractions/nameservice>
#include <abstractions/user-tmp>
/etc/openntpd/ntpd.conf r,
/var/lib/openntpd/run/ntpd.sock rw,
/var/lib/openntpd/db/ntpd.drift rw,
capability sys_time,
capability sys_Nice,
capability sys_chroot,
capability setgid,
capability setuid,
capability kill,
}
Pourquoi ne pas "réparer" /etc/apparmor.d/usr.sbin.ntpd
pour openntpd
?
Parce que ntp
est un monstre de ressources. Il nécessite des trains de permissions, qui ne sont pas nécessaires pour openntpd
. La bonne chose à faire est de limiter openntpd
à ce dont il a besoin, pas à ce que ntp
a besoin.
BTW: La meilleure solution serait probablement que Canonical ajoute un /etc/apparmor.d/usr.sbin.ntpd
approprié au paquetage openntpd
, qui remplace alors la configuration restante de ntp
. On peut considérer cela comme un bogue dans Ubuntu 16.04.
Le problème concernait apparmor et ntpd (pas openntpd). Lorsque openntpd a été installé, ils ont supprimé le paquet par défaut ntpd mais n'ont pas supprimé/édité les règles apparmor /etc/apparmor.d/usr.sbin.ntpd
Vous pouvez supprimer des règles ou simplement le corriger en ajoutant des lignes /etc/openntpd/ntpd.conf r,
et /{,var/}lib/openntpd/run/ntpd.sock rwl,
après la ligne /etc/ntp.conf r,
Après cela, redémarrez apparmor et démarrez openntpd.
Sudo service apparmor restart
Sudo service openntpd start
De plus, au lieu d’ajouter une ligne directement à /etc/apparmor.d/usr.sbin.ntpd
, vous pouvez l’ajouter à un fichier spécifique au site /etc/apparmor.d/local/usr.sbin.ntpd