Belge

Linux’ta Sudo grubuna Kullanıcı Ekleme

Bu kılavuzda, Linux’ta sudo grubuna nasıl kullanıcı ekleneceğini öğreneceğiz. Çoğu zaman, root olmayan bir kullanıcı olarak, Linux’ta yükseltilmiş ayrıcalıklara sahip komutları çalıştırmak istersiniz. Bunun olmasının tek yolu, kullanıcıya sudo ayrıcalıklarını bir sudo grubuna veya sudoers dosyasına ekleyerek vermektir.

Linux’ta Sudo grubuna Kullanıcı Ekleme

Debian ve türevlerindeki sudo grubu, CentOS ve benzeri türevlerdeki wheel olarak adlandırılır.

Bir kullanıcıya sudo/wheel grubuna eklenerek veya sudoers dosyasına /etc/sudoers.conf eklenerek sudo ayrıcalıkları verilebilir.

Peki sudo/wheel grubu ile sudoers dosyası arasındaki fark nedir?

Sudo/wheel grubu, sudoers dosyasında tanımlananlara dayalı olarak sahip olduğu ayrıcalıklara sahiptir. Sudoers dosyasında aşağıdaki satırları göreceksiniz;

Debian türevlerinde;

# Allow members of group sudo to execute any command
%sudo   ALL=(ALL:ALL) ALL

RHEL türevlerinde;

## Allows people in group wheel to run all commands
%wheel  ALL=(ALL)       ALL

Bir grubun ön ekinin % olduğunu UNUTMAYIN.

Bu nedenle, yukarıdaki iki satıra dayalı olarak, sudoers güvenlik ilkesi, kullanıcıların sudo komutunu kullanmadan önce kendilerini doğrulamasını gerektirir.

Ancak, çağıran kullanıcı root ise, hedef kullanıcı çağıran kullanıcı ile aynıysa veya politika, kullanıcı veya komut için kimlik doğrulamasını devre dışı bıraktıysa parola gerekli değildir.

Linux’ta sudo grubuna Kullanıcılar ekleyin

Wheel veya sudo grubuna kullanıcı eklemek için aşağıdaki sözdiziminde usermod komutunu kullanabilirsiniz;

usermod -aG sudo/wheel USERNAME

Açıklama;

  • a -G seçeneği ile belirtilecek olan ek gruba kullanıcıyı eklemek demektir.
  • Gkullanıcının eklendiği ek grupları belirtir.
  • sudo/wheel kullanıcının ekleneceği grubu belirtir
  • USERNAM sudo grubuna eklenen kullanıcının adını belirtir.

Örneğin Debian ve türevlerinde, john adlı bir kullanıcıyı sudo grubuna eklemek için;

usermod -aG sudo john

Kullanıcı gruplarını onaylamak için id komutunu kullanın.

id john
uid=1002(john) gid=1002(john) groups=1002(john),27(sudo)

RHEL ve CentOS gibi türevlerinde;

usermod -aG wheel john
id john
uid=1001(john) gid=1001(john) groups=1001(john), 10(wheel)

Linux’ta sudoers dosyasına kullanıcı ekleme

Peki, kullanıcılara sudoers dosyasına ekleyerek açıkça sudo ayrıcalıkları verebilirsiniz. Ayrıcalıkları sudoers dosyasında tanımlanan bir kullanıcının sudo veya wheel grubuna eklenmesi gerekmez.

Sudoers dosyasını düzenlemek için visudo komutunu kullanın. Bu, sudoers dosyasını varsayılan düzenleyicinizle açar, EDITOR değişkeni ayarlanmamışsa genellikle nano’dur.

Vim’i düzenleyiciniz olarak kullanmak içinaşağıdaki komutu çalıştırın;

export EDITOR=vim

Ardından, visudo komutunu çalıştırın. Sudoers dosyasını sudo ayrıcalığı olmayan sıradan bir kullanıcı olarak düzenleyemeyeceğinizi unutmayın.

visudo

Sudoers dosyasını açtıktan sonra bir kullanıcıya sudoers haklarını aşağıdaki gibi verebilirsiniz.

Örneğin, john kullanıcısının komutları sudo ayrıcalıklarıyla çalıştırmasını sağlamak için aşağıdaki satırı sudoers dosyasına eklemeniz yeterlidir.

john ALL=(ALL:ALL) ALL 

Bu satır, john kullanıcısının kimlik doğrulaması üzerine sudo ile tüm komutları çalıştırmasına izin verir.

Belirli bir kullanıcı grubunun komutları sudo ile çalıştırmasına izin vermeniz gerekiyorsa, grup adını grubunuzla değiştirerek aşağıdaki satırı eklemeniz yeterlidir.

%groupname ALL=(ALL:ALL) ALL

Bu satırları basit bir şekilde özetlemek gerekirse;

  • john or groupname: sudo ayrıcalıklarının atandığı kullanıcıyı veya grubu belirtir.
  • ALL (before =): Kullanıcının/grubun sudo ayrıcalıklarına sahip olabileceği ana bilgisayarı belirtin. Bu, kullanıcının/grubun tüm ana bilgisayarlarda sudo kullanabileceği anlamına gelir.
  • ALL:ALL (within the brackets): İki nokta üst üste işaretinden önceki ALL, komutu çalıştıran kullanıcıyı, iki nokta üst üste işaretinden sonraki ALL ise komutu çalıştıran kullanıcının grubunu belirtir.
  • ALL (the last section): Kullanıcının çalıştırabileceği komutu belirtir. Bu durumda, herhangi bir komut anlamına gelir.

Kullanıcıya sudo hakları verildikten sonra, artık ayrıcalıklı komutları yürütebilir ve bu komutların önüne sudo ekleyerek çalıştırmalarına izin verilir.

Yazının orijinalini buradan okuyabilirsiniz.