Linux’ta Administrative Access ve Permissions
Linux, esnek ve güçlü bir işletim sistemidir. Ancak, sistemin güvenliği ve yönetimi için administrative access (yönetici erişimi) ve permissions (izinler) konularının iyi anlaşılması gerekir. Bu yazıda, Linux sisteminde yönetici erişimini nasıl sağlayacağınızı, dosya ve dizin izinlerini nasıl yöneteceğinizi ve en iyi uygulamaları detaylı bir şekilde ele alacağım.
Linux’ta Administrative Access (Yönetici Erişimi)
Root Kullanıcısı ve Yetkileri
Root, Linux sisteminde en yüksek ayrıcalıklara sahip olan kullanıcıdır. Root kullanıcısı şunları yapabilir:
- Tüm dosya ve dizinlere erişim
- Kullanıcı hesaplarını oluşturma, silme ve yönetme
- Ağ yapılandırmalarını değiştirme
- Paket ve yazılım yönetimi (yükleme, kaldırma, güncelleme)
- Sistem servislerini başlatma/durdurma/yapılandırma
Root Kullanıcısı ile Oturum Açma
Normalde doğrudan root hesabı ile oturum açmak önerilmez, ancak erişmek için şu komut kullanılabilir:
su

su komutu, geçici olarak farklı bir kullanıcı gibi davranmanıza olanak tanır. Bunu, yeni bir kabuk oluşturarak yapar. Kabuk, komut girmenize olanak tanıyan basit bir metin giriş konsoludur. Varsayılan olarak, eğer bir kullanıcı hesabı belirtilmezse, su komutu yeni bir kabuğu root kullanıcısı olarak açar ve bu da yönetici ayrıcalıkları sağlar. Ancak, root şifresini bilmeniz gerekir.
Sudo Komutu ile Yetkili Kullanım
Sudo (Superuser Do) komutu, belirli kullanıcıların geçici olarak root yetkileriyle komut çalıştırmasını sağlar. Sudo, güvenlik açısından root hesabına doğrudan erişmek yerine tercih edilir.
Bir komutu yönetici haklarıyla çalıştırmak için şu komutu kullanabilirsiniz:
sudo komut_adı
Örnek:
sudo apt update
Bu komut, paket listesini güncellemek için yönetici ayrıcalıklarıyla çalıştırılır.
Bir Kullanıcıya Sudo Yetkisi Vermek
Bir kullanıcıya sudo yetkisi vermek için:
usermod -aG sudo kullanıcı_adı
Örneğin:
usermod -aG sudo baris
Bunu yaptıktan sonra, kullanıcı yeniden oturum açarak sudo yetkilerine sahip olur.
Yetkili Kullanıcıları Görüntüleme
Bir kullanıcının sudo yetkisine sahip olup olmadığını kontrol etmek için:
sudo -l -U kullanıcı_adı
Sudo grubundaki kullanıcıları görmek için:
getent group sudo

Sudo ve Root Kullanımı ile İlgili Güvenlik Önerileri
- Root hesabını doğrudan kullanmaktan kaçının ve yerine sudo kullanın.
- Gereksiz sudo yetkileri vermeyin, sadece gerekli kullanıcılara izin verin.
- Sudo komutlarının kaydedildiğinden emin olun (
/var/log/auth.log
dosyasını inceleyebilirsiniz). - Parola istemini kapatmaktan kaçının, aksi takdirde sistemin güvenliği riske girebilir.
Linux’ta Dosya ve Dizin İzinleri (Permissions)
Linux sisteminde, her dosya ve dizin belirli izinlerle yönetilir. Dosya izinleri, kimin hangi işlemleri yapabileceğini belirler ve üç ana bileşene ayrılır:
- File Type Field (Dosya Türü Alanı)
- Permissions Field (İzinler Alanı)
- Permission Types (İzin Türleri)
1. File Type Field (Dosya Türü Alanı)
Linux’ta her dosyanın bir türü vardır. ls -l
komutuyla bir dosyanın türünü görebilirsiniz.
ls -l

Buradaki ilk karakter, dosya türünü belirtir:
- – Normal dosya
- d Dizin (Directory)
- l Sembolik bağlantı (Symbolic Link)
- b Blok aygıt dosyası (Block Device)
- c Karakter aygıt dosyası (Character Device)
- s Socket (Ağ bağlantıları için kullanılır)
- p Pipe (FIFO)
Örneğin:
-rw-r--r--
→ Normal dosya (-
)drwxr-xr-x
→ Dizin (d
)lrwxrwxrwx
→ Sembolik bağlantı (l
)
2. Permissions Field (İzinler Alanı)
Linux’ta her dosya ve dizin için belirli izinler tanımlıdır. Bu izinler, kimin hangi işlemleri yapabileceğini belirler.

Bu izinler şu şekilde ayrılır:
- İlk Üçlü (Sahibi) – Owner

- İkinci Üçlü (Grubu) – Groups

- Üçüncü Üçlü (Diğerleri) – Others

3. İzin Tipleri
İzinler üç gruba ayrılır:
Karakterler | Açıklama |
r (4) | Okuma (Read) – Dosyanın içeriğini görüntüleme |
w (2) | Yazma (Write) – Dosyanın içeriğini değiştirme |
x (1) | Çalıştırma (Execute) – Dosyayı çalıştırma veya dizini açma |
Örneğin:
-rwxr-xr--
- Sahibi (
rwx
) → Okuma (r), Yazma (w), Çalıştırma (x) = 4+2+1=7 - Grubu (
r-x
) → Okuma (r), Çalıştırma (x) =4+1 =5 - Diğerleri (
r--
) → Sadece Okuma (r) =4 =4
Bu izinlerin sayısal gösterimi: chmod 754
ile ayarlanabilir.
Linux’ta İzinleri Değiştirme
chmod ile İzinleri Değiştirme
Sayısal Yöntem:
Bu yöntemde izinler okuma (4), yazma (2), çalıştırma (1) olarak sayılarla ifade edilir.
Örneğin:
chmod 755 hello.sh

Bazı Örnek Sayısal Değerler ve Anlamları:
Sayısal Kod | İzinler |
---|---|
777 | rwxrwxrwx – Herkes tüm yetkilere sahip |
755 | rwxr-xr-x – Sahip yazabilir, diğerleri sadece okuyabilir/çalıştırabilir |
644 | rw-r--r-- – Sahip yazabilir, diğerleri sadece okuyabilir |
600 | rw------- – Sadece sahip okuyabilir ve yazabilir |
Harf Yöntemi:
Bu yöntemde izinler harflerle ifade edilir:
Sembol | Açıklama |
---|---|
u | Kullanıcı (owner) |
g | Grup (group) |
o | Diğerleri (others) |
a | Hepsi (all) |
+ | İzin ekleme |
- | İzin kaldırma |
= | Kesin izin belirleme |
Örneğin:
chmod u+x myscript.sh # Sahibe çalıştırma izni ekle
chmod g-w myfile.txt # Gruptan yazma iznini kaldır
chmod o=r myfile.txt # Diğerlerini sadece okuma olarak ayarla
chmod a+rx myfolder # Herkese okuma ve çalıştırma izni ver
chown ve chgrp ile Sahiplik Değiştirme
Bazı durumlarda, dosyanın sahibini veya grubunu değiştirmek gerekebilir.
Dosya Sahibini Değiştirme (chown)
Bir dosyanın sahibini değiştirmek için:
chown yeni_sahip myfile.txt
Örneğin:
chown baris myfile.txt
Bu komut, myfile.txt
dosyasının sahibini baris olarak değiştirir.
Eğer hem sahibi hem de grubunu değiştirmek isterseniz:
chown baris:developers myfile.txt
Bu komut, dosyanın sahibini baris
, grubunu developers
olarak değiştirir.
Dosya Grubunu Değiştirme (chgrp)
Eğer sadece grubu değiştirmek isterseniz:
chgrp developers myfile.txt
Bu komut, dosyanın grubunu developers
olarak değiştirir.
Özel İzinler (Special Permissions)
Bazı durumlarda, normal izinlere ek olarak özel izinler de kullanılabilir:
İzin | Açıklama |
---|---|
SUID (Set User ID) | Kullanıcı, dosyanın sahibi gibi çalıştırabilir (chmod u+s ). |
SGID (Set Group ID) | Çalıştırıldığında, grubun yetkileriyle çalışır (chmod g+s ). |
Sticky Bit | Bir dizindeki dosyaları yalnızca sahibi silebilir (chmod +t ). |
Örnekler:
- SUID ekleme:
chmod u+s program.sh
- SGID ekleme:
chmod g+s myfolder
- Sticky Bit ekleme (örneğin
/tmp
dizini gibi):
chmod +t /tmp
Sonuç
Linux’ta Administrative Access ve Permissions, sistem yönetimi ve güvenliği için temel taşlardır. Root yetkileri ve sudo kullanımı ile sistemin yönetimi sağlanırken, chmod, chown ve chgrp komutları ile dosya ve dizin izinleri düzenlenebilir. Güvenlik açısından root hesabını doğrudan kullanmamak, gereksiz sudo yetkisi vermemek ve dosya izinlerini dikkatle yönetmek önemlidir.
Share this content:
Yorum gönder