Назад | Перейти на главную страницу

Как включить ssh при запуске в opensuse

Мой опыт работы с Linux ограничен, и в рамках проекта я заказал выделенный сервер Linux. Это неуправляемый сервер с OpenSuSE 13.2. Когда я пытаюсь подключиться к серверу по ssh, я получаю сообщение об отказе в соединении

ssh: connect to host xxx.xxx... port 22: Connection refused

Я думаю, что в их образе по умолчанию не включен ssh при запуске, но я могу ошибаться. Они предоставляют систему аварийного восстановления, которая представляет собой систему Linux, установленную и загружаемую из оперативной памяти для устранения неполадок. Когда я загружаю это, я могу подключиться к системе через SSH. Я могу смонтировать жесткий диск и внести изменения.

Я хотел бы знать, как проверить и / или какие изменения конфигурации необходимо внести, чтобы включить ssh при запуске для OpenSuSE 13.2 изнутри система восстановления. При необходимости я могу предоставить любое содержимое файла конфигурации. Я в основном работаю с Windows, и поэтому, если вы можете предоставить подробные шаги, это будет полезно.

В рамках своего исследования я проверил файл init.d, не нашлось sshd файл там, ssh установлен, я думаю, поскольку существуют файлы в /etc/ssh например / etc / ssh / sshd_config.

1. Проверьте установку

Бегать which sshd чтобы получить путь, из которого он вызывается. Если вы не получите /usr/sbin/sshd в ответ скорее всего не устанавливается.

2. Установка sshd

Бегать zypper in openssh для установки приложения.

3. Проверьте брандмауэр.

Запустите команду cat /etc/sysconfig/SuSEfirewall2 | grep sshd.

Тебе нужно увидеть FW_CONFIGURATIONS_EXT="sshd" - Это означает, что брандмауэр разрешает входящий трафик на порт 22.

Если вы не найдете его, вы можете добавить его с помощью текстового редактора, например:

vi /etc/sysconfig/SuSEfirewall2 и найдите строку, в которой написано FW_CONFIGURATIONS_EXT="" и измените его на FW_CONFIGURATIONS_EXT="sshd"

4. Убедитесь, что служба запущена.

systemctl status sshd | grep Active - Если вы получите Active: inactive (dead) тебе нужно начать с systemctl start sshd.

Снова запустите команду systemctl status sshd | grep Active и теперь ты должен увидеть Active: active (running) since ...

5. Включите SSH при запуске.

systemctl enable sshd

OpenSUSE начиная с Leap 15, а Tumbleweed избавился от старого брандмауэра в пользу как используется в Fedora. Это меняет способ добавления конфигурации SSH:

firewall-cmd --add-service=ssh --zone=external --permanent

--add-service = ssh Поскольку SSH является одной из предопределенных служб, вы можете использовать ее как службу. Альтернативный вариант --add-port=22.

--zone = внешний Обновляет внешнюю зону. Зоны назначаются интерфейсам.

- постоянный Сохраняет это изменение при перезагрузке.

Чтобы убедиться, что это сделано, файлы XML в /etc/firewalld/zones можно изучить.

<?xml version="1.0" encoding="utf-8"?>
<zone>
  <short>External</short>
  <description>For use on external networks.</description>
  <interface name="eth0"/>
  <service name="ssh"/>
  <masquerade/>
</zone>