Используйте файл PPK в терминале Mac для подключения к удаленному соединению по SSH


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

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

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

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

3 110

3 ответа:

Вы можете 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

Преобразование PPK в OpenSSh

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

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

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

Для генерации закрытого ключа:

Cd ~

Puttygen id_dsa.ppk-O private-openssh-o id_dsa

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

Puttygen id_dsa.ППК -о государственно-OpenSSH-это о id_dsa, который находится.паб

Переместите эти клавиши в ~/.ssh и убедитесь, что для вашего закрытого ключа установлены разрешения private:

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

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

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

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

chmod 400 <private-key-filename>.pem

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

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