Come disabilitare l'avvio automatico di SSHD in Ubuntu 15.04


11

Nelle versioni precedenti di Ubuntu ho commentato la riga "start on ..." in /etc/init/ssh.conf. Funzionava bene, ma non in Ubuntu 15.04.

Risposte:


19

Il comando

systemctl disable ssh

fatto per me.

@Jakuje: grazie per avermi dato l'idea.


7

Questo è documentato in man systemctl:

systemctl disable ssh

impedisce l'avvio automatico del servizio ssh. Ma questo è il modo in cui systemd lo fa, ma Ubuntu non lo accetta e devono farlo a modo loro:

Documentazione ufficiale: https://wiki.ubuntu.com/SystemdForUpstartUsers#Automatic_starting

In base a ciò, è necessario creare l'override dell'unità senza direttiva WantedBy=multi-user.targetin /etc/systemd/system/ssh.service(anziché l'attuale collegamento simbolico):

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

Commentare la riga come descritto sopra "WantedBy = multi-user.target" non influisce sull'avvio automatico sul mio sistema. Ma dopo aver eseguito "systemctl disable ssh" sshd non si avvia più, anche se è stato attivato manualmente nella sessione precedente.
Fango,

sicuramente intendevo disable... non so perché l'ho messo lì status. Non ha funzionato per me su Ubuntu (a differenza di altri sistemi) quindi stavo cercando anche una soluzione diversa ...
Jakuje,

Forse non ha funzionato nel tuo sistema perché hai digitato sshd invece di ssh?
Fango,

Dovresti preferire il nome del servizio sshal suo alias sshd. Ad esempio, systemctl enable sshd non funziona perché gli alias non possono essere utilizzati per abilitare i servizi .
BeeOnRope,

@BeeOnRope grazie per il commento. Sto usando principalmente Fedora / RHEL da dove prende il nome sshde che è più autoesplicativo. Non sono sicuro del motivo per cui Debian / Ubuntu ha iniziato a usare solo sshper il server. Modificherò questa risposta per rifletterla. Grazie.
Jakuje,

1

Fa un po 'più di quanto richiesto, ma l'approccio infallibile è rimuovere il pacchetto:

sudo apt-get remove openssh-server

Funziona in tutte le versioni di Ubuntu.

Supponendo di avere accesso a Internet o di aver memorizzato nella cache il pacchetto, la reinstallazione (e il riavvio automatico) non è un problema:

sudo apt-get install openssh-server

sudo apt-get install --reinstall openssh-server
nobar,

1

Voglio disabilitare un servizio e systemctl disable myservicenon funziona, ma eseguirlo systemctl daemon-reloaddopo averlo disabilitato lo disabilita.

Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.