Ketika saya SSH ke OS X, saya tidak memiliki gantungan kunci saya. Ketika saya menggunakan Terminal, saya lakukan

12

Langkah

  1. Buka Putty di desktop Windows saya.
  2. SSH ke MacBook Pro saya.
  3. cd ke klon github
  4. $ git push

Diharapkan

Everything up-to-date

Sebenarnya

Enter passphrase for key '/Users/whit537/.ssh/github':

Catatan

  • Kunci github terdaftar di Akses Keychain.
  • Saya dapat menunjukkan frasa sandi di Keychain Access.
  • Saya dapat menggunakan frasa sandi ini dengan sukses pada prompt di Putty.
  • Saya mendapatkan hasil yang diharapkan di jendela Terminal di MacBook.
  • uname -a: Darwin chad.whitacre 10.7.0 Darwin Kernel Versi 10.7.0: Sabtu 29 Jan 15:17:16 PST 2011; root: xnu-1504.9.37 ~ 1 / RELEASE_I386 i386

Pembaruan

2011-04-12: Saya menemukan securityalat melalui pertanyaan di bilah sisi Terkait (tidak menyadarinya dalam daftar kemungkinan jawaban saat mengeposkan). Saya mencoba berlari security unlock-keychaintetapi saya mendapatkan hasil yang sama. Sepertinya harus ada cara untuk melakukan ini. Sebenarnya ada dua kunci yang dipertanyakan, dan ini adalah kata sandi yang panjang, bukan kata sandi yang pendek, dan saya sering membutuhkannya di siang hari. Jadi saya punya beberapa insentif untuk sampai ke dasar ini.

2011-04-13: Ini kedengarannya menjanjikan . Saya melihat /tmp/launch-*****/Listenersfile di MacBook. Lain kali saya di PC saya akan mencoba pengaturan SSH_AUTH_SOCKdi sesi Putty saya. Jika itu berfungsi sekali saya akan melihat tentang sebuah .profilepengait untuk menemukan sesi peluncuran saat ini secara otomatis.

whit537
sumber

Jawaban:

18

Anda harus dapat membuka kunci gantungan kunci di Terminal seperti ini:

security unlock-keychain -p <YourPassword> ~/Library/Keychains/login.keychain

Jika Anda tidak ingin dimintai kata sandi, Anda dapat menyimpan kata sandi dalam file dan kemudian jalankan perintah seperti ini:

security unlock-keychain -p `cat ~/.file_with_your_password` ~/Library/Keychains/login.keychain

Harap dicatat bahwa menyimpan kata sandi gantungan kunci dalam file memiliki beberapa kelemahan terkait keamanan seperti yang dapat Anda bayangkan sehingga Anda harus memutuskan sendiri apakah ini pilihan untuk Anda.

Saya harap ini membantu

Besi
sumber
3
"some" memang, bukankah memasukkan kata sandi untuk mengakses gantungan kunci Anda dalam plaintext dalam file agak membuat semuanya sia-sia ...? Maka Anda juga bisa memiliki barang-barang yang dilindungi di gantungan kunci di plaintext, juga?
tml
... kemudian ikuti dengan jawaban ini
techraf
3

Gantungan kunci Anda terkait dengan login grafis OS X. Ketika Anda masuk ke komputer secara lokal itu membuka gantungan kunci Anda. Terminal, dengan bash berjalan di dalamnya, menyadari gantungan kunci Anda.

Ketika Anda login dari jauh melalui Putty, gantungan kunci Anda tidak dapat dibuka, dan Putty dan bash tidak mengetahuinya - bahkan jika Anda juga masuk secara lokal. Tautan di antara mereka tidak ada.

Jadi saya minta maaf, tetapi ketika Anda masuk melalui Putty Anda terjebak dengan harus memasukkan kata sandi.

Itu kecuali seseorang yang mengetahui bagian dalam sistem gantungan kunci OS X dapat datang dengan beberapa cara untuk menempatkan tautan itu secara manual di dalam sesi terhubung Putty Anda, tetapi menurut saya mungkin lebih banyak pekerjaan daripada mengetikkan kata sandi sekali dalam sementara.

Majenko
sumber
1
Ini adalah frasa sandi yang panjang untuk beberapa kunci yang sering saya gunakan, jadi saya memiliki beberapa insentif untuk menemukan mekanisme penautan yang Anda gunakan.
whit537
2

Seperti yang saya jelaskan dalam jawaban ini , Anda juga harus menjalankan

eval `ssh-agent -s`

selain membuka kunci rantai.

orkoden
sumber