it-swarm.asia

Bir kullanıcının root erişimine izin vermeden diğerine su göndermesine nasıl izin verebilirim?

Belirli kullanıcıların, hesabın şifresini bilmeden başka bir kullanıcı hesabına su atmasına izin vermek istiyorum, ancak başka bir kullanıcı hesabına (yani kök) erişime izin vermemek istiyorum.
Örneğin, Tom DBA'nın Oracle kullanıcısına su vermesine izin vermek istiyorum, ancak Tomcat kullanıcısına veya köküne izin vermemek istiyorum.

Bu/etc/sudoers dosyası ile yapılabilir hayal - mümkün mü? Öyleyse nasıl?

56
gharper

Evet, bu mümkün.

/ etc/sudoers öğesinde, eşittir öğelerini hemen takip eden öğe, komutun olarak yürütülmesine izin verilecek olan kullanıcıdır.

tom  ALL=(Oracle) /bin/chown tom *

Kullanıcı (tom) yazabilir Sudo -u Oracle/bin/chown tom/home/Oracle/oraclefile

45
Brent

/ Etc/sudoers klasörünüze benzer bir şey ekleyin

tom ALL=(Oracle) ALL

Daha sonra tom kullanıcısı, tom'a izin vermeden Sudo'yu -u seçeneğiyle Oracle kullanıcısı olarak çalıştırmak için kullanabilmelidir.

Yani Oracle kullanıcısı olarak bir Kabuk almak (Sudo'nuzun -i seçeneğine sahip olacak kadar yeni olduğu göz önüne alındığında).

Sudo -u Oracle -i
42

SADECE sorudaki yetenekleri sağlamak için,/etc/sudoers öğesine aşağıdakileri ekleyin:

tom            ALL=(Oracle)    /bin/bash

Sonra tom şunları yapabilir:

Sudo -u Oracle bash -i
9
karimofthecrop

Örneğin, Tom DBA'nın Oracle kullanıcısına su vermesine izin vermek istiyorum, ancak Tomcat kullanıcısına veya köküne izin vermek istemiyorum.

Son zamanlarda bunu bir sisteme yapmam gerekiyordu ve yıllar önce kullandığım sözdizimine su <user> İzin veren alternatif kurulum ile ilgili notlarımı bulmakta zorlandım. Benim durumumda birden çok kullanıcının belirli bir kullanıcıya su vermesine izin vermem gerekiyordu.

addgroup <groupName> Kullanarak diğer kullanıcıların şifre olmadan su yapabileceği bir grup oluşturun. Daha sonra bu grubu, parolasız olarak o kullanıcıya su yapmak istediğiniz her kullanıcıya ekleyin: usermod -a -G <groupName> <userName> (Veya usermod -a -G Oracle tom). Grup değişiklikleri bir sonraki girişe kadar etkili olmayabilir.

Not: Sizin durumunuzda grubunuz zaten var çünkü Oracle kullanıcısını adduser Oracle İle yaptığınızda Oracle grubu oluşturulmuş olacaktı.

Şimdi /etc/pam.d/su Ve aşağıdakilerin altında düzenleyin:

# This allows root to su without passwords (normal operation)
auth       sufficient pam_rootok.so

.. bölümün şöyle görünmesi için auth kural çizgileri ekleyin:

# This allows root to su without passwords (normal operation)
auth       sufficient pam_rootok.so
auth       [success=ignore default=1] pam_succeed_if.so user = <groupName>
auth       sufficient   pam_succeed_if.so use_uid user ingroup <groupName>

Bu durumda <groupName> Yerine Oracle girin. Bu, <groupName> Öğesinin parçası olan tüm kullanıcıların su <groupName>

Şimdi tomsu Oracle Olabilir ve diğer kullanıcılara aynı erişimi vermeniz gerekiyorsa, bunları Oracle grubuna ekleyin.

benzer soru burada

0
jtlindsey