Saya menggunakan Manajer Jendela Keren
Bagaimana saya bisa menambahkan kunci pribadi secara permanen dengan kata sandi?
Terinspirasi oleh jawaban di sini saya telah menambahkan kunci pribadi di ~ / .ssh / config
Isi ~ / .ssh / config:
IdentityFile 'private key full path'
Izin ~ / .ssh / config: 0700
Tetapi itu tidak berhasil untuk saya.
Jika saya menambahkan kunci secara manual di setiap sesi, itu berfungsi tetapi saya mencari cara yang lebih elegan (bukan di .bashrc)
EDIT :
- Menggunakan versi Gnome classic (tanpa efek).
Setelah menambahkan kunci SSH ssh-copy-if
ke host jarak jauh, saya mendapatkan prompt berikut di terminal (Terminal GNOME 3.0.1) ketika saya masuk:
ssh -i .ssh/Password-Protected-Key user@host
Enter passphrase for key '.ssh/Password-Protected-Key':
- Menggunakan Awesome window manager v3.4.10. Saya sudah
gnome-keyring-dameon
jadi saya membunuh pid lain dan menjalankangnome-keyring-daemon --start | grep SOCK
(saya juga menambahkannya di. Profil) output (grep):
SSH_AUTH_SOCK=/tmp/keyring-2LXXXX/ssh
Saya mengikuti langkah-langkah yang sama persis dan saya juga tidak punya dialog ssh-add GUI.
EDIT 2 :
Saya membuat kunci yang dilindungi kata sandi baru dari Ubuntu 11.10 mesin virtual pada kesatuan dan saya masih tidak bisa mendapatkan prompt kata sandi.
EDIT 3 : Tampaknya ini tidak bisa berfungsi di Awesome window manager :( dan mungkin lainnya ..
sumber
Jawaban:
Jika Anda menggunakan Unity, atau manajer sesi yang memulai gnome-keyring-daemon, Anda dapat menggunakan Kuda Laut (Kata Sandi dan Kunci) untuk membuat kunci, menentukan untuk apa, menetapkan frasa sandi, dan membagikan kunci publiknya ke komputer yang akan Anda gunakan dengan ssh. Tidak ada perintah terminal yang diperlukan.
Anda membuat kata sandi dengan:
memilih File-> Baru dan pilih Secure Shell Key. Tekan Lanjutkan.
Ketikkan nama deskriptif, lalu pilih
Create and set up
.Anda akan diminta memasukkan frasa sandi dua kali (yang kedua kali untuk memeriksa bahwa Anda tidak salah memasukkannya pertama kali.
Masukkan komputer yang mana kunci publik harus digunakan dan nama pengguna pada komputer yang Anda gunakan adalah kunci tersebut. Kunci publik akan disalin ke komputer lain itu, meminta kata sandi Anda di komputer itu jika perlu.
Sekarang
My Personal Keys
tab akan menampilkan kunci.Dengan anggapan gnome-keyring-daemon dimulai dengan benar ketika Anda masuk ke Lightdm, dan lagi oleh manajer sesi Anda, ketika Anda pertama kali menggunakan kunci dengan ssh Anda akan diminta untuk frasa sandi. Dalam kotak dialog ini Anda dapat memberikan frasa kunci, pilih
Details
kontrol dan minta agar kunci kunci dibuka kuncinya setiap kali Anda masuk - secara otomatis menyediakan kunci ini. tekanOKAnda mungkin tidak diminta dengan cara ini jika ada kunci lain yang tersedia untuk masuk ke komputer jarak jauh.
Setelah ini selesai, tab Kuda Laut pertama
Passwords
akan mencantumkan "Buka kata sandi entri" untuk nama kunci. Klik pada segitiga sebelum " Kata Sandi: Login" untuk melihatnya.sumber
Membuat kunci SSH yang dilindungi kata sandi tetap ada di seluruh sesi dan reboot
Ini mungkin yang Anda inginkan: memasukkan frasa sandi kunci sekali membuatnya tersedia kapan saja Anda masuk. Ini akan bekerja untuk sebagian besar pengguna yang menggunakan desktop Unity atau Gnome.
Saat Anda terhubung setelah menambahkan kunci publik ke server jauh, Anda akan mendapatkan dialog GUI ssh-add:
Luaskan "Detail" dengan mengklik pada segitiga, dan Anda akan mendapatkan yang di bawah ini. Standarnya adalah "kunci kunci saat saya keluar", yang mengharuskan Anda memasukkan kata sandi sekali per sesi:
Ubah untuk membuka kunci secara otomatis ... setiap kali saya masuk , yang berarti akan berfungsi kapan saja Anda telah masuk ke sesi Anda - itu "dikontrol" oleh kata sandi pengguna Anda. Ini akan bertahan di seluruh reboot.
Masukkan frasa sandi kunci satu kali dan hanya itu - kunci tersebut dikonfirmasi melalui login awal yang sukses ke lingkungan desktop Anda.
Jika Anda menggunakan AwesomeWM
Diuji dengan instalasi baru AwesomeWM di userid baru
Secara default, AwesomeWM menggunakan
ssh-agent
:Untuk mendapatkan langkah-langkah di atas untuk bekerja, Anda harus menggunakan
gnome-keyring-daemon
daemon otentikasi SSH, bukan ssh-agent. Saat Anda masuk menggunakan lightdm, PAM dimulaignome-keyring-daemon
yang akan mencoba membuka kunci kunci masuk dengan kata sandi buka Anda, tetapi Anda harus menambahkan konfigurasi Anda agar tetap berjalan dan menggunakannya.Tambahkan yang berikut ini ke ujung Anda
~/.xprofile
:Perintah dalam
~/.xprofile
file akan dieksekusi oleh xsession sebelum memulai manajer jendela yang luar biasa dan akan mengikatnya dengangnome-keyring-daemon --login
proses yang dimulai oleh PAM melalui variabel lingkungan di atas.ssh user@host
, Anda harus mendapatkan popup di atas - gunakan itu untuk memecahkan kode kunci pribadi Anda di ~ / .ssh / dan simpan kunci pribadi Anda ke keyring login gnome-keyring.Solusi umum untuk lingkungan window manager / desktop
adalah menggunakan
gnome-keyring-daemon
alih-alihssh-agent
. Untuk ini, Anda harus menjalankangnome-keyring-daemon
dan menginisialisasi dan melakukan ini setelahssh-agent
dimulai atau tidak memulaissh-agent
sama sekali.ssh
(sebenarnya ssh-add) memutuskan agen otentikasi mana yang harus dihubungi berdasarkan nilaiSSH_AUTH_SOCK
variabel lingkungan, yang dapat diperiksa dengan mengetikexport | grep SOCK
ini adalah formulir
SSH_AUTH_SOCK=/tmp/ssh-MMFyVlI22130/agent.22130
untuk ssh-agent (BUKAN apa yang Anda inginkan untuk dapat menyimpan kunci Anda)tetapi dari bentuk
SSH_AUTH_SOCK="/tmp/keyring-mEQB5g/ssh"
untuk gnome-keyring-daemon (yang Anda inginkan)jadi periksa nilainya, dan periksa
ps aux | grep keyring
apakah gnome-keyring-daemon sedang berjalan, dan jika demikian, inisialisasi dengan hasil darignome-keyring-daemon --start
Anda kemudian dapat memeriksa identitas tersimpan terkait di konsol dengan mengetik
ssh-add -l
- jika itu menunjukkan "tidak ada agen" maka Anda membuat kesalahan dengan mengkonfigurasi gnome-keyring-daemon.sumber
~/.ssh
, tidak perlu digunakanssh-add
- dialog akan muncul saat pertama kali digunakan. Perhatikan bahwa ini hanya berfungsi di Unity / Gnome - Saya menemukan dalam obrolan bahwa OP menggunakan AwesomeWM , di mana ini tidak berfungsi!Solusi untuk masalah Anda menggunakan agen ssh. Anda hanya perlu membuka kunci kata sandi kunci Anda sekali, setelah itu disimpan dalam memori oleh agen dan digunakan secara otomatis
ssh-keygen -t dsa
ssh-copy-id
untuk ini)ssh-add
sebelum masuk ke sistem jarak jauh, ini akan meminta frasa sandi Anda dan menyimpannyassh-agent dijelaskan dengan baik di .net, misalnya di sini:
Keuntungan lain dari ssh-agent adalah jika Anda login ke sistem jarak jauh dengan
ssh -A [email protected]
Anda dapat ssh lebih lanjut dari komputer domain.name ke komputer ketiga yang berisi kunci publik Anda tanpa setiap menyalin kunci pribadi Anda ke komputer domain.name (dan itu tidak pernah melihat kunci pribadi Anda, hanya tantangan / respons satu kali).sumber
kamu bisa menggunakan
ssh-add 'filename or fullpath'
Anda akan dimintai kata sandi jika kunci Anda memilikinya
maka Anda dapat terhubung dengan kata sandi keluar
sumber
Jika Anda ingin bekerja dengan kunci pribadi, lakukan:
Kemudian:
salinan
.ssh/id_rsa.pub
ke tujuan mesin.ssh/authorized_keys
melalui via scpSemua selesai.
Terhubung ke mesin jarak jauh tanpa kata sandi:
Dan kami tidak memiliki prompt kata sandi.
sumber