> For the complete documentation index, see [llms.txt](https://bartt-hypernova.gitbook.io/workstation-setup/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://bartt-hypernova.gitbook.io/workstation-setup/git/generaciya-ssh-klyucha.md).

# Генерация SSH ключа

Для работы с репозиториями проектов необходимо использовать защищенный протокол ssh. Он требует, чтобы у каждого пользователя был свой личный ssh ключ (точнее пара открытый/закрытый ключ).

Если у вас уже есть ssh ключ, то вы можете использовать его при настройке рабочего GitLab аккаунта. В противном случае, ключ нужно сгенерировать. Для этого выполните следующие действия (предполагается использование OpenSSH):

{% tabs %}
{% tab title="Windows" %}
1\. Запустите Git Bash.

Если git установлен в системе, то нажмите "Пуск" и начните вводить с клавиатуры слово git. Достаточно быстро поиск наведет вас на цель - Git Bash.

<div align="left"><img src="/files/-MZSjgiIuhAzYhwDcxc1" alt=""></div>

2\. В открывшемся окне терминала выполните команду, заменив `<comment>` на ваш рабочий email:

```bash
ssh-keygen -t ed25519 -C "<comment>"
```

В процессе работы ssh-keygen задаст несколько вопросов, а также попросит ввести пароль для защиты ключа. **Ничего не вводите**, просто нажимайте Enter до тех пор, пока вопросы не закончатся. В будущем это упростит вам работу.

<div align="left"><img src="/files/-MZSkhCvR1qkHqUhtPFL" alt=""></div>

3\. Следом выполните команду:

```bash
cat ~/.ssh/id_ed25519.pub
```

Она выведет в терминал ваш только что созданный **публичный ключ** - строка вида: `ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIL6bmP94QzgirYFWAQ+0prP1dbPslapfaTHOmkaakOIs george.gromov@hypernovateam.com`

Выделите эту строку (мышкой), **скопируйте** в буфер обмена (Ctrl + Insert) и **временно где-нибудь сохраните**. Она потребуется на следующем шаге.

<div align="left"><img src="/files/-MZSlF2jaAUVKhsMP967" alt=""></div>
{% endtab %}

{% tab title="MacOS" %}
1\. Откройте окно терминала.

2\. Выполните команду, заменив `<comment>` на ваш рабочий email:

```bash
ssh-keygen -t ed25519 -C "<comment>"
```

В процессе работы ssh-keygen задаст несколько вопросов, а также попросит ввести пароль для защиты ключа. **Ничего не вводите**, просто нажимайте Enter до тех пор, пока вопросы не закончатся. В будущем это упростит вам работу.

<div align="left"><img src="/files/-MZSqVsPwVL2wlKEnbof" alt=""></div>

3\. Следом выполните команду:

```bash
cat ~/.ssh/id_ed25519.pub
```

Она выведет в терминал Ваш только что созданный **публичный ключ** - строка вида:`ssh-ed25519 AAAAC3NzaC1lZDI1NTE5AAAAIL6bmP94QzgirYFWAQ+0prP1dbPslapfaTHOmkaakOIs george.gromov@hypernovateam.com`

Выделите эту строку (мышкой), **скопируйте** в буфер обмена (Cmd + C) и **временно где-нибудь сохраните**. Она потребуется на следующем шаге.

![](/files/-MZSqhxNs0KvbfyrJXwd)
{% endtab %}
{% endtabs %}

Далее новый публичный ключ нужно добавить ваш GitLab аккаунт:

{% content-ref url="/pages/-MZSnTQY23Eh9\_1jhvWJ" %}
[Регистрация SSH ключа](/workstation-setup/git/registraciya-ssh-klyucha.md)
{% endcontent-ref %}
