Yanlışlıkla .ssh / yetkili_anahtarlarını kaldırmak ciddi bir hata mıdır?


13

Ubuntu 16.04'te SSH Anahtarları kurmak için yeniyim. Adını kaldırmak için yetkili bir anahtar arıyordum, anneancak tüm authorized_keysdosyayı sildiğimi düşünüyorum .

mike@mike-thinks:~$ rm /home/mike/.ssh/
authorized_keys  id_rsa           id_rsa.pub       known_hosts
mike@mike-thinks:~$ rm /home/mike/.ssh/authorized_keys 

Ciddi bir hata mı? Cevabınız evet ise nasıl yenilenir? Bu arada ben yaptım:

mike@mike-thinks:~/.ssh$ touch ~/.ssh/authorized_keys
mike@mike-thinks:~/.ssh$ ls
authorized_keys  id_rsa  id_rsa.pub  known_hosts
mike@mike-thinks:~/.ssh$ chmod 600 ~/.ssh/authorized_keys

İlk rmkomut dizinin içeriğini nasıl listeledi? Bu bir kopyalama hatası mı olmalı ls /home/mike/.ssh/?
Barmar

3
@Barmar, yolu otomatik olarak tamamlamak için sekmeye bastığınızda Bash'ta böyle görünüyor ve birden fazla seçenek var.
ilkkachu

3
Şimdi yedekleme ve geri yükleme hakkında düşünmenin en iyi zamanı .
Monica'yı eski

Yanıtlar:


21

~/.ssh/authorized_keysDosya anahtarların bir listesini içerir. Bunlardan biriyle eşleşen özel bir anahtara sahip olan herkesin bu makineye bağlanmasına ve bu kullanıcı hesabı altında uzaktan erişim elde etmesine izin verir ( ~yolun önündeki dalga işareti , bu dosyanın geçerli kullanıcının ana dizininin altında olduğunu gösterir).

Sunucusuna (makine Bağlanmak istediğiniz Açık için ):

Bu dosyayı sildiyseniz, hiç kimse özel anahtarlarını kullanarak bu kullanıcı hesabı altında kimlik doğrulaması yapamaz. Parola kimlik doğrulaması, devre dışı bırakılmadığı sürece yine de çalışır.

Genel anahtar kimlik doğrulama yöntemini kullanarak dosyayı yeniden oluşturmanız ve erişim izni vermek istediğiniz tüm ortak anahtarları eklemeniz gerekir.

İstemci (Bağlanmak istediğiniz makinede gelen , yani yerel makine):

Burada bir authorized_keysdosyaya ihtiyacınız yoktur , çünkü muhtemelen herhangi bir anahtarı yetkilendirmek istemez ve onlara yerel bilgisayarınıza uzaktan erişim izni vermezsiniz. Boş veya silinmiş olmalıdır.

İstemci üzerinde, yalnızca sunucuda yetkili özel anahtar dosyalarını ihtiyaç (yani hangi bunlara karşılık gelen kamuda tuşları var authorized_keyssunucudaki dosya) ve isteğe bağlı olarak uygun bir configve known_hostsdosyası.


Teşekkürler ! Hmm, genel anahtarlar, özel anahtarlar ve uzaktan erişim için gerçekten yeniyim. Bu benim kişisel makinem. Kimsenin makineme uzaktan erişimi olmadığını düşünüyorum, sanmıyorum.
Monica

Kimsenin makineye erişmesini istemiyorsanız, dosyayı kaldırın veya boş bırakın ve hazırsınız.
pLumo

2
Tamam, sanırım onu ​​yanlış okudun. authorized_keysYerel makinede değil sunucuda dosyaya ihtiyacınız var .
pLumo

3
ssh-keygenoluşturur id_rsave id_rsa.pubdeğildir authorized_keys. Ve kesinlikle.
pLumo

1
O ssh istemek oldukça yaygın olduğunu Not gelen masaüstü bilgisayara başka bir bilgisayara ve bu durumda kimlik doğrulaması tuşlarını kullanarak daha güvenlidir.
Karl Bielefeldt

3

Evet, tüm dosyayı kaldırdınız. Yeniden oluşturmak için tüm kullanıcıların ssh anahtarlarını sunucuda kopyalaması gerekir. Kullanabilirsiniz

ssh-copy-id user@hostname.example.com

Tüm anahtarları kaldırmak istemiyorsanız, dosyayı düzenleyin ve bir dahaki sefere yalnızca satırları kaldırın.


Teşekkürler, bu benim kişisel makinem. Henüz bir sunucu olarak hizmet ettiğinden emin değilim
Monica için Revolucion

2
Müşterinizde özel anahtar dosyasına ve bilinen_hostlara ve sunucuda pubkeys ile yetkili_anahtarlara ihtiyacınız var
Trietend
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.