GNU/Linux >> Belajar Linux >  >> Linux

otentikasi kunci publik HANYA gagal ketika sshd adalah daemon

Solusi 1:

Ya, SELinux kemungkinan penyebabnya. .ssh dir mungkin salah label. Lihat /var/log/audit/audit.log . Itu harus diberi label ssh_home_t . Periksa dengan ls -laZ . Jalankan restorecon -r -vv /root/.ssh jika perlu.

Solusi 2:

Saya memiliki masalah yang sama. Dalam kasus saya, restorecon dan chcon tidak berfungsi.

Saya tidak ingin menonaktifkan selinux. Setelah banyak penelitian, akhirnya saya menemukan itu karena direktori home saya dipasang dari tempat lain (NFS). Saya menemukan laporan bug ini yang memberi saya petunjuk.

Saya berlari:

> getsebool use_nfs_home_dirs
use_nfs_home_dirs --> off

untuk mengonfirmasi use_nfs_home_dirs dimatikan dan kemudian:

sudo setsebool -P use_nfs_home_dirs 1

untuk menyalakannya.

Sekarang saya dapat ssh ke mesin saya menggunakan kunci saya dan tanpa memasukkan kata sandi. Mengalihkan boolean use_home_nfs_dirs adalah apa yang diperlukan untuk saya.

Solusi 3:

Untuk menambahkan jawaban Mark Wagner, jika Anda menggunakan jalur direktori home kustom (yaitu bukan /home ), Anda perlu memastikan bahwa Anda telah menyetel konteks keamanan SELinux. Untuk melakukannya, jika Anda memiliki direktori home pengguna, misalnya, /myhome , jalankan:

semanage fcontext -a -e /home /myhome
restorecon -vR /myhome

Linux
  1. Kapan `relatime` Menjadi Default?

  2. Layanan OS Linux 'sshd'

  3. Izinkan login root ssh hanya dengan otentikasi kunci publik

  1. mkdir -p gagal saat direktori ada

  2. Penjelasan polkitd Unregistered Authentication Agent

  3. SSH menutup koneksi saat kunci diterima

  1. Ssh – Masih Mendapatkan Prompt Kata Sandi Dengan Ssh Dengan Otentikasi Kunci Publik?

  2. Otentikasi Pam Vsftpd Gagal?

  3. Tambahkan kunci ke authorized_users tanpa perlu memulai ulang sshd