Gunakan file PPK di Terminal Mac untuk terhubung ke koneksi jarak jauh melalui SSH [ditutup]

140

Saya telah menggunakan Putty pada Windows XP dan menggunakan file .ppk untuk terhubung ke server Linux saya (beberapa server).

Di server saya memiliki folder dan file berikut ~ / .ssh / Authorized_keys

Saya sekarang ingin menggunakan Mac untuk terhubung melalui terminal. Saya telah mengatur koneksi jarak jauh ke server secara manual dan ingin tahu bagaimana saya dapat mengatur menggunakan file ppk atau kunci privat / publik di dalamnya.

Harap dicatat: Saya sudah menggunakan login kunci pribadi / publik dari Windows jadi saya tidak perlu membuat kunci baru menggunakan keygen, saya hanya ingin tahu cara mengatur sekarang bahwa saya sudah memiliki kunci. (Dengan kata lain, saya sudah memiliki daftar kunci resmi di server, dan kunci publik dan pribadi).

Anand
sumber

Jawaban:

373

Anda bisa sshlangsung dari Terminal pada Mac, tetapi Anda harus menggunakan .PEMkunci daripada putty .PPKkunci. Anda dapat menggunakan PuttyGen di Windows untuk mengkonversi dari .PEMke .PPK, saya tidak yakin tentang sebaliknya.

Anda juga dapat mengonversi kunci menggunakan puttyuntuk Mac melalui portatau brew:

sudo port install putty

atau

brew install putty

Ini juga akan menginstal puttygen. Untuk puttygenmenampilkan .PEMfile:

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

Setelah Anda memiliki kunci, buka jendela terminal dan:

ssh -i privatekey.pem [email protected]

Kunci pribadi harus memiliki pengaturan keamanan yang ketat jika SSH mengeluh. Pastikan hanya pengguna yang dapat membaca kunci.

chmod go-rw privatekey.pem
Purpletoucan
sumber
1
port sudo ?? yang pasti tidak ada ... setidaknya di Mavericks
Pedro Luz
23
Anda juga dapat menginstal dempul menggunakan minuman : brew install putty. Perhatikan bahwa kita tidak menggunakan di sudosini;)
GabLeRoux
2
Jawaban yang berguna !! Terima kasih untuk itu!! Bagi mereka yang tidak memiliki port yang diinstal, dapat mengikuti tautan berikut untuk menginstal git: codingsteps.com/installing-and-using-putty-on-mac-os-x
Viraj
3
Apa artinya kesalahan ini ketika saya mencoba menjalankan perintah puttygen? Masukkan frasa sandi untuk memuat kunci: Pernyataan gagal: (random_active), fungsi random_byte, file ./../sshrand.c, baris 313. Abort trap: 6
fastasleep
6
Anda harus menginstal formula minuman dari HEAD, jadi silakan brew uninstallgunakan dulu brew install putty --HEAD. Ini berhasil untuk saya.
Dokie
31

Konversi PPK ke OpenSSh

OS X: Instal Homebrew, lalu jalankan

buat instalasi dempul

Tempatkan kunci Anda di beberapa direktori, misalnya folder rumah Anda. Sekarang konversi kunci PPK ke keypairs SSH: pencarian cache

Untuk menghasilkan kunci pribadi:

cd ~

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

dan untuk menghasilkan kunci publik:

puttygen id_dsa.ppk -O public-openssh -o id_dsa.pub

Pindahkan kunci-kunci ini ke ~ / .ssh dan pastikan izin diatur ke pribadi untuk kunci pribadi Anda:

mkdir -p ~/.ssh
mv -i ~/id_dsa* ~/.ssh
chmod 600 ~/.ssh/id_dsa
chmod 666 ~/.ssh/id_dsa.pub

terhubung dengan server ssh

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

Port Forwarding untuk menghubungkan server jauh mysql

ssh -i ~/.ssh/id_dsa -L 9001:127.0.0.1:3306 username@serverName
rinkesh
sumber
19

Ada cara untuk melakukan ini tanpa memasang dempul di Mac Anda. Anda dapat dengan mudah mengkonversi file PPK yang ada ke file PEM menggunakan PuTTYgen di Windows.

Luncurkan PuTTYgen dan kemudian muat file kunci pribadi yang ada menggunakan tombol Load. Dari menu "Conversions" pilih "Ekspor kunci OpenSSH" dan simpan file kunci pribadi dengan ekstensi file .pem.

Salin file PEM ke Mac Anda dan atur menjadi hanya-baca oleh pengguna Anda:

chmod 400 <private-key-filename>.pem

Maka Anda harus dapat menggunakan ssh untuk terhubung ke server jauh Anda

ssh -i <private-key-filename>.pem username@hostname
dasfrosty
sumber
9
There is a way to do this without installing putty on your Mac. You can easily convert your existing PPK file to a PEM file using PuTTYgen on Windows.Jadi cara terbaik untuk melakukannya di mac adalah dengan melakukannya di windows ?!
Roee Gavirel
6
Sebenarnya @sigi jawaban saya benar-benar dimaksudkan untuk membantu. Tujuan utama dari pertanyaan yang saya mengerti adalah untuk terhubung dari Mac ke server Linux menggunakan file .ppk yang ada dari mesin Windows. Mengingat pertanyaan, penanya memiliki akses ke mesin Windows kemudian mengonversi file .ppk ke file .pem sebelum menyalinnya ke Mac adalah solusi yang sama validnya dengan menyalin pertama kali ke Mac dan mengubahnya di sana. Saya menyarankan pendekatan ini karena beberapa orang mungkin memilih untuk tidak menginstal perangkat lunak tambahan pada Mac mereka yang tidak mereka perlukan.
dasfrosty
3
Jawaban ini sangat membantu, untuk alasan yang dipertahankan: Seseorang yang datang dari Windows ke Mac dengan file ppk yang ada lebih cenderung ingin mengekspor dari Windows daripada memasang PuTTY di Mac untuk tujuan tertentu. Inilah tepatnya yang saya pilih untuk dilakukan.
trevorsky