96 lines
2.6 KiB
Plaintext
96 lines
2.6 KiB
Plaintext
|
# 🔐 Авторизация SSH по ключам
|
|||
|
|
|||
|
# Шаг первый - создание ключа на локальной машине
|
|||
|
На локальной машине вводим команду ssh-keygen для генерации ключа
|
|||
|
|
|||
|
```
|
|||
|
$ ssh-keygen
|
|||
|
Generating public/private rsa key pair.
|
|||
|
Enter file in which to save the key (/home/user/.ssh/id_rsa):
|
|||
|
```
|
|||
|
|
|||
|
Здесь у нас спрашиваю, путь к ключу.
|
|||
|
|
|||
|
В нашем случае изменим стандарное имя ключа на kvm
|
|||
|
|
|||
|
```
|
|||
|
/home/user/.ssh/kvm
|
|||
|
```
|
|||
|
|
|||
|
Далее необходимо дважды ввести пароль для ключа
|
|||
|
|
|||
|
```
|
|||
|
Enter passphrase (empty for no passphrase):
|
|||
|
```
|
|||
|
|
|||
|
После этого ключ будет успешно создан и в директории ~/.ssh будет два файла: kvm и kvm.pub
|
|||
|
```
|
|||
|
The key's randomart image is:
|
|||
|
+---[RSA 3072]----+
|
|||
|
| .. |
|
|||
|
+----[SHA256]-----+
|
|||
|
```
|
|||
|
|
|||
|
## Шаг второй - копирование публичного ключа на удалённую машину
|
|||
|
|
|||
|
```
|
|||
|
$ ssh-copy-id -i ~/.ssh/kvm user_name@remote_host
|
|||
|
```
|
|||
|
|
|||
|
На этот вопрос отвечаем yes
|
|||
|
|
|||
|
```
|
|||
|
Are you sure you want to continue connecting (yes/no/[fingerprint])?
|
|||
|
```
|
|||
|
|
|||
|
Вводим пароль от user_name
|
|||
|
|
|||
|
```
|
|||
|
user_name@remote_host's password:
|
|||
|
```
|
|||
|
|
|||
|
Если всё сделано верно, получаем следующий ответ
|
|||
|
|
|||
|
```
|
|||
|
Number of key(s) added: 1
|
|||
|
|
|||
|
Now try logging into the machine, with: "ssh 'user_name@remote_host'"
|
|||
|
and check to make sure that only the key(s) you wanted were added.
|
|||
|
```
|
|||
|
|
|||
|
Готово.
|
|||
|
|
|||
|
Можно ещё создать файл ~/.ssh/config, чтобы задать алиасы и другие настройки,
|
|||
|
например если у вас имеется несколько серверов, к которым необходимо подключаться.
|
|||
|
|
|||
|
```
|
|||
|
Host github.com
|
|||
|
User iiiypuk
|
|||
|
IdentityFile /home/user/.ssh/github
|
|||
|
|
|||
|
Host remote_host
|
|||
|
User alex
|
|||
|
HostName 0.0.0.0
|
|||
|
IdentityFile /home/user/.ssh/kvm
|
|||
|
ServerAliveInterval 59
|
|||
|
```
|
|||
|
|
|||
|
После таких настроек можно подключаться просто указывая хост
|
|||
|
|
|||
|
```
|
|||
|
$ ssh remote_host
|
|||
|
```
|
|||
|
|
|||
|
## Дополнительно
|
|||
|
|
|||
|
Добавить ключа на удалённую машину можно ещё одним способом.
|
|||
|
|
|||
|
Необходимо на удаленной машине добавить содержимое kvm.pub в файл ~/.ssh/authorized_keys
|
|||
|
|
|||
|
```
|
|||
|
$ echo public_key_string >> ~/.ssh/authorized_keys
|
|||
|
```
|
|||
|
|
|||
|
-----
|
|||
|
=> index.gmi 🔝 К unix заметкам
|