it-swarm-tr.com

Parolasız SSH ile kimlik doğrulaması yapılırken Sudo parolası

Hepsi Amazon EC2'de birbirine bağlı birkaç kutu var, her biri SSH (rsync, vb.) Aracılığıyla birbirleriyle otomatik iletişim halinde. Bu nedenle, bu makinelerin her birinde, parola gerektirmeden birbirlerine SSH girmelerini sağlamak için SSH anahtarları oluşturdum. Aynı şekilde, kişisel hesabım da anahtar tabanlı ve şifresiz.

Bildiğim kadarıyla iyi belgelenmiş yöntemleri kullanarak SSH'yi uygun şekilde güvenceye aldım.

Bu yapılandırma altında, Sudo kullanmak için bir parola vermem gerektiğini fark ettim. su root, Hiçbir yere varamıyorum, çünkü root'un bir şifresi yok. Ancak, bir Sudo -i, Parola istenmedi ve hemen root atandım. Bu beni biraz endişelendiriyor.

Yani, iki soru:

  1. Gerekir bu beni endişelendiriyor mu yoksa çok paranoyak mıyım?
  2. Anahtar tabanlı SSH kimlik doğrulaması kullanırken Sudo parolası belirlemek mümkün müdür?

Bu kutulardan bazıları web sunucularıdır ve şüpheli kalitede olmaktan korktuğum şeylerin web uygulamalarını barındırmaktadır. (Onları ben yazmadım, bu yüzden şüpheli!) Apache var ve sunucularda izinler bir çok ayrıcalıksız kullanıcı (www-data) dosyaları sunacak şekilde yapılandırılmış, ama korkum şu ki - bir şekilde - bir saldırgan bir web uygulamasının güvenliğini tehlikeye atabilir, daha ayrıcalıklı bir kullanıcıya ayrıcalıkları artırabilir ve sonra sadece Sudo -i kök.

Yazılımımdaki www verilerinin ayrıcalıklarını yükseltmesine izin verecek bir güvenlik açığının farkında değilim, ancak Sudo kullanmak için yerinde bir parola olmasını tercih ederim.

Ayrıca, kayıt için: SSH ile giriş yapıp passwd çalıştırarak bir şifre ayarlamaya çalıştım, ancak bir hata attı. Tam ifadeyi hatırlamıyorum, ama bu bir "jeton" hakkında bir şeydi. Her iki durumda da şifre yapışmadı, bu yüzden burada temel bir seviyede bir şeyi yanlış anladığımı düşündürüyor.

Konuyla ilgili herhangi bir aydınlatma çok takdir edilecektir. Teşekkürler.

- Güncelleme: 7 Aralık 2011 -

Düşünceli açıklamalar için teşekkürler, hepsi. Aslında sorun /etc/sudoers. Beni o yöne yönlendirdiğiniz için teşekkürler.

Bunu tartışmayı tamamlamak için belgelediğimi düşündüm. /etc/sudoers, Aşağıdaki satırlarla karşılaştım:

# ubuntu user is default user in ec2-images.  
# It needs passwordless Sudo functionality.
ubuntu  ALL=(ALL) NOPASSWD:ALL

Aslında, ubuntu kullanıcısını ayrıcalıklı işlemlerim için kullanıyorum (yine de, web sunucusu yalnızca www-data), bu yüzden yaşadığım sorunu açıklıyor sanırım.

Herkes bir tahmin takip etmek istiyorsa neden ubuntu kullanıcı şifresiz Sudo işlevselliğine ihtiyaç duyar, duymak isterim. Aksi takdirde, en azından şimdilik, bence yeterince yalnız bırakıp konfigürasyonu olduğu gibi bırakacağım. Varolmayan bir sorunu önleyici olarak çözmeye çalışırken bir çalışma sistemini kırmak istemiyorum.

Zaman ayırdığınız ve uzmanlığınız için teşekkür ederiz.

27
Chris Allen Lane

Sudo şifresi sorulmamasının nedeni, kullanıcı (veya kullanıcı grubunuz)/etc/sudoers içinde NOPASSWD'nin etkinleştirilmiş olmasıdır. Bu dosyayı visudo ile root olarak düzenleyebilirsiniz.

Parolasız kimlik doğrulamayla ilgili olarak, ortak anahtar kimlik doğrulamasının sunuculara kimlik doğrulaması için tercih edilen bir yöntem olduğu doğrudur. Tahmin edilecek bir şifre yoksa, kaba kuvvet girişimi başarılı olamaz.

Hiçbir kök parolanızın olmaması bazı en iyi uygulamaları ihlal eder, ancak doğru bir şekilde belirttiğiniz gibi, kutuya girmek için bir anahtar gerekiyorsa, muhtemelen iyidir. Bir root parolasına sahip olmak, sshd_config dosyasında devre dışı bırakılması gereken kök olarak oturum açmak için SSH'yi kullanmanızı teşvik edebilir.

Sahip olduğum tek soru, son paragraflarınızdan biriyle ilgilidir:

Ayrıca, kayıt için: SSH ile giriş yapıp passwd'yi çalıştırarak bir şifre belirlemeye çalıştım, ancak bir hata attı. Tam ifadeyi hatırlamıyorum, ama bu bir "jeton" hakkında bir şeydi. Her iki durumda da şifre yapışmadı, bu yüzden burada temel bir seviyede bir şeyi yanlış anladığımı düşündürüyor.

Sudo'yu rootlamak için bir şifre ayarlayamadınız mı? Yoksa normal bir kullanıcı olarak mı? Ortak anahtar kimlik doğrulamasının yerinde olması, kullanıcı alanı parolası veya kök parola belirlemenizi engellememelidir. Görünüşe göre karşılaşıyorsunuz SuperUser'da tartışılan bu sorun , umarım bu biraz yardımcı olacaktır.

Umarım sorunuzun güvenlik tarafına cevap verdim; daha fazla bilgiye ihtiyacınız varsa yorum veya takip eklemekten çekinmeyin!

14
dshaw

SSH anahtar doğrulaması etkinken root atamak için bir parola ayarlayabilirsiniz. Ubuntu'da örneğin root hesabı "devre dışıdır". Kurulum sırasında oluşturulan ve root ayrıcalığı ile çalışacak hesaba Sudo gönderebilirsiniz.

Eğer koşarsan www-data$Sudo -i aşağıdaki mesajı almalısınız:

www-data is not in the sudoers file.  This incident will be reported.

Bahsedilen dshaw genellikle Ubuntu'da devre dışı bırakılır

# %Sudo ALL=NOPASSWD: ALL

Bu yüzden bir şifre girmeden Sudo -i'yi çalıştırıp root alamayacağınız için kontrol etmek iyidir.

Bu yardımcı olur umarım.

3
Bassec