Bagaimana saya bisa memverifikasi konfigurasi sshd
?
Misalnya, saya ingin memastikan bahwa pengaturan ini diatur dan diterapkan:
AllowUsers user1 user2
PasswordAuthentication no
PermitRootLogin no
Apakah satu-satunya cara memverifikasi konten file secara manual sshd_config
, atau dapatkah saya memeriksa sshd
untuk memastikan?
ssh
configuration
JuanPablo
sumber
sumber
#UseLogin no
di file ssd_config Anda, itu berarti UseLogin adalah ya atau UseLogin tidak? Anda harus merujuk pada manual untuk menemukan nilai default, yang dapat diubah selama kompilasi. Sejauh ini dari pertanyaan yang tidak berguna ...Jawaban:
Ada mode tes diperpanjang, dipanggil dengan opsi baris perintah
-T
, yang melakukan ini. Sebagai contoh:Opsi ini sudah ada di Portable OpenSSH sejak 2008, lih. komit e7140f2 . Ini dirilis dengan 5.1p1, dibuat pada Juli 2008, lih. rilis catatan untuk 5.1 , sehingga ada di hampir semua instalasi server OpenSSH yang didukung hari ini.
sumber
/etc/ssh/sshd_config
file. Pengaturan dari file tersebut mungkin belum benar-benar aktif, sampaisshd
memuatnya dengan sesuatu seperti/etc/init.d/ssh reload
atau yang setara pada sistem Anda.apache2ctl -S
berperilaku dengan cara yang sama.Sementara ini tidak akan membuang semua definisi server Anda, Anda dapat mencoba menghubungkan ke server dengan bendera verbose debug:
ssh -v user@server
. Itu akan memberi Anda banyak informasi yang akan mencerminkan opsi yang diaktifkan dalam konfigurasi sshd.Misalnya, lihat output dari koneksi ini dengan -v switch (tanda tangan kunci, domain dan alamat IP yang disamarkan dengan sengaja):
Dari sana Anda dapat melihat metode otentikasi yang diizinkan: publickey, kata sandi, keyboard-interactive. Anda juga dapat melihat bahwa roaming tidak diizinkan oleh server ini, dan bahwa claudio pengguna dapat terhubung menggunakan kunci publiknya.
Anda dapat meningkatkan tingkat output informasi yang menetapkan lebih banyak huruf "v", tetapi kemudian Anda mungkin mendapatkan informasi level lebih rendah dari yang Anda inginkan.
sumber
konfigurasi sshd ini biasanya ditemukan dalam file berikut:
/etc/ssh/sshd_config
.Untuk menanyakan konfigurasi runtime, Anda dapat menggunakan mode uji lanjutan
sshd -T
yang juga memungkinkan Anda menguji kecocokan pengaturan klien.sumber
tidak ada cara yang diketahui untuk menanyakan konfigurasi instance sshd yang sedang berjalan, saya pikir, jika Anda merujuk server openssh. tergantung pada apa yang ingin Anda lakukan, Anda bisa menggunakan flag -t untuk menguji file konfigurasi untuk memastikan bahwa itu valid sebelum me-restart server, sehingga Anda tidak dikeluarkan, esp. jika Anda tidak memiliki akses out-of-band ke server.
sumber
Masalah dengan melihat file / etc / ssh / sshd_config seperti yang disarankan oleh jawaban lain adalah bahwa itu tidak selalu mengandung seluruh konfigurasi. File ini berisi nilai-nilai variabel konfigurasi apa pun yang ingin Anda atur untuk over-ride default, dan seperti yang dikirim berisi komentar default yang dibangun untuk sshd.
Jika file konfigurasi khusus dipasang sebagai pengganti versi yang dikirimkan, Anda kehilangan pandangan tentang default yang dikompilasi ke sshd, dan jika itu adalah custom build, default mungkin tidak cocok dengan komentar di sshd_config yang terlihat.
Selain itu, sangat mungkin untuk menjalankan sshd dengan file konfigurasi alternatif dengan opsi -f, sehingga yang disimpan di / etc / ssh / sshd_config mungkin tidak mencerminkan pengaturan saat ini.
Ini membuat pertanyaan itu cukup valid, dan sejauh yang saya tahu, tidak dapat dijawab dengan pasti.
sumber