- Как перезапустить службу SSH?
- 15.04 и новее:
- До 15.04:
- SSH сервер – как зайти и перезагрузить
- Как можно зайти на сервер из ОС Windows
- Как перезагрузить сервер, используя протокол SSH
- Подключение к Windows по SSH с помощью встроенного OpenSSH
- Установка сервера OpenSSH в Windows
- Настройка SSH сервера в Windows
- Sshd_config: Конфигурационный файл сервера OpenSSH
- Подключение к Windows 10 через SSH
Как перезапустить службу SSH?
Как мне остановить / запустить SSH? я пробовал
Я получаю ошибки каждый раз.
15.04 и новее:
Используйте эту команду:
Перезапустить SSH сервер / демон.
В дальнейшем, systemd начиная с Ubuntu 15.04 , вы теперь используете этот синтаксис для остановки, запуска или перезапуска служб:
До 15.04:
Это должно быть так же просто (проверено на новой установке с openssh-сервером)
Поскольку он использует upstart , это лучший способ сделать это, вместо использования /etc/init.d/ssh service или прямого вызова sshd. Обязательно запустите обе команды; если вы получаете сообщение об ошибке на stop ssh , во start ssh всяком случае , и посмотреть , что он говорит, служба уже могла быть остановлена.
(Я бы порекомендовал stop / start более restart , если вы не пытаетесь перезапустить систему удаленно. Если ssh уже остановлен, restart он не запустится.)
Если эти команды не работают, возможно, вы либо столкнулись с ошибкой, либо слишком долго работали с вашей системой, и в этом случае вы, по крайней мере, знаете, в чем проблема.
Команда для перезапуска ssh service :
Начиная с Ubuntu 15.04, Canonical больше не поставляется по умолчанию .
Таким образом , нет, команды start , stop и restart больше не доступны.
Правильный метод перезапуска службы SSH (или любой другой службы) теперь является одной из двух следующих команд:
Сначала проверьте, запущен ли sshd, используя следующее:
Вы должны увидеть что-то вроде:
Если вы не видите строку для, /usr/sbin/sshd -D то sshd либо никогда не запускался, либо зависал, что потребует дальнейшего устранения неполадок, чтобы выяснить причину.
Если вы видите эту строку, выполните следующую команду:
Это должно напечатать идентификатор процесса sshd, поэтому в этом случае вы должны увидеть:
Если содержимое sshd.pid не совпадает с идентификатором процесса работающего экземпляра sshd, то что-то неправильно перезапустило его. Но какие бы детали вы ни нашли здесь, вы должны быть на правильном пути. Либо он падает, либо перезапускается неправильно, либо вообще не запускается.
Я думаю, что Неизвестная ошибка экземпляра, потому что SSH не работает.
Чтобы увидеть, работает демон SSH или нет, вы должны увидеть что-то вроде:
В любом случае, попробуйте любой из них:
sudo /etc/init.d/ssh start
sudo start ssh
На рабочем столе Ubuntu:
Сначала проверьте статус услуги:
должен показать: — Active: active (running) Если он работает, нет необходимости перезапускать его. Если вы все еще хотите перезапустить его, Ubuntu вызывает службу ssh, а не sshd.
Но если это не Ubuntu Desktop, используя CLI:
Сервис также контролируется выскочкой, а не sysvinit. Итак, вы найдете его в /etc/init/ssh.conf вместо /etc/init.d/ssh.
Если вы хотите изменить некоторые настройки (например, порт прослушивания и разрешение входа в систему root), отредактировав файл конфигурации с помощью команды:
На рабочем столе Ubuntu вы можете использовать gedit вместо nano:
Наконец примените изменения, перезапустив или перезагрузив SSH:
Если выше все еще не работает тогда, напечатайте это:
Если все вышеперечисленное не работает, попробуйте перезапустить систему Ubuntu:
SSH сервер – как зайти и перезагрузить
Время на чтение: 7 минут
На замену старым протоколам, наподобие telnet и rlogin, пришел новый, защищенный сетевой протокол SSH. Это мощный, шифрованный и функциональный протокол прикладного уровня, который позволяет заходить с клиента на сервер не только в целях чтения, но и для записи данных. Потому SSH часто используют веб-мастера для работы с удаленными мастерхостами, а также различные организации для соединения главного компьютера с другими ПК. Кроме того, через SSH можно создать специальные TCP-туннели для передачи данных.
Но о возможностях протокола в целом поговорим в следующий раз – в этой статье вы найдете информацию о том, как подключиться при помощи SSH к удаленному серверу. Кроме того, вы узнаете, как через этот сетевой протокол можно перезагрузить SSH сервер.
Как можно зайти на сервер из ОС Windows
Если вы планируете посвятить себя программирования и администрированию, то лучше поменяйте операционную систему на Linux. Поскольку Windows больше подходит для “чайников” и обычных обывателей, которые не планируют заниматься всякими SSH протоколами и подключением на сервера.
Но если вы все же привыкли к Windows, то разберем, как при помощи известного приложения Putty и не менее известного браузера Firefox можно подключиться на SSH сервер.
Разберем все по порядку, чтобы не пропустить мелкие детали в настройке браузера и приложения Putty для подключения к серверу. Для начала вам нужно сделать самое элементарное – это открыть через “Пуск” браузер Firefox. Не обязательно использовать именно этот браузер, но в обзоре нужно было на чем-то остановиться, потому выбор пал именно на Мозиллу. После того, как откроете браузер, вам нужно найти и скачать приложение Putty. Учтите, что в Интернете есть множество фейковых страниц, вроде подставных форумов, где вместо установщика Putty размещают ссылки на вирусы, так что будьте бдительны.
Как правило, первым в выдаче появится домен Chiark, с которого вам и нужно будет скачать установщик приложения Putty. В нижней части страницы Download вы найдете ссылку на файл Putty.exe. Не перепутайте – вам нужен именно этот файл, а не PuttyTel, предназначенный для управления другим протоколом. Итак, скачиваете файл установщика на компьютер. После этого нажимаете в браузере “Открыть папку с файлом”, чтобы проводник показал вам расположение объекта на компьютере. Вам необходимо будет перед установкой перенести Putty на “Рабочий стол”, нажав кнопку “Копировать” в папке с файлом, а затем “Вставить” уже на дескпоте.
Теперь переходим к непосредственной установке программы. Жмете “Открыть”, после чего запускается инсталляция объекта на компьютер. Вам обязательно нужно будет ввести IP-адрес, по которому размещен SSH сервер. Кроме того, в правой части от формы для ввода IP-адреса, вы увидите поле для обозначения порта. По умолчанию SSH сервер размещен по 22-ому порту. Но многие рекомендуют менять стандартное значение на другое. Если вы последовали этому совету, тогда поменяйте значение “22” на ваше.
Рекомендуется также пройти в пункт настроек Translatiion и изменить стандартную кодировку Windows UTF-8 на KOI8-R, которую вы найдете в списке доступных кодировок. Это необходимо для корректного понимания программой ваших запросов. После того, как сменили кодировку, возвращайтесь в настройки текущей сессии Putty. Рекомендуется прописать нужные настройки и сохранить сессию, чтобы потом не приходилось прописывать одни и те же данные после каждого захода в Putty. Для этого нажмите раздел Saved Sessions и пропишите имя для сессии, а после этого кликните на кнопку Save. А для загрузки сессии вам нужно будет нажать на Load.
Поскольку вы впервые попробуете подключиться к серверу через Putty, программа запросит у вас публичный ключ. Поскольку у вас его нет, появится всплывающее окно с просьбой его установить. Вам нужно будет нажать “Да” или “OK”. После этого появится командная строка Putty, через которую вы и будете заходить на SSH сервер. Скорее всего, вам выдали какой-либо аккаунт, чтобы вы могли зайти на хост. Первым делом вам нужно его прописать в строке login as: ваш_логин.
После того, как введете логин, появится поле для ввода пароля. Учтите, что поскольку SSH – это защищенный протокол, ввод будет “слепым”, то есть вы не будете видеть, что вы набираете, и набираете ли вы вообще. У вас будет несколько попыток для ввода корректного пароля. Даже если не получится ввести пароль с первого раза, сессия просто оборвется и вам нужно будет подключиться повторно через Putty и снова попытаться зайти на SSH сервер. После того, как вы верно введете пароль, появится окно с приветствием от сервера.
В целом, если такое окно появилось, значит вы выполнили основную задачу – вы сумели подключиться к серверу через протокол SSH. Далее, чтобы выполнять каике-либо действия на хосте, вам нужно будет воспользоваться командной строкой и набором специальных команд для управления сервером. Теперь вы сможете выполнить любое действие, которое доступно для вашего аккаунта. Самый вольный аккаунт с полным набором прав – это root, или суперпользователь. Но как правило, таким аккаунтам запрещают вход через SSH, чтобы избежать взлома сервера. И вам лучше также избавиться от такого аккаунта, а настроить права доступа на разные файлы и элементы вручную через chmod.
Чтобы ощутить, что вы наконец-то вошли на сервер, можете прописать команду проверки свободного места на хосте. Для этого пропишите через строку команду df -h. После того, как напишите ее, нажмите “Ввод” (то есть клавишу Enter) и дождитесь ответа сервера. Вам на экране появится сообщение с информацией о свободном месте на диске, а также об общем размере сервера в гигабайтах.
Теперь вы сможете делать все, что вам вздумается. К примеру, просмотреть последние десять логов на сервере при помощи комбинации tail -n 10 /var/log/message. Учтите, что SSH позволяет и читать, и записывать данные. Так что вы сможете даже редактировать некоторое содержимое на хосте. К примеру, можно копировать и даже архивировать файлы. Но для этого нужно использовать специальные функции, вроде scp, tar или zip. В целом, ваши возможности полностью зависят от вас. Читайте литературу по пользованию серверами и обязательно научитесь ими управлять. А теперь разберем способы, как можно перезагрузить сервер при помощи протокола SSH.
Как перезагрузить сервер, используя протокол SSH
Иногда возникает такая потребность. К примеру, когда хост в каком-то случае недоступен или на нем произошли изменения и для их закрепления необходима перезагрузка. В целом, причина не так важна, как сам процесс перезагрузки и методы, какими при этом вы воспользуетесь. Перезагрузить хост через протокол SSH совсем не сложно.
Если у вас Windows, то вновь можете воспользоваться описанным приложением Putty. Вам нужно будет зайти на сервер, как было описано выше, введя логин и пароль. Либо если у вас настроена автоматическая аутентификация через публичный ключ, то вводить ничего не придется – это произойдет по умолчанию в фоном режиме: сервер проверит наличие необходимого ключа на компьютере.
Сервер перезагружается посредством одной-единственной команды: reboot. После ввода ее в командной строке примерно через 15 минут произойдет перезагрузка хоста и вы вновь сможете на него зайти по протоколу SSH. Но, обычно, можно обойтись и без этого протокола, особенно, если у вас есть панель управления на сервере. В таком случае вам нужно будет лишь зайти на аккаунт хостинг-провайдера в админпанель. А после этого найти кнопку Reset, “Перезагрузка” или что-то в этом роде. Либо свяжитесь с технической поддержкой хостинга – они обязательно должны вам помочь – это их работа.
Кроме ввода команды перезагрузки, возможно, вам понадобятся и другие популярные функции, которыми можно пользоваться через командную строку по протоколу SSH:
- mc – после ввода этой функции появится файловый менеджер для управления объектами сервера;
- top – откроет активные процессы сервера (вроде “Диспетчера задач” в OC Windows);
- mysqldump – создание дампа;
- cd /путь/ – это переход между каталогами;
- если у вас стоит сервер apache, то для его перезапуска понадобится функция apachectl restart.
Это основные функции, но помните, что есть еще вторичные. С ними вы сможете ознакомиться при помощи различных обучающих материалов в Интернете и благодаря постоянной тренировке и практике. Со временем вы поймете, что управление сервером по SSH – это не так уж и сложно, как об этом говорят. А все потому, что современный вебмастер привык к удобствам и легкому управлению сервером через админпанели на хостинге.
Подключение к Windows по SSH с помощью встроенного OpenSSH
Начиная с Windows 10 1809 и Windows Server 2019 в операционной системе имеется встроенный SSH сервер, основанный на OpenSSH. В этой статье мы покажем, как установить и настроить OpenSSH сервер в Windows 10 и подключиться к нему удаленно по защищенному SSH протоколу (ну прям как в Linux 🙂 ).
Установка сервера OpenSSH в Windows
Рассмотрим, как установить компонент OpenSSH Server в Windows 10 1903 (Windows Server 2019 все выполняется аналогично).
Пакет OpenSSH (как и RSAT) уже включен в данные версии Windows в виде Feature on Demand (FoD).
При наличии прямого Интернет-подключения вы можете установить сервер OpenSSH с помощью PowerShell
Add-WindowsCapability -Online -Name OpenSSH.Server*
Или при помощи DISM:
dism /Online /Add-Capability /CapabilityName:OpenSSH.Server
В Windows 10 этот компонент также можно установить через панель Параметры (Приложения -> Управление дополнительными компонентами -> Добавить компонент). Найдите в списке Open SSH Server и нажмите кнопку Install).
Чтобы проверить, что OpenSSH сервер установлен, выполните:
Get-WindowsCapability -Online | ? Name -like ‘OpenSSH.Ser*’
Настройка SSH сервера в Windows
После уставной сервера OpenSSH в Windows вам нужно изменить тип запуска службы sshd на автоматический и запустить службу с помощью PowerShell:
Set-Service -Name sshd -StartupType ‘Automatic’
Start-Service sshd
С помощью nestat убедитесь, что теперь в системе запущен SSH сервер и ждет подключений на 22 порту:
netstat -na| find «:22»
Проверьте, что включено правило брандмауэра (Windows Defender Firewall), разрешающее входящие подключения к Windows по порту TCP/22.
Get-NetFirewallRule -Name *OpenSSH-Server* |select Name, DisplayName, Description, Enabled
Если правило отключено (состоянии Enabled=False) или отсутствует, вы можете создать новое входящее правило командой New-NetFirewallRule:
New-NetFirewallRule -Name sshd -DisplayName ‘OpenSSH Server (sshd)’ -Enabled True -Direction Inbound -Protocol TCP -Action Allow -LocalPort 22
По умолчанию важным компоненты OpenSSH хранятся в следующих каталогах:
- Исполняемые файлы OpenSSH Server: C:\Windows\System32\OpenSSH\
- Конфигурационный файл sshd_config (создается после первого запуска службы): C:\ProgramData\ssh
- Журнал OpenSSH: C:\windows\system32\OpenSSH\logs\sshd.log
- Файл authorized_keys и ключи: %USERPROFILE%\.ssh\
При установке OpenSSH сервера в системе создается новый локальный пользователь sshd.
Sshd_config: Конфигурационный файл сервера OpenSSH
Вы можете изменить настройки сервере OpenSSH в конфигурационном файле %programdata%\ssh\sshd_config.
Например, чтобы запретить SSH подключение для определенного доменного пользователя (и всех пользователей указанного домена), добавьте в конце файле директивы:
Чтобы разрешить подключение только для определенной доменной группы:
Либо можете разрешить доступ для локальной группы:
Можно запретить вход под учетными записями с правами администратора, в этом случае для выполнения привилегированных действий в SSH сессии нужно делать runas.
Следующие директивы разрешают SSH доступ по ключам (доступ к Windows через SSH по ключам рассмотрим подробно в следующей статье) и по паролю:
Вы можете изменить порт, на котором принимает подключения OpenSSH в конфигурационном файле sshd_config в директиве Port.
Подключение к Windows 10 через SSH
Теперь вы можете попробовать подключиться к своей Windows 10 через SSH клиент (я использую putty, но можно пользоваться встроенным ssh клиентом Windows).
При первом подключении появится стандартный запрос на добавление узла в список известных SSH хостов.
Нажимаем Да, и в открывшееся окне авторизуемся под пользователем Windows.
При успешном подключении запускается командная оболочка cmd.exe со строкой-приглашением.
В командной строке вы можете выполнять различные команды, запускать скрипты и программы.
Я предпочитаю работать в командной строке PowerShell. Чтобы запустить интерпретатор PowerShell, выполните:
Чтобы изменить Shell по умолчанию в OpenSSH с cmd.exe на PowerShell, внесите изменение в реестр такой командой:
New-ItemProperty -Path «HKLM:\SOFTWARE\OpenSSH» -Name DefaultShell -Value «C:\Windows\System32\WindowsPowerShell\v1.0\powershell.exe» -PropertyType String –Force
Осталось перезапустить SSH подключение и убедиться, что при подключении используется командный интерпретатор PowerShell (об этом свидетельствует приглашение PS C:\Users\admin> ).
В SSH сессии запустилась консоль PowerShell, в которой работают привычные функции: авто дополнение, раскраска модулем PSReadLine, история команд и т.д. Если текущий пользователь входит в группу локальных администраторов, то все команды в его сессии выполняются с повышенными правами даже при включенном UAC.