Как установить связку ключей ssh на Ubuntu с WSL
===================================================

 Пожалуйста, помогите мне понять, как установить связку ключей ssh на моем Ubuntu под WSL, чтобы я мог настроить свой  `.ssh / config`  файл для использования цепочки для ключей. Я попытался отредактировать свой файл конфигурации, который я создал сам в своей папке .ssh, чтобы добавить Usekeychain, но он не распознает это как команду. 

 Я попытался удалить свой ssh-сервер и переустановить его вручную, но ничего не изменилось. С тех пор я просто застрял в добавлении личного / открытого ключа в свою цепочку для ключей. 

 Вся суть того, что я делаю, заключается в том, чтобы иметь возможность подключаться к моему серверу с моего личного компьютера без необходимости добавлять мой закрытый ключ каждый раз, когда я хочу войти на свой сервер, но я не могу понять, как перейти об этом. Когда я учусь в сети, у человека настроен файл конфигурации, например: 

```
Host*
    AddKeysToAgent Yes
    UseKeychain Yes
    IdentityFile ~/.ssh/[his githubfile]

```

 Затем я попытался поместить его в свой файл конфигурации, но когда я попытался войти на свой сервер, он сказал, что UseKeychain не является командой. С тех пор я пытался найти, как добавить свой ключ в свою связку ключей и как настроить мой файл конфигурации. Пока я не столкнулся с этой проблемой, я мог настроить свой сервер и подключиться к нему, устанавливая свой закрытый ключ на сервере каждый раз, когда я подключаюсь к нему. 

 Я просто не знаю, как добавить свой ключ в связку ключей и как настроить мой файл конфигурации ssh для автоматизации. Мой учитель по интерфейсным мастерам использует Metatron CLI.

 Я просто сбита с толку и нервничаю. Я впервые на бэкэнде, и переход от одной проблемы к другой становится очень неприятным. Мои предыдущие проблемы были из-за того, что я использую WSL. 

 Пожалуйста, помогите мне в этом. Спасибо! 

 

 *Часть*  вашей проблемы, по крайней мере, заключается в том, что  `UseKeychain`  - это специфичный для MacOS параметр конфигурации, который дает указание добавить разблокированный ключ в связку ключей MacOS (часть этой ОС, которая может безопасно хранить его). Итак, мы можем предположить, что ваш инструктор работает на Mac. Похоже, что версия ssh для Mac будет читать цепочку ключей ОС, которая обычно разблокируется при первом использовании во всей ОС. Насколько я понимаю, в Ubuntu есть эквиваленты, такие как Gnome Keyring, но это не будет работать в WSL. 

 Итак, давайте начнем с того факта, что вам нужно как минимум удалить эту специфичную для MacOS опцию конфигурации в Ubuntu.

 Если ваш преподаватель предоставляет этот файл конфигурации студентам в качестве примера, им действительно следует сделать это правильно с помощью: 

```
Host*
    IgnoreUnknown UseKeychain    
    AddKeysToAgent Yes
    UseKeychain Yes
    IdentityFile ~/.ssh/[his githubfile]

```

 Это позволит ему работать как на Mac, так и на (90% +) остальной части Мир. 

 В WSL Ubuntu вам  *потребуется*  ввести парольную фразу хотя бы один раз в каждом сеансе, чтобы добавить ее в  `ssh-agent` . Если вы запускаете несколько экземпляров оболочки, вам обычно потребуется новый вызов  `ssh-agent`  в каждой оболочке. 

 В качестве альтернативы вы можете установить  [связку ключей Funtoo](https://www.funtoo.org/Keychain) , которая может (более) легко установить соединение с  `ssh-agent`  в каждом экземпляре оболочки. Это может позволить вам ввести парольную фразу только один раз, пока работает экземпляр WSL. 

```
sudo apt-get install keychain

```

 И добавьте что-то вроде следующего в ваш  `~ / .bashrc` : 

```
eval `keychain --eval --agents ssh id_rsa`

```

 Полные инструкции см. На официальном веб-сайте связки ключей . 

 Обратите внимание, что после завершения работы экземпляра WSL Ubuntu ( `wsl -l -v`  показывает «Остановлен»), тогда при следующем использовании необходимо будет снова ввести кодовую фразу. 

 

 Я предполагаю, что вы пытаетесь создать пару ключей и добавить ее к вашему ssh-agent, если это так, вот ваши инструкции. Если нет, нам всем понадобится дополнительная информация. 

 Простейшие инструкции. 

1. cd ~ / .ssh
2. ssh-keygen (ответьте на соответствующие вопросы) 
Теперь нам нужно добавить ключ в ssh-agent
3. eval  `ssh-agent -s`
4. ssh-add nameOfYourKey

 теперь у вас есть ключ, который может использовать ваша система. экспортируйте его в удаленную систему и настройте файл конфигурации