it-swarm-id.com

Bagaimana cara memaksa ssh klien untuk hanya menggunakan kata sandi auth?

Jika saya menggunakan pubkey auth dari mis .: Ubuntu 11.04 bagaimana saya bisa mengatur klien ssh untuk menggunakan auth kata sandi hanya ke server? (hanya diperlukan karena pengujian kata sandi di server, di mana saya default masuk dengan kunci)

Saya menemukan cara:

mv ~/.ssh/id_rsa ~/.ssh/id_rsa.backup
mv ~/.ssh/id_rsa.pub ~/.ssh/id_rsa.pub.backup

dan sekarang saya dimintai kata sandi, tetapi apakah ada cara resmi?

414
LanceBaynes

Saya baru-baru ini membutuhkan ini juga, dan muncul dengan ini:

ssh -o PreferredAuthentications=password -o PubkeyAuthentication=no example.com

Anda harus memastikan bahwa klien tidak dikonfigurasi untuk melarang otentikasi kata sandi.

636
scoopr

Saya telah menemukan jalan pintas untuk tujuan ini:

ssh user:@example.com

Perhatikan titik dua (:) dan kata sandi kosong setelahnya.

174
Halil Özgür

Serta metode yang diposting oleh scoopr, Anda dapat mengatur per opsi Host di file konfigurasi ssh klien Anda.

Dalam direktori .ssh Anda, buat file bernama config (jika belum ada) dan atur izin ke 600, Anda kemudian dapat membuat bagian yang dimulai dengan

Host <some hostname or pattern>

dan kemudian mengatur per opsi Host setelah itu, misalnya,

Host bob.specific.foo
user fred

Host *.home.example
user billy
port 9191

jadi kamu bisa

Host server.to.test
PubkeyAuthentication=no

dalam file itu, dan kemudian secara sederhana

ssh server.to.test

dan opsi akan dijemput.

38
EightBitTony

Baru-baru ini saya membutuhkan ini tetapi tidak ada opsi di atas yang berfungsi, ssh -v Menunjukkan bahwa opsi baris perintah yang dilewatkan melalui sakelar -o Dilampaui oleh nilai yang ditentukan dalam ~/.ssh/config ] file.

Apa yang berhasil adalah ini:

ssh -F /dev/null <username>@<Host>

Dari halaman manual ssh:

 -F configfile
     Specifies an alternative per-user configuration file.  If a
     configuration file is given on the command line, the system-wide
     configuration file (/etc/ssh/ssh_config) will be ignored. The default 
     for the per-user configuration file is ~/.ssh/config.

Penghargaan untuk jawaban ini: Bagaimana saya bisa membuat ssh abaikan .ssh/config?

14
adeelx

Saya mencoba beberapa jawaban ini, tetapi ssh -v terus menunjukkan kunci publik saya dikeluarkan dari direktori home saya. Namun, menentukan file identitas palsu melakukan trik untuk saya:

ssh -i /dev/null Host

Saya harus melakukan ini secara permanen (untuk bekerja di sekitar server SSH yang rusak di APU rak-mount APC - tetap jauh jauh dari hal-hal ini jika Anda peduli dengan keamanan - jadi saya akhirnya menempatkan opsi ke dalam saya file konfigurasi:

Host apc1 apc2
KexAlgorithms +diffie-hellman-group1-sha1
IdentityFile /dev/null
6
miken32

Dan juga pastikan, tidak ada BatchMode=yes aktif di .ssh/config. Kalau tidak, Anda tidak punya kesempatan, untuk mendapatkan Prompt kata sandi interaktif.

2
Gunnar Tiedt

Saya mungkin satu-satunya di dunia dengan masalah ini, tetapi saya memiliki ssh dari sistem operasi lain yang sedang berjalan (choco ssh di Windows dalam cygwin Shell) dilihat melalui which ssh

Jadi solusinya adalah

 /usr/bin/ssh [email protected]

Perhatikan path lengkapnya. Saya melakukan ini setelah saya menjalankan cyg-get openssh

1
Jonathan

@scoopr dan @Halil Özgür jawaban tidak berhasil untuk saya.

Ini bekerja untuk saya:

ssh -o UserKnownHostsFile=/dev/null -o StrictHostKeyChecking=no [email protected]

Sumber: http://linuxcommando.blogspot.com/2008/10/how-to-disable-ssh-Host-key-checking.html

1
shrx