SUDO Şifresinden Farklı SSH / Giriş Şifresi


9

Kullanıcımı sudo durumuna yükseltmek için hesabıma giriş yapmak için kullandığım (GUI, shell veya SSH aracılığıyla) şifreden farklı bir şifre kullanmak istiyorum. Mümkün mü?

DÜZENLEME: Kök parolasını ayarlamak kök olarak oturum açmaya izin verdiğinden, bu gitmek için iyi bir yol değildir. Sistem çapında bir kök parola yerine kullanıcıya özel bir sudo parolası tercih ederim.


1
Bunu biraz açıklayabilir misiniz - bunu neden yapmak istiyorsun?
Doug Harris

1
Sorunun kendisini yeterince iyi açıkladığını hissediyorum, ancak amaç uzun, zor şifrelerle giriş güvenliğini sağlamak ve daha sonra sudo erişimi için farklı bir şifre kullanmak, böylece bir kullanıcının hesabından ödün vermek otomatik olarak sudo erişimi sağlamıyor.
Richard

İstediğiniz herhangi bir parolaya sahip olan rsa / dsa tuşları ile sudo yapabileceğinizi duydum.
Rob

Yanıtlar:


2

adam sudoers gelen:

rootpw          If set, sudo will prompt for the root password instead of the
                password of the invoking user.  This flag is off by default.

runaspw         If set, sudo will prompt for the password of the user defined
                by the runas_default option (defaults to root) instead of the
                password of the invoking user.  This flag is off by default.

Veya ssh ile şifre tabanlı girişleri tamamen yasaklayabilirsiniz. Uzaktan oturum açma için parola şifreli bir anahtar gerektir. O zaman sudo şifresini kullanmakta özgürsünüz. İlgili seçenek

kimden sshd_config

 PasswordAuthentication
         Specifies whether password authentication is allowed.  The default
         is “yes”.

Yardımın için teşekkürler Chas. Owens. Korkarım çözümünüzün bir yan etkisi, kök hesabın bir parolaya sahip olması ve bu nedenle açık bırakmak istediğim bir kapı olmayan kök olarak giriş yapmak mümkün olacaktır. Sistem çapında bir kök parola yerine kullanıcıya özel bir sudo parolası tercih ederim.
Richard

Kök oturum açmayı sshd_config'den de devre dışı bırakabilirsiniz
Rob

1

Bunu sudoers adamında mı arıyorsunuz?

   targetpw        If set, sudo will prompt for the password of the user
                   specified by the -u option (defaults to root) instead of the
                   password of the invoking user. 

Yardımınız için teşekkürler, johnshen64. Korkarım çözümünüzün bir yan etkisi, kök hesabın bir parolaya sahip olması ve bu nedenle açık bırakmak istediğim bir kapı olmayan kök olarak giriş yapmak mümkün olacaktır. Sistem çapında bir kök parola yerine kullanıcıya özel bir sudo parolası tercih ederim.
Richard

söz konusu kullanıcının kök kullanıcı olması gerekmez, yalnızca belirtmezseniz varsayılan olarak root olarak atanır. sizin için uygun olup olmadığını görmek için deneyebilirsiniz. unix oldukça açıktır ve bunlar hala sizin için işe yaramazsa, bir sarmalayıcı komut dosyası bile yazabilir veya sudo'yu (tam olarak neyi biliyorsanız) tam olarak istediğinizi yapmak için değiştirebilirsiniz.
johnshen64

@ johnshen64 Bence aynı şifre tüm kullanıcılar için kullanılacak gerçeğine itiraz ediyor.
Chas. Owens

Anlıyorum, ancak sudo'nun özel bir komut dosyasıyla değiştirilmesi gerektiğini zorunlu kılmak için her kullanıcı için $ {USER} foradmin diyelim bir yönetici kullanıcı oluşturulabilir, böylece bir kullanıcı her zaman -u $ {USER} foradmin belirtir.
johnshen64

1

SSH ile şifre oturum açmayı devre dışı bırakmaya ve tahmin edilmesi zor şifrenizi ayarlayabileceğiniz genel anahtar oturumuna izin vermeye ne dersiniz? Daha sonra yerel şifre daha kısa olabilir ve sudo tarafından kullanılabilir.

Bunun dışında /etc/pam.d/sudofarklı (veya ek) bir modül kullanmak üzere yapılandırmanız gerekecek, ilk bakışta pam_dialpassihtiyacınız olana izin verebilir.

Ayrıca, biri için LDAP yapılandırmasını diğeri için de yerel şifreler yapılandırabilirsiniz. Her şey ne kadar değişiklik yapabileceğinize ve yapmak istediğinize, hangi modüllerin kullanılabilir olduğuna vb.


Yardımın için teşekkürler Bram. İlk öneriniz işe yarar, anahtar dosyaları aktarmaya hazır olmadıkça ortak anahtar kimlik doğrulamasının çalışmak için engelleyici olabileceğini kaydedin.
Richard

1

ÇÖZÜM 1: newgrp

Kullanım durumunuzu ele almanın basit bir yolu :NOPASSWD, bir grup ve grup şifresi ile birlikte kullanmaktır :

Sudo kullanıcılarına bir satır ekleyin:

%rudo   ALL=(ALL:ALL) NOPASSWD:ALL

Parola korumalı bir grup oluşturun:

groupadd rudo
gpasswd  rudo # Enter passwd

Şimdi ayrıcalıksız bir kullanıcı olarak giriş yaptığınızda (zaten rudogrupta olmadığınızı varsayarak ), gruba giriş yapın rudo, bu noktada sizden şifre istenir.

login user
newgrp rudo

Artık sudogruba giriş yapmış olduğunuz sürece şifresiz çalıştırabilirsiniz .


ÇÖZÜM 2: runaspw

Bunu yapmanın daha iyi, muhtemelen daha güvenli bir yolu kullanır runaspw. seçenekle runaspwilişkilendirildiğinden, runas_defaultbu seçeneği de eklemeniz gerekir.

Zaten varsayılan %sudogrup girişine sahip olduğunuzu varsayarsak :

%sudo   ALL=(ALL:ALL) ALL

bu satırları sudoers dosyasına ekleyin:

Defaults:%sudo  runas_default=sudo
Defaults:%sudo  runaspw

Şimdi sudoşifreyle yeni bir kullanıcı ekleyin :

useradd sudo -d /nonexistent -s /usr/sbin/nologin -MNr
passwd sudo

Şimdi sudo grubu kullanıcılarından sudo kullanıcısının passwd'si istenecek, ancak yalnızca sudo grubundaki kullanıcılar sudo yapabilecektir (yukarıdaki grup çözümünün aksine, gruptaki herhangi birinin veya grup passwd'sinin sudo yapabileceği).

Küçük bir sorun, varsayılan runas kullanıcısı artık sudokök olarak sudo için açıkça kök belirtmeniz gerekir:

sudo -u root <cmd>

Ama bir takma ad ( alias sudo='sudo -u root') veya dolaylı sudo komutu tanımlamak için yeterince kolay .

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.