Ответы:
Сделай это с Putty.
Linux: с вашим менеджером пакетов установите PuTTY (или более минимальные инструменты PuTTY):
sudo apt-get install putty-tools
apt-get install putty-tools
yum install putty
emerge putty
sudo pacman -S putty
OS X: установите Homebrew , затем запуститеbrew install putty
Поместите ваши ключи в какую-нибудь директорию, например, в вашу домашнюю папку. Теперь преобразуйте ключи PPK в пары ключей SSH: поиск в кэше
Чтобы сгенерировать закрытый ключ:
cd ~
puttygen id_dsa.ppk -O private-openssh -o id_dsa
и для генерации открытого ключа:
puttygen id_dsa.ppk -O public-openssh -o id_dsa.pub
Переместите эти ключи в ~/.ssh
и убедитесь, что для вашего личного ключа установлены права доступа:
mkdir -p ~/.ssh
mv -i ~/id_dsa* ~/.ssh
chmod 600 ~/.ssh/id_dsa
chmod 666 ~/.ssh/id_dsa.pub
Если вы уже пытались выполнить операцию « git clone », вам может потребоваться сделать это также
chmod 666 ~/.ssh/known_hosts
./ssh/config
файл Host mysite.com Hostname mysite.com IdentityFile ~/.ssh/id_dsa IdentitiesOnly yes
ssh-keygen -i -f id_dsa_1024_a.pub > id_dsa_1024_a_openssh.pub
-i
флаг импортируется из формата, отличного от openssh-f
флаг означает чтение из входного файлаИсточник: пост в блоге на burnz.wordpress.com
Получить закрытый ключ:
Откройте файл .ppk в puttygen:
puttygen ~/.ssh/id_dsa.ppk
экспортировать как openssh:
Конверсии → Экспорт ключа OpenSSH
Получить открытый ключ:
откройте как и ранее закрытый ключ с помощью puttygen, открытый ключ находится под открытым ключом для вставки в файл авторизованного OpenSSH_keys
Я подготовил контейнер Docker, чтобы сделать жизнь проще:
docker run --rm \
--volume=/path/to/file.ppk:/tmp/id_dsa.ppk \
--volume=/path/to/output:/tmp/out/ \
czerasz/putty-tools
Где:
/path/to/file.ppk
- локальный путь к вашему файлу ppk/path/to/output
- локальный путь к месту, где должен быть размещен закрытый и открытый ключ--volume=/path/to/file.ppk:/tmp/id.ppk
и нетid_dsa.ppk