Comment désactiver le démarrage automatique de SSHD dans Ubuntu 15.04

11

Dans les anciennes versions d'Ubuntu, je commentais la ligne "start on ..." dans /etc/init/ssh.conf. Cela fonctionnait bien, mais pas dans Ubuntu 15.04.

Fango
la source

Réponses:

19

La commande

systemctl disable ssh

l'a fait pour moi.

@Jakuje: Merci de me donner l'idée.

Fango
la source
7

Ceci est documenté dans man systemctl:

systemctl disable ssh

empêche le service ssh de démarrer automatiquement. Mais c'est la façon dont systemd le fait, mais ubuntu ne l'accepte pas et ils doivent le faire à leur manière:

Documentation officielle: https://wiki.ubuntu.com/SystemdForUpstartUsers#Automatic_starting

Selon cela, vous devez créer un remplacement d'unité sans directive WantedBy=multi-user.targetdans /etc/systemd/system/ssh.service(au lieu du lien symbolique actuel):

rm /etc/systemd/system/ssh.service
cp /lib/systemd/system/ssh.service /etc/systemd/system/ssh.service
sed -e "/WantedBy=multi-user.target/d" -i /etc/systemd/system/ssh.service
systemctl daemon-reload
Jakuje
la source
Commenter la ligne comme décrit ci-dessus "WantedBy = multi-user.target" n'affecte pas le démarrage automatique sur mon système. Mais après avoir exécuté "systemctl disable ssh", sshd ne démarre plus, même s'il a été activé manuellement lors de la session précédente.
Fango
bien sûr que je voulais dire disable... Je ne sais pas pourquoi je l'ai mis là status. Cela ne fonctionnait pas pour moi sur Ubuntu (contrairement aux autres systèmes) donc je cherchais aussi une solution différente ...
Jakuje
Peut-être que cela n'a pas fonctionné dans votre système parce que vous avez tapé sshd au lieu de ssh?
Fango
Vous devez préférer le nom du service sshà son alias sshd. Par exemple, systemctl enable sshd ne fonctionne pas car les alias ne peuvent pas être utilisés pour activer les services .
BeeOnRope
@BeeOnRope merci pour le commentaire. J'utilise principalement Fedora / RHEL où il est nommé sshdet qui est plus explicite. Je ne sais pas pourquoi Debian / Ubuntu a commencé à utiliser uniquement sshpour le serveur. Je vais modifier cette réponse pour la refléter. Merci.
Jakuje
1

Il fait un peu plus que ce qui était demandé, mais l'approche infaillible consiste à supprimer le package:

sudo apt-get remove openssh-server

Cela fonctionne dans toutes les versions d'Ubuntu.

En supposant que vous avez accès à Internet ou que vous avez mis en cache le package, la réinstallation (et le redémarrage automatique) n'est pas un problème:

sudo apt-get install openssh-server
nobar
la source
sudo apt-get install --reinstall openssh-server
nobar
1

Je veux désactiver un service et systemctl disable myservicene fonctionne pas, mais exécuter une systemctl daemon-reloaddésactivation après le rend désactivé.

SAMPro
la source