Як відключити автозапуск SSHD в Ubuntu 15.04


11

У старих версіях Ubuntu я коментував рядок "start on ..." в /etc/init/ssh.conf. Це працювало добре, але не в Ubuntu 15.04.

Відповіді:


19

Команда

systemctl disable ssh

зробив це для мене.

@Jakuje: Дякую, що ви дали мені цю ідею.


7

Це задокументовано у man systemctl:

systemctl disable ssh

запобігає автоматичному запуску служби ssh. Але це так, як це робить systemd, але ubuntu не приймає цього, і вони повинні робити це по-своєму:

Офіційна документація: https://wiki.ubuntu.com/SystemdForUpstartUsers#Automatic_starting

Відповідно до цього слід створити переопределення одиниці без директиви WantedBy=multi-user.targetв /etc/systemd/system/ssh.service(замість поточного символьного посилання):

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

Коментуючи рядок, як описано вище, "WantedBy = multi-user.target" не впливає на автозапуск в моїй системі. Але після виконання "systemctl disabled ssh" sshd більше не запускається, навіть він був активований вручну в попередньому сеансі.
Фанго

Впевнений, я мав на увазі disable... Я не знаю, чому я туди поклав status. Він не працював для мене на Ubuntu (на відміну від інших систем), тому я шукав і інше рішення ...
Jakuje

Можливо, це не спрацювало у вашій системі, тому що ви ввели sshd замість ssh?
Фанго

Вам слід віддати перевагу назві послуги sshнад її псевдонімом sshd. Наприклад, systemctl enable sshd не працює, оскільки псевдоніми не можна використовувати для включення послуг .
BeeOnRope

@BeeOnRope дякую за коментар. Я здебільшого використовую Fedora / RHEL там, де він названий, sshdі це більше пояснює себе. Я не впевнений, чому Debian / Ubuntu почали використовувати саме sshдля сервера. Я відредагую цю відповідь, щоб відобразити її. Спасибі.
Jakuje

1

Це трохи більше, ніж вимагали, але нерозумний підхід полягає в тому, щоб видалити пакунок:

sudo apt-get remove openssh-server

Це працює у всіх версіях Ubuntu.

Якщо припустити, що у вас є доступ до Інтернету або збережено кеш пакету, перевстановлення (і автоматичний перезапуск) не є проблемою:

sudo apt-get install openssh-server

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

1

Я хочу відключити службу і systemctl disable myserviceне працює, але запуск systemctl daemon-reloadпісля відключення робить її відключенням.

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.