Saya ingin melakukan koneksi ssh tanpa kata sandi untuk proyek subversi. Saat ini saya menggunakan ssh + svn, dan ini sedikit mengganggu, karena saya harus mengetikkan kata sandi kapan saja saya ingin bertransaksi dengan server.
Saya telah menemukan beberapa tutorial di web tentang cara membuat kunci untuk ssh tanpa kata sandi, tetapi mereka semua tampaknya menganggap bahwa saya menggunakan nama pengguna yang sama pada sistem jarak jauh seperti halnya saya untuk sistem rumah saya. Namun, nama pengguna yang saya gunakan untuk ssh + svn berbeda dengan nama akun pengguna pada sistem yang saya jalankan. Bagaimana cara mengatur ini dengan benar? Saya belum beruntung hanya dengan mengubah nama di file kunci.
sumber
.ssh/id_rsa.pub
, dan mengunggahnya ke server jarak jauh. Ketika saya membuatnya, itu berakhir dengan localusername @ sistem lokal. Itu harus diubah menjadi remoteusername @ remotesystem, kan? Baik secara lokal maupun jarak jauh?id_rsa.pub
keauthorized_keys
pada sistem jarak jauh. Itu akan berhasil.Ada dua cara untuk melakukan ini:
1) masukkan user @ ke dalam url svn; ini memberitahu svn + ssh untuk masuk sebagai pengguna itu. Saya pikir ini semacam ide buruk dari sudut pandang pemeliharaan karena hal-hal seperti eksternal yang mengarah ke bagian lain dari repositori tidak akan berfungsi dengan benar.
2) membuat ~ / .ssh / config (didokumentasikan sebagai ssh_config ) yang mengatakan sesuatu seperti:
dengan cara ini setiap upaya ssh ke sistem orang lain akan default untuk menggunakan pengguna lain. Yang berguna bagi Anda saat melakukan ssh secara manual maupun saat Anda menggunakan svn.
sumber
Anda tidak harus memiliki nama pengguna yang sama di kedua mashine. Selama Anda menghasilkan kunci (
ssh-keygen
) Anda harus menyalin garis dari~/.ssh/id_rsa.pub
atau~/.ssh/id_dsa.pub
(tergantung pada jenis kunci) dari server lokal dan menambahkannya~/.ssh/authorized_keys
pada remote.Jika Anda tidak ingin mengetik
remoteuser
setiap kali menambahkan ke~/.ssh/config
:PS. The nama kunci mungkin dalam bentuk
localuser@localhost
tetapi hanya nama . Itu bisa saja baikmyfavouritekey@myfavouritecomputer
dan tidak ada yang peduli.sumber
ssh-copy-id
skrip umum tetapi tidak standar yang disebutkan di atas. Saya mengenalinya karena tidak semua sistem yang saya gunakan datangssh-copy-id
, jadi saya telah mengetik sesuatu seperti itu lebih dari beberapa kali. :)ssh-copy-id
. Saya biasanya menggunakanvim
atauseahorse
;)Setelah saya membuat .ssh / config, dan jalankan:
Saya mendapatkan kesalahan:
lalu saya tambahkan
chmod 600 .ssh/config
, dan setelah itu, itu berjalan lancar.sumber