SSH, publickey ve B kullanıcısı ile bağlantı kurulamıyor (A kullanıcısı)


4

ÇÖZÜLDÜ. user_BBeni kandıran , grubun ana dizinindeki yazılabilir kısımdı.

Bunun hakkında fikirleri tükeniyor. Her ipucu çok takdir edilecektir.

Bu kurulumu göz önünde bulundurun:

  • Bir sunucu Sçalışan Ubuntu, kullanıcılar boldewyn, user_Aveuser_B
  • İki dizüstü bilgisayar Ave Bher biri yerel bir kullanıcısı olan boldewyn( id_rsaoturum açacak bir anahtarı var S) ve ikinci bir anahtar id_rsa_A/ id_rsa_B. Tüm tuşlar içinde saklanır /home/boldewyn/.ssh. Her ikisi de çalışan Ubuntu.
  • user_Ave user_Büzerinde Sboş şifreleri var, giriş sadece publickey ve SSH üzerinden mümkün olmalıdır.

    +--------+            +-------------------+            +--------+
    | laptop |            |       server      |            | laptop |
    |   A    |            |         S         |            |   B    |
    |        |            |                   |            |        |
    +--------+    SSH     +-------------------+    SSH     +--------+
    |id_rsa_A|------------|< user_A   user_B >|------------|id_rsa_B|
    +--------+            +-------------------+            +--------+
    |id_rsa  |------------|<    boldewyn     >|------------|id_rsa  |
    +--------+            +-------------------+            +--------+
    

Ne çalışıyor:

  • Herhangi bir dizüstü bilgisayardan boldewyn( id_rsaveS:/home/boldewyn/.ssh/authorized_keys

  • Dizüstü bilgisayardan Akullanıcı olarak giriş yapın user_A( id_rsa_Ave S:/home/user_A/.ssh/authorized_keys: kullanarak ssh -i id_rsa_A user_A@S)

Sorunum: Dizüstü bilgisayarda Baynı ayar başarısız oluyor user_B. Oturum açamıyorum S, çünkü herhangi bir nedenden dolayı anahtar kabul edilmiyor ve şifre istemi geliyor ( user_Bşifre yok, seçenek yok).

Kontrol ettiklerim:

  • Dizüstü bilgisayarda B:

    • ~/.sshİçeriğinin haklarını ve içeriğini kontrol etti
    • kamu bölümünü koymak id_rsa_Biçinde boldewyns .authorized_keysve ssh -i id_rsa_B boldewyn@S: işleri (anahtar bozuk olmadığından ya da öylesine)
    • ssh -vvv: Pekala, pek yardımcı değil: Sadece bana bir noktada, publickeyartık yöntemi atladığını söyledi . Sebep yok.
  • Sunucuda S:

    • Üçlü kontrol edilmiş user_Bs .authorized_keysdosyası
    • /home/*/.sshTüm içeriğinin haklarını ve içeriğini kontrol etti (özellikle karşılaştırıldı user_Ave user_B)
    • Ayarlandı $HOME(kontrol edildi sudo -u user_B -i) kontrol edildi
    • Tüm kullanıcıların olduğundan, Kontrol Edildi /etc/ssh/sshd_configs AllowUsers(ve AllowGroupsbu arada,)

Diğer şey:

Tek fark arasına kadar gelebilir user_Ave user_Bben birlikte ikinci yarattı yani, adduser -M(bir ev dizini oluşturmak yoktur; zaten daha önce var). Bununla birlikte, /home/user_Btüm ilgili çocukların user_Bve birincil gruba ait olduğunu üç kat kontrol ettim .


4
sshdS hata ayıklama modunda çalıştırın : sudo sshd -rdp 1234- genellikle yardımcı olur. ( -p 1234
SSH'ye

Bunu üç kere kontrol mü /home/user_B(yanı sıra /home/user_B/.sshve /home/user_B/.ssh/authorized_keys) kullanıcıya hariç yazılabilir değil uygun izinleri vardı yani mod 755 veya daha fazla kısıtlayıcı?
Gilles,

@grawity: İpucu için teşekkürler. Kurulumu hazır bulundurduğumda hemen bugün akşamları bunu deneyeceğim.
Boldewyn

@Gilles: Evet, yaptım. Aslında, user_As (s) için ayarlanan izinleri (çalışmayan) olanlarla (s) çalıştırılan dosyaları dir user_B. Tamamen aynılar (açıkça dosya sahipliğinin dışında).
Boldewyn

Yanıtlar:


8

/home/user_B( /home/user_B/.sshVe de /home/user_B/.ssh/authorized_keys) uygun izinlerin olup olmadığını üç kez kontrol ettiniz mi : kullanıcı dışında yazılabilir değil , yani mod 755 veya daha fazla kısıtlayıcı?


Sorunumu çözdüm!
Mingjiang Shi

0

Bu anahtarları nasıl ürettiğinle ilgili olabileceğini düşünüyorum. Tekrar denerdim. Anahtarlar ssh-keygen tesisi ile üretilir. Belki bir anahtar seti üretildiğinde, üretim sürecinde bir parola kullanılmıştır. Bir parola istendiğinde, sadece enter tuşuna basmayı deneyebilirsiniz. Bu anahtarın pub bölümünü ubuntu'ya kopyalayın. .Ssh / approved_keys dosyasındaki rahatsız edici girişi sildiğinizden emin olun. İkinci bir düşünce: Eğer pub dosyası kedise> (yerine) yerine bir pub kullandığınızdan emin olun.

Biraz şaşırdım. Yöntemlerimi iş yerimde, Solaris ve Cygwin kullanarak ve evimde Centos, Slackware, Debian ve Ubuntu'dan oluşan Linux Lan'ımda kullandım. Özel anahtarın herkese açık anahtarla eşleşmemesi mümkün mü? Anahtarlarınızı oluşturduğunuzda bir çift alırsınız, kasık olan geleneksel olarak hedef makinenin ana dizini altındaki .ssh / yetkili anahtarlar dosyasına kopyalanır. Anahtarları yeniden oluşturursanız, yeni .pub dosyasının kopyalanması gerekir. Yeni özel anahtar, eski olanla eşleşmeyecek. Ana dizinde bir .authorized_keys klasörü bulunduğunu farkettim. Bunu hiç denemedim. Normal yerleşimin /home/user_name/.ssh/authorized_keys klasöründe olduğunu düşünüyorum. Solaris'in herhangi bir sürümünü yaklaşık 6 sürümden Freebsd ve Linux'un çeşitli yinelemelerinden ve lezzetlerinden kullanmakta hiç sorun yaşamadım. İyi şanslar

Alan


1
Anahtarlar sorun yok gibi görünüyor: id_rsa_B'nin genel kısmını kalın harflerle yaz. Authorized_keys ve ssh -i id_rsa_B boldewyn @ S: çalışır (anahtar bozuk ya da öylesine değil)
Arjan

Deneme için teşekkürler, apolinsky, ama, evet, Arjan'ın dediği gibi, anahtarı boldewyns hesabıyla kullanarak kontrol ettim .
Boldewyn
Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.