Почему я могу использовать мои ключи RSA с приложением Git Bash, но не с Ubuntu WSL на моей машине с Windows?

Мне нужно было клонировать репозиторий из Gitea, и я обычно делаю это на своем Mac, но у меня нет моего Mac со мной. Я смог клонировать репозиторий в Windows после помещения ключа RSA в папку .ssh, которая находится в C \ Users \ me, при использовании Git Bash для Windows, но я не смог сделать это с WSL. Затем я попытался скопировать файлы в C \ Users \ me.ssh и поместить их в папку .ssh файловой системы Linux. Не сработало. Я попытался удалить папку WSL .ssh и сделать ее символической ссылкой на папку C \ Users \ me.ssh, но все еще не работала. Как я могу это исправить?

2
задан 21 September 2019 в 22:40

1 ответ

Трудно сказать с так ограниченной информацией, но я предполагаю, что это - проблема полномочий. ssh ключи являются частными данными. В Ubuntu/Linux они должны иметь строгие полномочия , поэтому только пользователь мог считать их. Можно установить верные полномочия следующими командами:

sudo chown -R "$USER:$USER" ~/.ssh # make sure the files are owned by the user
find ~/.ssh -type d -exec chmod 700 {} \; # set drwx------ permissions for the dirs
find ~/.ssh -type f -exec chmod 600 {} \; # set -rw------- permissions for the files
  • примечание, ~/ представляет пользователя $HOME каталог, т.е. /home/<user>/.

Другой возможный смутьян является способом, которым Вы создали файлы. В Windows, конце строк и с символами ASCII перевода строки и с возврата каретки, но Unix использует только перевод строки. В таком случае можно обработать ssh файлы ключей dos2unix , или можно использовать некоторые из других подходов, показанный здесь .

См. также:

1
ответ дан 23 October 2019 в 11:02

Другие вопросы по тегам:

Похожие вопросы: