Войдите в SSH с помощью файла .ppk на терминале Ubuntu


40

У меня есть производственный сервер. Для входа на сервер я должен использовать .ppkфайл.

Как войти в систему с помощью Ubuntu Terminal и .ppkфайла?

Я попробовал это:

ssh -i location/file.ppk username@server-ip

но он показывает сообщение об ошибке.


1
Возможная
копия Unable

Ответы:


44

Вы можете конвертировать .ppkфайл в Ubuntu с установкой putty-tools. Так

apt-get install putty-tools

Затем вы можете преобразовать .ppkфайл puttygenв формат OpenSSH следующим образом:

puttygen <the_key.ppk> -O private-openssh -o <new_openssh_key>.key

37

Если у вас есть только файл .ppk, то было бы полезно создать файл .pem, а затем подключиться к нему с помощью этого сервера.

На вашем компьютере putty-toolsс Ubuntu установите следующую команду:

sudo apt-get install putty-tools

Теперь конвертируйте ваш .ppkфайл .pemв следующую команду:

puttygen yourkey.ppk -O private-openssh -o yourkey.pem

Установите правильное разрешение на использование .pemфайла с помощью следующей команды:

chmod 400 yourkey.pem

Теперь подключитесь к вашему серверу, используя следующую команду:

ssh -i yourkey.pem serverusername@server-ip

Надеюсь, это поможет.


1
Самый высокий ответ, чтобы упомянуть .pem и разрешения.
Маккензм

22

.ppk это формат файла, используемый программой Windows PuTTYgen.

Вы можете попробовать следующую процедуру, опубликованную Kaleb Pederson в StackOverflow:

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

  1. Открыть PuttyGen
  2. Нажмите Загрузить
  3. Загрузите свой закрытый ключ
  4. Перейти к Conversions->Export OpenSSH и экспортируйте свой закрытый ключ
  5. Скопируйте свой закрытый ключ в ~/.ssh/id_dsa(или id_rsa).
  6. Создайте версию открытого ключа RFC 4716, используя ssh-keygen

    ssh-keygen -e -f ~/.ssh/id_dsa > ~/.ssh/id_dsa_com.pub
    
  7. Преобразуйте версию открытого ключа RFC 4716 в формат OpenSSH:

    ssh-keygen -i -f ~/.ssh/id_dsa_com.pub > ~/.ssh/id_dsa.pub
    

Вы можете сделать это «вне системы», если не можете получить инструменты для замазки.
Маккензм

6

Установите инструменты замазки, если у вас их нет в Linux:

sudo apt-get install putty-tools

Сгенерируйте файл pem и выполните следующую команду:

puttygen keyname.ppk -O private-openssh -o keyname.pem

Поместите pemkey.pemфайл в свой ~/.sshкаталог:

cp keyname.pem ~/.ssh

Установите файл pem, чтобы иметь соответствующие разрешения:

chmod 400 keyname.pem

Это оно.

Используя наш сайт, вы подтверждаете, что прочитали и поняли нашу Политику в отношении файлов cookie и Политику конфиденциальности.
Licensed under cc by-sa 3.0 with attribution required.