Açıkça ifade edilmemiştir gibi, sshd için üzerinde izinlere çok sıkı varsayılan olarak authorized_keys
dosyaları. Yani, eğer authorized_keys
olduğunu yazılabilir kullanıcı dışında veya bir başkası için yazılabilir yapılabilir (sshd ile yapılandırılmış sürece kullanıcı dışında kimse tarafından, bu kimlik doğrulaması reddedebilir edeceğiz StrictModes no
)
"Yazılabilir hale getirilebilir" ile kastettiğim, üst dizinlerden herhangi birinin kullanıcı dışındaki herhangi biri için yazılabilir olması durumunda, bu dizinleri değiştirmesine izin verilen kullanıcıların izinleri değiştirebilecek / değiştirebilecek şekilde değiştirmeye başlayabilmeleridir.
Ayrıca, /home/username/.ssh
dizin kullanıcıya ait değilse ve dolayısıyla kullanıcının anahtarı okuma iznine sahip değilse, sorunla karşılaşabilirsiniz:
drwxr-xr-x 7 jane jane 4096 Jan 22 02:10 /home/jane
drwx------ 2 root root 4096 Jan 22 03:28 /home/jane/.ssh
Jane'in .ssh
dosyaya ait olmadığını unutmayın . Bu ile düzelt
chown -R jane:jane /home/jane/.ssh
Bu tür dosya sistemi izin sorunları ortaya ssh -v
çıkmaz ve günlük düzeyini DEBUG olarak belirleyene kadar sshd günlüklerinde (!) Görünmezler.
- Düzen
/etc/ssh/sshd_config
. LogLevel DEBUG
Orada bir yerde okuyan bir çizgi istiyorsun . Dağıtım tarafından sağlanan mekanizmayı kullanarak SSH sunucusunu yeniden yükleyin. ( service sshd reload
RHEL / CentOS / Scientific'te.) Zarif bir yeniden yükleme mevcut oturumları bırakmayacaktır.
- Kimlik doğrulamayı tekrar deneyin.
- Kimlik doğrulama tesisinizin kayıtlarının nereye gittiğini ve bunları okuduğunu öğrenin. (IIRC,
/var/log/auth.log
Debian merkezli dağıtımlarda; /var/log/secure
RHEL / CentOS / Scientific'te).
Dosya sistemi izin hatalarını içeren hata ayıklama çıktısında neyin yanlış gittiğini hesaplamak çok daha kolay. Değişikliği /etc/ssh/sshd_config
ne zaman yaptığınıza geri döndürmeyi unutmayın !