SSH: быстрый старт

ssh

Включение SSH в Ubuntu Server

По умолчанию при первой установке Ubuntu удаленный доступ через SSH запрещен. Для включения SSH в Ubuntu необходимо произвести некоторые действия:

  • Откройте терминал установите пакет openssh-server:

sudo apt update

sudo apt install openssh-server

При появлении заsuпроса введите пароль и нажмите Enter, чтобы продолжить установку.

  • После завершения установки служба SSH запустится автоматически. Вы можете проверить, работает ли SSH, набрав:

sudo systemctl status ssh

В выводе должно быть указано, что служба запущена и включена при загрузке системы:

ssh.service — OpenBSD Secure Shell server

    Loaded: loaded (/lib/systemd/system/ssh.service; enabled; vendor preset: enabled)

    Active: active (running) since Mon 2021-02-16 11:12:00 CEST; 3h ago

Нажмите q, чтобы вернуться к приглашению командной строки.

  • Ubuntu поставляется с утилитой настройки брандмауэра под названием UFW. Если в вашей системе включен брандмауэр, обязательно откройте порт SSH:

sudo ufw allow ssh

Настройка завершена. Теперь вы можете подключиться к вашей системе Ubuntu через SSH с любого удаленного компьютера. В системах Linux и macOS клиенты SSH установлены по умолчанию. Чтобы подключиться с компьютера под управлением Windows, используйте SSH-клиент, например PuTTY.

 

Подключение к SSH-серверу в Ubuntu

Чтобы подключиться к вашей машине с Ubuntu через локальную сеть, вызовите команду ssh, а затем имя пользователя и IP-адрес в следующем формате:

ssh username@ip_address

Поменяйте имя пользователя username и IP-адрес ip_address компьютера с Ubuntu, на котором вы установили SSH.

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

ip a

ifconfig

Найдя IP-адрес, войдите на удаленный компьютер, выполнив следующую команду ssh:

ssh oleg@192.168.1.37

Когда вы подключаетесь в первый раз, вы увидите следующее сообщение:

The authenticity of host ‘192.168.1.37(192.168.1.37)’ can’t be established.

ECDSA key fingerprint is SHA256:Vybt22mVXuNuB5unE++yowF7lgA/9/2bLSiO3qmYWBY.

Are you sure you want to continue connecting (yes/no)?

Введите yes и вам будет предложено ввести пароль.

Warning: Permanently added ‘192.168.1.37’ (ECDSA) to the list of known hosts.

oleg@192.168.1.37’s password:

 После того, как вы введете пароль, вас встретит сообщение по умолчанию Ubuntu:

Welcome to Ubuntu 20.04 LTS (GNU/Linux 5.4.0-26-generic x86_64)

 

 * Documentation:  https://help.ubuntu.com

 * Management:     https://landscape.canonical.com

 * Support:        https://ubuntu.com/advantage

Вы вошли в систему на своей машине с Ubuntu.

 

Отключение SSH в Ubuntu

Чтобы отключить сервер SSH в вашей системе Ubuntu, остановите службу SSH, выполнив:

sudo systemctl disable —now ssh

Чтобы включить его, введите:

sudo systemctl enable —now ssh

 


Подключение к SSH-серверу в Windows

Включение OpenSSH в Windows 10

Нужно убедиться, что OpenSSH установлен на вашем компьютере, если вы обновили более раннюю версию Windows 10, вам может потребоваться включить ее вручную. Для этого:

  • Откройте параметры «Параметры» > «Приложения«. Затем справа нажмите на ссылку «Дополнительные возможности».
  • Если вы не видите «Клиент OpenSSH» в появившемся списке, нажмите кнопку «Добавить компонент» и установите его из списка.

Из командной строки

Подключения в командной строке наберите

ssh user@server -p 2023

используйте параметр -p если используете нестандартный порт ssh.

После ввода пароля получаем доступ к терминалу сервера:

Параметры командной строки SSH

Инструмент SSH имеет множество дополнительных параметров. Ниже перечислены общие параметры SSH и соответствующие описания.

-1 — указывает ssh использовать версию протокола 1

-2 — указывает ssh использовать протокол версии 2.

-4 — разрешает только адреса IPv4.

-6 — разрешает только адреса IPv6.

-A — включает переадресацию соединения агента аутентификации. Используйте эту опцию с осторожностью.

-a — Отключает переадресацию соединения агента аутентификации.

-b bind_address — используйте эту опцию на локальном хосте с более чем одним адресом, чтобы установить исходный адрес соединения.

-C — включает сжатие данных для всех файлов. Только для использования с медленными соединениями.

-c cipher_spec — используется для выбора спецификации шифра. Перечислите значения через запятую.

-E log_fileName — прикрепляет журналы отладки к log_file вместо стандартной ошибки.

-f — отправляет ssh в фоновый режим даже до ввода пароля или ключевой фразы.

-g — Разрешает удаленным хостам подключаться к портам, перенаправленным на локальном компьютере.

-q — запускает ssh в тихом режиме. Он подавляет большинство сообщений об ошибках и предупреждениях.

-V — отображает версию инструмента ssh и завершает работу.

-v — печатает отладочные сообщения для ssh-соединения. Подробный режим полезен при устранении неполадок конфигурации.

-X — Используйте этот параметр, чтобы включить пересылку X11.

-x — Отключить пересылку X11.

 

Putti

В настройках Session прописываем адрес и порт сервера, Connection type: SSH, сохраняем конфигурацию и жмем Open:

 


 

Настройка SSH

Настроим конфигурационный файл, для этого выполним команду:

sudo nano /etc/ssh/sshd_config 

# — закомментированные поля. Описание всех полей можно найти здесь: https://help.ubuntu.ru/wiki/ssh.

Перед тем как вносить изменения в этот конфигурационный файл рекомендуется сделать его резервную копию, для этого можете использовать такую команду:

sudo cp /etc/ssh/sshd_config /etc/ssh/sshd_config.copy

Рекомендуется настроить следующие параметры:

Port — по умолчанию идет 22, но для безопасности лучше поменять, я поставил 2223.

Protocol — протокол SSH. Указывает, какой протокол должен использовать sshd. Возможные значения ‘1’ и ‘2’ — ssh1 и ssh2 соответственно. Возможна одновременная запись, при которой значения следует разделять запятыми.   По умолчанию — “2,1”

PermitRootLogin — если поля имеет значение no, то при подключении через SSH невозможно будет войти за root;

PubkeyAuthentication — разрешает/запрещает входить по публичному ключу;

AuthorizedKeysFile /etc/ssh/authorized_keys— показывает файлы с публичными ключами:Сервер должен знать, где ему следует искать публичный ключ пользователя. Для этого применяется специальный файл authorized_keys;

PasswordAuthentication — если поле имеет значение yes, то возможно будет войти с помощью пароля пользователя, иначе можно будет войти только по ключу(если PubkeyAuthentication yes)

DenyUsers, AllowUsers, DenyGroups, и AllowGroups — если у вас на сервере много пользователей, а доступ через ssh вы хотите разрешить только нескольким из них — вы можете использовать эти директивы;

После настройки необходимо перезагрузить ssh, для этого выполним команду:

sudo systemctl restart ssh

Если вы используете пользовательский SSH-порт (например, порт 2223), вам необходимо открыть этот порт на брандмауэре UFW, используя следующую команду.

sudo ufw allow 2223/tcp

 

Чтобы заблокировать все подключения SSH, введите следующую команду:

sudo ufw deny ssh/tcp

sudo ufw deny 2223/tcp [If using custom SSH port]

 

 

Устранение неполадок

В случае ошибок полезно бывает смотреть лог /var/log/secure либо использовать опции -v, -vv или -vvv для вывода детального лога соединения:

Ssh -v user@server

 

 

Источники

https://help.ubuntu.ru/wiki/ssh

https://help.ubuntu.com/

 

 

Понравилась статья? Поделиться с друзьями:
Добавить комментарий

;-) :| :x :twisted: :smile: :shock: :sad: :roll: :razz: :oops: :o :mrgreen: :lol: :idea: :grin: :evil: :cry: :cool: :arrow: :???: :?: :!:

Этот сайт использует Akismet для борьбы со спамом. Узнайте, как обрабатываются ваши данные комментариев.