switch to ed25519

This commit is contained in:
2026-06-17 09:17:05 +03:00
parent 888a6639e8
commit e3d9efe8dd
2 changed files with 10 additions and 7 deletions
+1 -1
View File
@@ -3,7 +3,7 @@
* [Установка GIT в windows](src/GIT-install-win.md)
* [Конфигурация GIT](src/GIT-config.md)
* [SSH авторизация по ключам](src/SSH-key-auth-win.md)
* [SSH авторизация по ключам](src/SSH-key-auth.md)
* [SSH подпись](src/GIT-SSH-sign.md)
* [GPG подпись](src/GIT-GPG-sign.md)
* [Установка TortoiseGit](src/TortoiseGit.md)
@@ -1,5 +1,8 @@
# SSH авторизация по ключам
Этот мануал использует современные элептические ключи *ed25519*.
Если нужен старый вариант с *RSA* то в командах необходимо дополнительно указывать соответствующие ключи.
В интернете можно найти множество иснтрукций о том как настроить *ssh авторизацию по ключам* для использования с репозиториями, удаленным администрированием, различными программами контроля версий и т.д.
Встречаются даже такие извращения как использование Putty агента в связке с Tortoise Git на основе Putty сессий. Варианты с генерацией ключа с помощью Putty, конвертирование из одного формата в другой и подсовывание в Tortoise Git я, изрядно измучившись, тоже выкинул. Даже на самом GitHub лежит мануал с использованием агента ключей.
@@ -29,13 +32,13 @@
### 1. Открываем терминал и создаем ключ нашей локальной системы.
```
$ ssh-keygen -t rsa
$ ssh-keygen
```
На все вопросы нажимаем "Enter", отказываясь от ключевой фразы.
Как результат в домашней папке пользователя будет создана ключевая пара:
- .ssh/id_rsa (закрытый ключ)
- .ssh/id_rsa.pub (открытый ключ)
- .ssh/id_ed25519 (закрытый ключ)
- .ssh/id_ed25519.pub (открытый ключ)
Закрытый ключ мы не трогаем. Он секретный и остается только на этой машние.
Открытый ключ мы используем для помещения в репозитории и удаленные сервера.
@@ -48,7 +51,7 @@ $ ssh-keygen -t rsa
Если этого файла нет, то создаем его и добавляем в него строчку:
```
IdentityFile ~/.ssh/id_rsa
IdentityFile ~/.ssh/id_ed25519
```
~/.ssh/config вообще очень полезный файл. Рекомендую почитать что он еще умеет. Например туда можно прописать хосты типа:
```
@@ -73,7 +76,7 @@ $ ssh site
Если есть программа ssh-copy-id (в Linux и Git-bash она есть), прописываем публичный ключ на удаленный сервер.
```
$ ssh-copy-id -i ~/.ssh/id_rsa.pub user@server_ip
$ ssh-copy-id user@server_ip
```
Eсли ssh-copy-id нет, то можно сделать это вручную.
@@ -96,7 +99,7 @@ $ ssh user@server_ip
### 4. Добавляем ключ в репозитории
Для работы с репозиториями необходимо прописать туда публичный ключ.
Для этого копируем содержимое файла ~/.ssh/id_rsa.pub во все необходимые репозитории.
Для этого копируем содержимое файла ~/.ssh/id_ed25519.pub во все необходимые репозитории.
- GitHub: Settings -> SSH and GPG keys -> Nes SSH key
- GitLab: Preferences -> SSH Keys -> Add key