Giriş
Çok kullanıcılı Linux sistemlerinde (RHEL, AlmaLinux, Rocky Linux, Oracle Linux ve CentOS Stream gibi) varsayılan olarak tüm kullanıcılar, diğer kullanıcıların çalıştırdığı işlemleri görebilir.
ps, top, htop ve /proc dizini üzerinden:
- Diğer kullanıcıların çalışan programları
- Komut satırı argümanları
- Script ve servis bilgileri
- Çalışan uygulama detayları
kolayca görüntülenebilir.
Bu durum bazı ortamlarda güvenlik ve gizlilik açısından risk oluşturur. Bu nedenle Linux, /proc dosya sisteminde hidepid adlı bir seçenek sunar.
Bu makalede, Linux’ta kullanıcıların birbirinin işlemlerini görmesini nasıl engelleyeceğinizi öğreneceksiniz.
/proc Dosya Sistemi Nedir?
Linux işletim sistemi, çalışan tüm süreçleri sanal bir dosya sistemi olan:
/proc
içinde tutar.
Her işlem için bir klasör oluşturulur:
/proc/1234
/proc/5678
Normal şartlarda kullanıcılar bu alanı okuyarak diğer işlemleri görebilir.
Örnek:
ps aux
komutu tüm kullanıcıların süreçlerini listeler.
Neden İşlemleri Gizlemek Gerekir?
Multi-user (çok kullanıcılı) sistemlerde işlem gizleme şu avantajları sağlar:
- Kullanıcı gizliliğini korur
- Sistem keşif (reconnaissance) riskini azaltır
- Uygulama bilgilerinin sızmasını engeller
- Komut satırı argümanlarını gizler
- Paylaşımlı sunucularda güvenliği artırır
Özellikle şu sistemlerde önemlidir:
- Hosting sunucuları
- VPS sistemleri
- Kurumsal Linux sunucuları
- Üniversite ve lab ortamları
- Terminal sunucuları
Mevcut /proc Ayarını Kontrol Etme
Mevcut durumu görmek için:
mount | grep proc
Örnek çıktı:
proc on /proc type proc (rw,nosuid,nodev,noexec,relatime)
Eğer hidepid yoksa tüm kullanıcılar birbirinin işlemlerini görebilir.
hidepid=2 Nedir?
Linux’ta en yaygın kullanılan güvenlik ayarı:
hidepid=2
Bu ayar:
- Kullanıcıların sadece kendi işlemlerini görmesini sağlar
- Diğer kullanıcı süreçlerini tamamen gizler
- Sistem güvenliğini artırır
Geçici Olarak hidepid=2 Aktifleştirme
Sistemi yeniden başlatmadan uygulamak için:
mount -o remount,rw,hidepid=2 /proc
Kontrol etmek için:
mount | grep proc
Beklenen çıktı:
proc on /proc type proc (rw,hidepid=2)
Kalıcı Yapılandırma (fstab ile)
Sistemi kalıcı olarak yapılandırmak için:
sudo nano /etc/fstab
Aşağıdaki satırı ekleyin veya düzenleyin:
proc /proc proc defaults,hidepid=2 0 0
Kaydedin ve çıkın.
Sonra sistemi yeniden mount edin:
mount -o remount /proc
veya sistemi yeniden başlatın.
Yapılandırmayı Test Etme
Test için iki kullanıcı oluşturun:
useradd kullanici1
useradd kullanici2
kullanici1 ile bir işlem başlatın:
su - kullanici1
sleep 10000 &
Diğer kullanıcıya geçin:
su - kullanici2
ps aux
Sonuç:
- hidepid kapalıysa → tüm işlemler görünür
- hidepid=2 aktifse → sadece kendi işlemleri görünür
hidepid Seviye Açıklamaları
hidepid=0 (Varsayılan)
Tüm kullanıcılar tüm süreçleri görebilir.
hidepid=1
Kullanıcılar süreçleri görür ancak detaylara erişemez.
hidepid=2 (Önerilen)
Kullanıcılar sadece kendi süreçlerini görür.
Diğer tüm kullanıcı süreçleri gizlenir.
Admin Kullanıcılar İçin İstisna (Opsiyonel)
Bazı durumlarda yöneticilerin tüm süreçleri görmesi gerekir.
Bunun için bir grup oluşturulabilir:
groupadd procview
Grup ID’sini öğrenin:
getent group procview
Örnek:
procview:x:1005:
Ardından /proc mount edilirken grup tanımlanır:
mount -o remount,hidepid=2,gid=1005 /proc
Bu gruba eklenen kullanıcılar tüm süreçleri görebilir:
usermod -aG procview admin
Uyum ve Dikkat Edilmesi Gerekenler
hidepid kullanmadan önce bazı uygulamalar test edilmelidir:
- Monitoring araçları
- APM yazılımları
- Custom scriptler
- Backup servisleri
- Performans analiz araçları
Bazı eski yazılımlar işlem görünürlüğüne bağımlı olabilir.
Güvenlik Açısından Avantajları
hidepid=2 kullanmanın faydaları:
- Kullanıcı izolasyonu sağlar
- Bilgi sızıntısını engeller
- Sunucu güvenliğini artırır
- Multi-user sistemlerde güvenli yapı oluşturur
- Recon (bilgi toplama) saldırılarını zorlaştırır
Sonuç
Linux sistemlerde /proc üzerinden süreç bilgileri varsayılan olarak tüm kullanıcılar tarafından görülebilir. Ancak hidepid=2 kullanılarak bu durum kolayca sınırlandırılabilir.
RHEL tabanlı sistemlerde bu yöntem, çok kullanıcılı ortamlarda güvenliği artırmak için önerilen en basit ve etkili çözümlerden biridir.
Doğru yapılandırıldığında kullanıcılar yalnızca kendi işlemlerini görebilir ve sistem genelinde daha güvenli bir izolasyon sağlanır.
