Используйте файл PPK в Mac Terminal для подключения к удаленному соединению через SSH
Я использовал Putty в Windows XP и использовал файл .ppk для подключения к моим серверам Linux (несколько серверов).
На серверах у меня есть следующая папка и файл ~/.ssh/authorized_keys
Теперь я хочу использовать Mac для подключения через терминал. Я установил удаленные подключения к серверам вручную и хочу знать, как я могу настроить, используя файл ppk или закрытый/открытый ключ внутри него.
Обратите внимание: я уже использую закрытый/открытый ключ для входа в Windows, поэтому мне не нужно создавать новый ключ с помощью keygen, я просто хочу знать, как настроить теперь, когда у меня есть ключи. (Другими словами, у меня уже есть авторизованные списки ключей на сервере, а также открытый и закрытый ключ).
Ответы
Ответ 1
Вы можете 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 [email protected]
Закрытый ключ должен иметь жесткие настройки безопасности, иначе SSH жалуется. Убедитесь, что только пользователь может прочитать ключ.
chmod go-rw privatekey.pem
Ответ 2
Преобразование PPK в OpenSSh
OS X: установите Homebrew, затем запустите
brew установить шпатлевку
Поместите свои ключи в какой-либо каталог, например. вашей домашней папке. Теперь преобразуем ключи 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
подключиться к серверу ssh
ssh -i ~/.ssh/id_dsa [email protected]
Перенаправление портов для подключения удаленного сервера mysql
ssh -i ~/.ssh/id_dsa -L 9001:127.0.0.1:3306 [email protected]
Ответ 3
Существует способ сделать это без установки шпатлевки на вашем Mac. Вы можете легко преобразовать ваш существующий файл PPK в файл PEM с помощью PuTTYgen в Windows.
Запустите PuTTYgen, а затем загрузите существующий файл закрытого ключа с помощью кнопки "Загрузить". В меню "Конверсии" выберите "Экспорт ключа OpenSSH" и сохраните файл закрытого ключа с расширением .pem.
Скопируйте файл PEM на свой Mac и настройте его только для чтения вашим пользователем:
chmod 400 <private-key-filename>.pem
Затем вы сможете использовать ssh для подключения к удаленному серверу
ssh -i <private-key-filename>.pem [email protected]