LINUX LAB

CentOS sudo SİSTEMİ: superuser

centos superuser sudo

Dikkat: Bu yazıda geçen komutlar hem Linux tabanlı Centos hem de Linux tabanlı  Red Hat (RHEL) işletim sisteminde geçerlidir.

sudo Sistemi Ne İşe Yarar? superuser Nedir?

Şirketinizde kullanılan Linux tabanlı sistem binlerce kişiye hizmet veriyor olabilir. Böyle büyük bir sistemi yönetmek de kolay değildir. Bundan dolayı büyük bir Linux sistemini yöneten ana yöneticiye yani root‘a yardımcı alt sistem yöneticilerine ihtiyaç duyulabilir. Bu alt sistem yöneticileri superuser‘lardır.

Çözüm olarak bazen sıradan kullanıcılara “root” şifresi verilmektedir. Bu da yapılan işlemi kimin yaptığına dair log kayıtları tutma açısından veya sınırlı yetkiye sahip olması gereken kullanıcıların tam yetkili yapılması güvenlik açısından problemli bir işlem olacaktır.

Alt sistem yöneticilerinin belirli düzeylerde sınırlı yönetici olmaları gerekmektedir. Ana “root” kullanıcısından farklı olması gerekmektedir.

“sudo” sistemi ile bazı sistem komutları bazı kişilere verilebilir. Bunun içinde “visudo” komutu kullanımaktadır. Yetkiler “etc/sudoers” dosyasında bulunur. “visudo” komutu ile de bu dosya düzenlenir.

linux root superuser user

visudo Komutu İle Yetkilerin Düzenlenmesi:

/etc/sudoers” dosyasında saklanan yetkiler “visudo” komutu veya “vi /etc/sudoers” ile düzenlenmektedir.

/etc/sudoers Dosyasının Formatı:

sudoers yetki dosyasının formatı aşağıdaki gibidir.

  • kullanici_adi host_adi=komut

Kullanıcıya Sınırlı root Yetkisi Vermek:

İlk önce mevcut kullanıcılarımızı kontrol edelim.

linux centos red hat rhel kullanicilari listeleme
“Kullanıcıları Listeleme”

ali” kullanıcısı ile giriş yapıp “deneme” isimli bir kullanıcı eklemeye çalışalım.

linux centos red hat rhel kullanici ekleme yetkisi yok
“Kullanıcı Ekleme Yetkisi Yok”

Görüldüğü üzere kullanıcı ekleme yetkisi verilmesi gerekiyor. “ali” kullanıcısında kullanıcı ekleme yetkisi vermek için ilk önce “root” olalım.

linux centos red hat rhel kullanici ekleme yetkisi vermek
“Kullanıcı Ekleme Yetkisi Vermek”

Ardından bu dosyaya “ali localhost=/usr/sbin/useradd” kodu yazılır kullanılır.

linux centos red hat rhel kullanici ekleme yetkisi vermek
“Kullanıcı Ekleme Yetkisi Vermek”
  • sudo [KOMUT]

Not:ali” kullanıcısı kullanıcı ekleme yetkisini kullanabilmek için “useradd” komutunu verirken başına “sudo /usr/sbin/useradd” şeklinde “sudo” komutunu eklemesi gerekir. Bu şekilde ali kullanıcısı şifresini girerek komutu kullanır.

Şimdi kullanıcıyı ekleyelim.

linux centos red hat rhel kullanici ekleme yetkisini kullanmak
“Kullanıcı Ekleme Yetkisisini Kullanmak”

Görüldüğü üzere kullanıcı eklendi.

Her seferinde “ali” kullanıcısının şifre sormasını engellemek için  “/etc/sudoers” dosyasında “ali localhost=NOPASSWD: /usr/sbin/useradd” şeklinde satır düzeltilir.

linux centos red hat rhel sifre sormadan sudo komutunu kullanma
“Şifre Sormadan sudo Komutunu Kullanma”

Şifre sormadığını görebiliriz. Yine aynı ismi yani “deneme” isimli kullanıcı oluşturmak istiyorsak “root” kullanıcısında “userdel deneme” komutu ile kullanıcıyı ve “rm -rf /home/deneme” komutu ile kullanıcıya ait klasörü silebiliriz. Ardından tekrar “ali” kullanıcısına geçelim ve denememizi yapalım.

linux centos red hat rhel sifre sormadan sudo komutunu kullanma
“Şifre Sormadan sudo Komutunu Kullanma”

Görüldüğü üzere şifre sormadı.

Bir kişiye birden fazla komut yetkisini vermek için komutlar birbirinden virgül ile ayrılması gerekir. “useradd” ve “usermod” komutlarının kullanım yetkisini “ali” kullanıcısına vermek için “/etc/sudoers” dosyasında “ali localhost= NOPASSWD:/usr/sbin/useradd, NOPASSWD:/usr/sbin/userdel” şeklinde tanımlama yapılmalıdır.

linux centos red hat rhel birden cok sudo yetkisi verme
“Birden Çok sudo Yetkisi Verme”

Denememizi yaptığımızda iki komutunda çalıştığını ve şifre sormadığını görebiliriz.

linux centos red hat rhel birden cok sudo yetkisi verme
“Birden Çok sudo Yetkisi Verme”

Bir Kullanıcıya Root Yetkisi Vermek

visudo komutu >> ardından “kullanıcı_adi ALL=(ALL) ALL” satırı yazılır.

Aşağıda “ali” isimli kullanıcı için örneklendirme yapılmıştır. “visudo” komutu sonrasında açılan dosyada “root ALL=(ALL) ALL” satırı altına “ali ALL=(ALL) ALL” satırı yazılmıştır.

linux centos red hat rhel root yetkisi vermek
“root Yetkisi Vermek”

Not:ali” kullanıcısı kullanıcı ekleme yetkisini kullanabilmek için “useradd” komutunu verirken başına “sudo /usr/sbin/useradd” şeklinde “sudo” komutunu eklemesi gerekir. Bu şekilde ali kullanıcısı şifresini girerek komutu kullanır.

Şimdi normalde “root”un yetkisi dahilinde olan kullanıcı ekleme işini “ali” kullanıcısı ile yapalım.

  • su – [kullanici_adi]

Bunun için “su – ali” komutu ile “ali” kullanıcısına geçelim. Ardından “sudo useradd deneme” komutu ile “deneme” isimli bir kullanıcı oluşturmaya çalışalım.

linux centos red hat rhel root yetkisi vermek
“root Yetkisi Vermek”
  • sudo [komut]

Görüldüğü üzere “ali” kullanıcısı “sudo KOMUT” şeklinde “root” komutlarını kullanabilmektedir.

 

CentOS sudo SİSTEMİ: superuser” üzerine 2 yorum

  1. Çok güzel ve detaylı fakat kafa karıştırmadan anlatmışsınız.Elinize yüreğinize sağlık

Bir Cevap Yazın

E-posta hesabınız yayımlanmayacak. Gerekli alanlar * ile işaretlenmişlerdir