SSH is one of the common network protocols. It provides secure data exchange on the network. Using this protocol, you can receive data from or send data to a remote computer. The traffic is encrypted, so the protocol is secure.
SSH - один из наиболее распространенных сетевых протоколов. Он обеспечивает безопасный обмен данными в сети. С помощью этого протокола можно получать данные с удаленного компьютера или отправлять на него. Трафик шифруется, поэтому протокол безопасен.
SSH use pair of keys for security - public and private:
- Private key is stored only on your computer and should not be transferred to anyone else. It is used to decrypt data.
- Public key is available for everyone and is used to encrypt data. It can be decrypted using a paired private key.
SSH использует пару ключей для обеспечения безопасности - публичный и приватный:
- Приватный ключ хранится только на вашем компьютере и не должен передаваться кому-либо ещё. Он используется для расшифровки данных.
- Публичный ключ доступен всем и используется для шифрования данных. Они могут быть расшифрованы парным приватным ключом.
Only you can decrypt the data using the private key, but anyone who has the public kay can encrypt it for you.
Только вы можете расшифровать данные с помощью приватного ключа, но любой владелец публичного ключа может для вас его зашифровать.
Прежде чем генерировать SSH-ключи, убедитесь, что у вас их ещё нет. По умолчанию директория с SSH-ключами находится в домашней директории пользователя. Перейдите в неё.
$ cd ~ # перешли в домашнюю директорию
Обычно SSH-ключи находятся в директории .ssh/. Проверить наличие этой директории и файлов в ней можно с помощью следующей команды.
$ ls -la .ssh/ # вывели список созданных ключей
Если папка пустая или её нет, всё в порядке.
Если есть файлы с похожими названиями, SSH-ключи уже создавались:
- id_dsa.pub
- id_ecdsa.pub
- id_ed25519.pub
- id_rsa.pub
Если вы не создавали эти файлы, удалите их все.
- Для генерации SSH-пары можно использовать программу ssh-keygen. Откройте терминал и введите следующую команду.
$ ssh-keygen -t ed25519 -C "электронная почта, к которой привязан ваш аккаунт на GitHub"
или
$ ssh-keygen -t rsa -b 4096 -C "электронная почта, к которой привязан ваш аккаунт на GitHub"
-
Укажите место хранения ключей. Простой вариант — сделать домашний каталог пользователя путём по умолчанию. Для этого нажмите Enter.
-
Программа запросит кодовую фразу (англ. passphrase) для доступа к SSH-ключу. Вы можете оставить поле пустым. Для этого нажмите Enter, а затем ещё раз Enter для подтверждения.
-
Готово! Теперь осталось проверить, что ключи действительно сгенерировались. Для этого вызовите эту команду.
ls -a ~/.ssh