Update create ssh key authored by Николай Кальгин's avatar Николай Кальгин
## Создание SSH-ключа Создание SSH-ключа
==================
### С помощью OpenSSH С помощью OpenSSH в Windows
---------------------------
1) Воспользоваться утилитой "ssh-keygen.exe" из поставки Git: 1. Воспользоваться утилитой "ssh-keygen.exe" из поставки Git:
``` ```
C:\Program Files\Git\usr\bin\ssh-keygen -t rsa -C USERNAME@DOMAIN.TLD C:\Program Files\Git\usr\bin\ssh-keygen -t rsa -C USERNAME@DOMAIN.TLD
``` ```
где USERNAME@DOMAIN.TLD необходимо заменить на ваш email, например v.pupkin@isimplelab.com где USERNAME@DOMAIN.TLD необходимо заменить на ваш email, например v.pupkin@isimplelab.com
На запрос Passphrase нажать Enter. Задавать passphrase нет необходимости, в противном случае система будет требовать её при каждом обращении к удалённому репозиторию. На запрос Passphrase нажать Enter. Задавать passphrase нет необходимости, в противном случае система будет требовать её при каждом обращении к удалённому репозиторию.
В случае использования ОС Windows: 1. Полученные ключи разместить в `%USERPROFILE%\.ssh`. Имена файлов с ключами должны быть:
- при запуске утилиты через Far Manager или командную строку, необходимо запустить их из под Администратора - id_rsa - приватный ключ
- если в переменных окружения указать переменную HOME, то по умолчанию ключ будет сгенерен в `%HOME%\.ssh\id_rsa` - id_rsa.pub - публичный ключ
2) Полученные ключи разместить в `%USERPROFILE%\.ssh`. Имена файлов с ключами должны быть:
- id_rsa - приватный ключ
- id_rsa.pub - публичный ключ
3) Создать файл `%USERPROFILE%\.ssh\config` в котором прописать: 2. Создать файл `%USERPROFILE%\.ssh\config` в котором прописать:
``` ```
Host source.isimplelab.com Host source.isimplelab.com
Port 222 Port 222
``` ```
### С помощью PuTTY (только для пользователей Windows)
1) Скачать и установить [PuTTY](http://www.chiark.greenend.org.uk/~sgtatham/putty/download.html) С помощью PuTTY в Windows
-------------------------
1. Скачать и установить [PuTTY](http://www.chiark.greenend.org.uk/~sgtatham/putty/download.html)
2) Воспользоваться утилитой puttygen для генерации ключа. Комментарий к ключу (Key comment) - email пользователя, который указан в GitLab (USERNAME@DOMAIN.TLD). 2. Воспользоваться утилитой puttygen для генерации ключа. Комментарий к ключу (Key comment) - email пользователя, который указан в GitLab (USERNAME@DOMAIN.TLD).
3) Скопировать значение публичного ключа, для последующего указания его в настройках профайла Git Lab. Секретный ключ сохранить в удобную дирекорию - файл с данным ключом должен иметь расширение *.ppk. 3. Скопировать значение публичного ключа, для последующего указания его в настройках профайла Git Lab. Секретный ключ сохранить в удобную дирекорию - файл с данным ключом должен иметь расширение *.ppk.
4) Создать системную переменную `GIT_SSH`, прописать в ней путь к утилите plink.exe входящей в состав PuTTY. Например, `GIT_SSH=C:\PuTTY\plink.exe`. 4. Создать системную переменную `GIT_SSH`, прописать в ней путь к утилите plink.exe входящей в состав PuTTY. Например, `GIT_SSH=C:\PuTTY\plink.exe`.
_Если msysgit для Windows ставится после Putty, то в процессе установки можно выбрать использование PuTTY в качестве ssh агента - тогда эта переменная будет уже прописана._ _Если msysgit для Windows ставится после Putty, то в процессе установки можно выбрать использование PuTTY в качестве ssh агента - тогда эта переменная будет уже прописана._
5) Запусть pagent.exe входящий в состав PuTTY и добавить в него сохраненный секретный ключ (файл с расширением *.ppk). При добавлении ключа, pagent.exe попросит ввести пароль от ключа (passphrase). Для того чтобы при перезапуске системы, ключ добавлялся автоматически - необходимо создать ярлык для pagent.exe передав в качестве параметра путь к ключу, например, путь в ярлыке будет следующего вида: `C:\PuTTY\pagent.exe C:\keys\private_key.ppk`. Созданный ярлык добавить в Автозапуск. 5. Запусть pagent.exe входящий в состав PuTTY и добавить в него сохраненный секретный ключ (файл с расширением *.ppk). При добавлении ключа, pagent.exe попросит ввести пароль от ключа (passphrase). Для того чтобы при перезапуске системы, ключ добавлялся автоматически - необходимо создать ярлык для pagent.exe передав в качестве параметра путь к ключу, например, путь в ярлыке будет следующего вида: `C:\PuTTY\pagent.exe C:\keys\private_key.ppk`. Созданный ярлык добавить в Автозапуск.
6) В PuTTY создать и сохранить сессию подключения к хосту GitLab. 6. В PuTTY создать и сохранить сессию подключения к хосту GitLab.
Host: source.isimplelab.com Port: 222, во вкладке Connection/SSH/Auth выбрать соответствующий ppk ключ и выбрать параметр "Allow agent forwarding". *Сессию сохранить под именем source.isimplelab.com.* Host: source.isimplelab.com Port: 222, во вкладке Connection/SSH/Auth выбрать соответствующий ppk ключ и выбрать параметр "Allow agent forwarding". *Сессию сохранить под именем source.isimplelab.com.*
7) Выполнить подключение через созданную сессию, в качестве имени пользователя указать "git", сервер должен ответить "Welcome to GitLab %USERNAME%". Данный шаг, необходим, чтобы plink добавил source.isimplelab.com в список доверенных хостов. 7. Выполнить подключение через созданную сессию, в качестве имени пользователя указать "git", сервер должен ответить "Welcome to GitLab %USERNAME%". Данный шаг, необходим, чтобы plink добавил source.isimplelab.com в список доверенных хостов.
## Добавление SSH-ключа: Добавление SSH-ключа в GitLab
-----------------------------
1. Заходите в GitLab. 1. Заходите в [GitLab](https://source.isimplelab.com).
2. Щёлкаете по значку со всплывающей подсказкой "Profile settings". 2. Переходите в настройки [профиля пользователя](https://source.isimplelab.com/profile).
3. На странице профиля выбираете группу настроек "SSH Keys". 3. На странице профиля выбираете группу настроек [SSH Keys](https://source.isimplelab.com/profile/keys).
4. Нажимаете на кнопку "Add SSH Key". 4. В поле "Key" копируете содержимое файла "id_rsa.pub" (в случае использования PuTTY значение скопированное на шаге 3).
5. В поле "Title" вводите любой заголовок. 5. В поле "Title" вводите любой заголовок.
6. В поле "Key" копируете содержимое файла "id_rsa.pub" (в случае использования PuTTY значение скопированное на шаге 3). 6. Нажимаете на кнопку "Add key".
7. Нажимаете на кнопку "Add key".
\ No newline at end of file