Hetzner - DokuWiki

SSH/ru

Inhaltsverzeichnis

Что такое SSH?

SSH это программа, позволяющая запускать терминал на удалённом компьютере. При этом шифруется весь трафик передаваемый между клиентом и сервером.

Как установить SSH-сервер?

SSH-сервер установлен и активен в наших стандартных образах.

В случае установки своей копии операционной системы потребуется установить пакет openssh (название пакета может быть другим в различных дистрибутивах, например open-ssh). Если на сервере используется межсетевой экран, то следует в нём открыть 22 порт.

Как получить SSH-клиент?

В операционных системах семейства Linux/Unix SSH-клиент либо уже установлен, либо может быть установлен при помощи менеджера пакетов.

В операционных системах семейства Windows нет штатного SSH-клиента. Мы рекомендуем использовать PuTTY с greenend.org.uk. Скачайте putty.exe и сохраните в доступное место, например, на рабочий стол.

Как использовать SSH-клиент для подключения к SSH-серверу?

При использовании PuTTY для подключения к SSH-серверу введите имя сервера или его IP-адрес. При необходимости выберите SSH в качестве типа подключения и укажите порт 22. Для подключения осталось нажать кнопку Open.

При первом обращении к SSH-серверу будет показан отпечаток публичного SSH-ключа сервера. Просто нажмите Yes для сохранения этого ключа.

Далее, по запросу, введите имя пользователя (обычно root) и пароль. Если данные введены корректно, то будет предоставлен доступ к терминалу удалённого сервера

При использовании Linux систем используйте SSH-клиент ssh:

ssh <адрес сервера>

Здесь в качестве адреса сервера можно использовать как доменное имя сервера, так и IP-адрес.

Как убедиться, что подключение происходит к правильному серверу?

Как было сказано выше, при первом подключении к SSH-серверу, SSH-клиент показывает отпечаток публичного SSH-ключа и просит подтвердить его.

The authenticity of host 'example.org (192.0.2.42)' can't be established.
RSA key fingerprint is SHA256:DlxqI8BctJqAgyCfyExywbm9a7qdL7nqfMKgoQuGp5w..
Are you sure you want to continue connecting (yes/no)?

Вывод может отличаться в зависимости от типа ключей. Часто используемые типы ключей: RSA, DSA, SHA256, ECDSA и ED25519.

При автоматической установке операционной системы из Robot отпечаток ключа присылаются в письме о готовности сервера.

При активации Rescue system отпечаток отображается в Robot.

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

@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@    WARNING: REMOTE HOST IDENTIFICATION HAS CHANGED!     @
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
IT IS POSSIBLE THAT SOMEONE IS DOING SOMETHING NASTY!
Someone could be eavesdropping on you right now (man-in-the-middle attack)!
It is also possible that a host key has just been changed.
The fingerprint for the ED25519 key sent by the remote host is
SHA256:DlxqI8BctJqAgyCfyExywbm9a7qdL7nqfMKgoQuGp5w.
Please contact your system administrator.
Add correct host key in /home/user/.ssh/known_hosts to get rid of this message.
Offending ED25519 key in /home/user/.ssh/known_hosts:1
Password authentication is disabled to avoid man-in-the-middle attacks.
Keyboard-interactive authentication is disabled to avoid man-in-the-middle
attacks.
Permission denied (publickey,password).

Это предупреждение о возможной атаке «человек посередине». Ключ сам по себе не должен меняться (исключение: перезагрузка сервера в Rescue-system — у Rescue-system будет свой собственный ключ и отпечаток). Если причита изменения ключа сервера неизвестна, то следует прервать SSH-соединение и подключить к серверу KVM консоль для проверки состояния сервера.

Как сделать новый SSH-ключ сервера?

При автоматической установке через Robot или при использовании installimage все ключи генерируются автоматичски. Для замены ключей в установленной системе можно использовать команду ssh-keygen. Все существующие ключи сервера можно просмотреть в директрии/etc/ssh/ (ssh_host*):

# ls -l /etc/ssh
total 280
-rw-r--r-- 1 root root 242091 Oct  3  2014 moduli
-rw-r--r-- 1 root root   1689 Oct 17  2014 ssh_config
-rw-r--r-- 1 root root   2530 Dec 30 10:51 sshd_config
-rw------- 1 root root    668 Dec 30 10:44 ssh_host_dsa_key
-rw-r--r-- 1 root root    622 Dec 30 10:44 ssh_host_dsa_key.pub
-rw------- 1 root root    227 Dec 30 10:44 ssh_host_ecdsa_key
-rw-r--r-- 1 root root    194 Dec 30 10:44 ssh_host_ecdsa_key.pub
-rw------- 1 root root    432 Dec 30 10:44 ssh_host_ed25519_key
-rw-r--r-- 1 root root    114 Dec 30 10:44 ssh_host_ed25519_key.pub
-rw------- 1 root root   1675 Dec 30 10:44 ssh_host_rsa_key
-rw-r--r-- 1 root root    414 Dec 30 10:44 ssh_host_rsa_key.pub

Например, для обновления ключа ED25519 введите команду:

# ssh-keygen -t ed25519 -f /etc/ssh/ssh_host_ed25519_key -N 
Generating public/private ed25519 key pair.
/etc/ssh/ssh_host_ed25519_key already exists.
Overwrite (y/n)? y
Your identification has been saved in /etc/ssh/ssh_host_ed25519_key.
Your public key has been saved in /etc/ssh/ssh_host_ed25519_key.pub.
The key fingerprint is:
d5:1d:28:01:f7:c5:0f:fb:7b:43:07:08:1f:93:1c:c6 root@host
The key's randomart image is:
+--[ED25519 256]--+
|        ..o+o=o  |
|         .o+Eoo. |
|          .+o+.+ |
|         .  o o .|
|        S      o |
|               .o|
|              . o|
|               o.|
|                o|
+-----------------+

Какие команды можно использовать?

После получения доступа к терминалу удалённого сервера доступны все команды, которые есть на этом сервере. Если у вас нет опыта работы в терминале, пожалуйста, обратитесь к руководству установленной на сервере операционной системы.



© 2018. Hetzner Online GmbH. Alle Rechte vorbehalten.