Используйте файл PPK в Mac Terminal для подключения к удаленному соединению через SSH - PullRequest
128 голосов
/ 13 августа 2010

Я использовал Putty в Windows XP и использовал файл .ppk для подключения к моим серверам Linux (несколько серверов).

На серверах у меня есть следующая папка и файл ~ / .ssh / authorized_keys

Теперь я хочу использовать Mac для подключения через терминал. Я настроил удаленные подключения к серверам вручную и хочу узнать, как я могу настроить его, используя файл ppk или закрытый / открытый ключ в нем.

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

Ответы [ 3 ]

328 голосов
/ 14 октября 2010

Вы можете ssh прямо из терминала на Mac, но вам нужно использовать клавишу .PEM вместо клавиши putty .PPK.Вы можете использовать PuttyGen для Windows, чтобы конвертировать из .PEM в .PPK, хотя я не уверен в обратном.

Вы также можете конвертировать ключ, используя putty для Mac через port или brew:

sudo port install putty

или

brew install putty

Это также установит puttygen.Чтобы получить puttygen для вывода файла .PEM:

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

Когда у вас есть ключ, откройте окно терминала и:

ssh -i privatekey.pem user@my.server.com

Закрытый ключ должен иметь строгую защитунастройки в противном случае SSH жалуется.Убедитесь, что только пользователь может прочитать ключ.

chmod go-rw privatekey.pem
27 голосов
/ 21 октября 2015

Конвертировать ППК в OpenSSh

OS X: установите Homebrew, затем запустите

Заварка для установки шпатлевки

Поместите ваши ключи в какой-нибудь каталог, например, ваша домашняя папка. Теперь преобразуйте ключи PPK в пары ключей SSH: поиск в кэше

Чтобы сгенерировать закрытый ключ:

кд ~

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

соединиться с ssh сервером

ssh -i ~/.ssh/id_dsa username@servername

Перенаправление портов для подключения к удаленному серверу MySQL

ssh -i ~/.ssh/id_dsa -L 9001:127.0.0.1:3306 username@serverName
17 голосов
/ 02 марта 2016

Есть способ сделать это без установки замазки на вашем Mac. Вы можете легко преобразовать существующий файл PPK в файл PEM, используя PuTTYgen в Windows.

Запустите PuTTYgen, а затем загрузите существующий файл закрытого ключа с помощью кнопки «Загрузить». В меню «Преобразования» выберите «Экспорт ключа OpenSSH» и сохраните файл закрытого ключа с расширением .pem.

Скопируйте файл PEM на ваш Mac и установите его только для чтения вашим пользователем:

chmod 400 <private-key-filename>.pem

Тогда вы сможете использовать ssh для подключения к удаленному серверу.

ssh -i <private-key-filename>.pem username@hostname
...