Linux Sistemlerde Güvenlik Önlemleri
Linux işletim sistemleri, açık kaynak yapısı sayesinde dünyanın en güvenilir platformları arasında yer alır. Ancak bu güvenlik, yalnızca doğru yapılandırma ve sürekli bakım ile sağlanabilir. Yanlış ayarlanmış bir izin yapısı veya güncellenmemiş bir paket, en güvenli sistemi bile açık hale getirebilir.
Günümüzde siber tehditler her geçen gün daha karmaşık hale geliyor. Bu nedenle sistem yöneticilerinin temel güvenlik ilkelerini bilmesi ve uygulaması hayati önem taşıyor. Bu makalede, Linux sistemlerde uygulanması gereken en kritik güvenlik önlemlerini adım adım inceleyeceğiz.
Temel Kavramlar ve Tanımlar
Linux güvenliği, çok katmanlı bir yaklaşım gerektirir. İlk katman fiziksel güvenlik, ikinci katman ağ güvenliği, üçüncü katman ise işletim sistemi düzeyindeki güvenliktir. Bu katmanların her biri, sistemi korumak için farklı araçlar ve politikalar kullanır.
En temel kavramlardan biri kullanıcı yetkilendirme sistemidir. Linux, Unix mirası sayesinde güçlü bir kullanıcı ve grup izin modeline sahiptir. root yetkilerinin sınırlandırılması ve sudo kullanımı, sistem güvenliğinin ilk adımını oluşturur.
Bir diğer önemli kavram ise güncelleme yönetimidir. Dağıtımlar düzenli olarak güvenlik yamaları yayınlar. Bu yamaların gecikmeden uygulanması, bilinen açıkların kapatılmasını sağlar. Otomatik güncelleme sistemleri bu süreci kolaylaştırır.
Güvenlik Duvarı ve Ağ Güvenliği
Linux sistemlerde en yaygın kullanılan güvenlik duvarı iptables ve onun modern halefi nftables’tır. Bu araçlar sayesinde sisteme gelen ve giden tüm ağ trafiği detaylı şekilde filtrelenebilir. Örneğin yalnızca SSH bağlantılarına izin verip diğer portları kapatmak temel bir önlemdir.
Ağ güvenliği yalnızca güvenlik duvarıyla sınırlı değildir. DNS ayarları, VPN kullanımı ve ağ izolasyonu da kritik öneme sahiptir. Özellikle sunucularda gereksiz servislerin kapatılması, saldırı yüzeyini daraltır.
Fail2ban gibi araçlar, başarısız oturum açma girişimlerini tespit ederek IP adreslerini geçici olarak bloke eder. Bu, brute force saldırılarına karşı etkili bir [kalkan] görevi görür.
Kullanıcı Yetkilendirme ve Erişim Kontrolü
Linux’un en güçlü yönlerinden biri kullanıcı izin modelidir. Dosyalar sahip, grup ve diğer kullanıcılar olarak üç kategoride izin alır. rwx (okuma, yazma, çalıştırma) sistemi sayesinde her dosyanın erişimi hassas şekilde ayarlanabilir.
sudo komutu, normal kullanıcılara belirli komutları root yetkisiyle çalıştırma imkanı verir. Örneğin yalnızca sistem güncellemesi yapacak bir kullanıcıya sudo yetkisi vermek, gereksiz root erişimini engeller.
PAM (Pluggable Authentication Modules) sistemi, parola politikaları ve iki faktörlü kimlik doğrulama gibi ek güvenlik katmanları ekler. PAM yapılandırması ile parola uzunluğu, karmaşıklığı ve değiştirme sıklığı belirlenebilir.
Güncelleme ve Yama Yönetimi
Yazılım güncellemeleri, güvenliğin temel taşıdır. Linux dağıtımlarının çoğu, paket yöneticileri aracılığıyla düzenli güncelleme sunar. apt (Debian/Ubuntu), yum/dnf (RHEL/Fedora) veya pacman (Arch) gibi araçlarla sistem güncel tutulabilir.
Kritik güvenlik yamaları genellikle CVSS puanı ile derecelendirilir. 9.0 ve üzeri puan alan açıklar acil olarak uygulanmalıdır. Güncelleme politikaları oluşturarak bu süreci otomatize etmek akıllıca bir yaklaşımdır.
Sistem güncellemeleri yanında çekirdek (kernel) güncellemeleri de önemlidir. Çekirdek, işletim sisteminin kalbidir ve buradaki bir açık tüm sistemi tehlikeye atabilir. Canlı yama uygulama araçları, yeniden başlatma gerektirmeden çekirdek güncellemesi yapma imkanı sunar.
Güvenlik Denetimi ve Log İzleme
Güvenlik denetimleri, sistemdeki olası zafiyetleri tespit etmenin en etkili yoludur. Lynis, OpenSCAP ve Chkrootkit gibi araçlar düzenli taramalar yaparak güvenlik açıklarını raporlar.
Log yönetimi, saldırı tespiti için vazgeçilmezdir. /var/log dizini altında syslog, auth.log ve kern.log gibi dosyalar sistem olaylarını kaydeder. Logwatch veya rsyslog gibi araçlarla bu loglar merkezi olarak izlenebilir.
Anomali tespit sistemleri, normal trafik desenlerinden sapmaları algılar. Örneğin belirli bir hesaptan ardışık başarısız giriş denemeleri, olası bir brute force saldırısını işaret eder.
Uzman Önerileri ve İpuçları
– root hesabını devre dışı bırakın: Tüm yönetim işlemleri için sudo kullanın. root hesabına doğrudan SSH erişimi vermek büyük risk taşır. – SSH anahtar tabanlı kimlik doğrulama kullanın: Parola ile giriş yerine SSH anahtarları kullanın. Bu, kaba kuvvet saldırılarına karşı etkili bir koruma sağlar. – Gereksiz servisleri kapatın: Çalışan her servis potansiyel bir saldırı yüzeyidir. Sadece ihtiyaç duyulan servisleri aktif tutun. – Otomatik güncelleme planlayın: cron veya systemd timer ile güncellemeleri düzenli hale getirin. Kritik yamalar en kısa sürede uygulanmalıdır. – Dosya izinlerini denetleyin: Hassas dosyaların (örneğin /etc/shadow) yalnızca root erişimine izin verdiğinden emin olun. – SELinux veya AppArmor kullanın: Bu erişim kontrol mekanizmaları, bir servis ele geçirilse bile hasarı sınırlar. – Düzenli güvenlik taraması yapın: Haftalık veya aylık taramalarla sisteminizi denetleyin. – Logları merkezi bir sunucuda toplayın: Birden fazla sistemin loglarını tek bir noktada izlemek, saldırıları erken tespit etmeyi kolaylaştırır. – Yedekleme stratejisi oluşturun: Düzenli yedeklemeler, fidye yazılımı saldırılarına karşı son savunma hattıdır. – Parola politikası uygulayın: PAM ile parola uzunluğu, karmaşıklık ve geçerlilik süresi belirleyin.
Sıkça Sorulan Sorular
Linux sunucumda güvenlik duvarını nasıl etkinleştirebilirim?
Linux dağıtımınıza bağlı olarak ufw (Uncomplicated Firewall) veya firewalld gibi araçları kullanabilirsiniz. Örneğin Ubuntu’da `sudo ufw enable` komutu ile güvenlik duvarını aktif hale getirebilir, `sudo ufw allow ssh` ile SSH bağlantılarına izin verebilirsiniz. Daha gelişmiş yapılandırmalar için iptables veya nftables kullanmanız önerilir.
SSH için güvenlik önlemleri nelerdir?
SSH güvenliği için parola ile girişi devre dışı bırakın, yalnızca anahtar tabanlı kimlik doğrulama kullanın. Varsayılan 22 portunu değiştirin, root girişini yasaklayın ve başarısız giriş denemelerini sınırlayın. Fail2ban gibi bir araç kurarak şüpheli IP adreslerini otomatik olarak engelleyebilirsiniz.
SELinux nedir ve neden önemlidir?
SELinux (Security-Enhanced Linux), Amerikan Ulusal Güvenlik Ajansı (NSA) tarafından geliştirilmiş bir erişim kontrol mekanizmasıdır. Geleneksel izin modelinin ötesinde, tüm sistem kaynaklarına erişim için ayrıntılı politikalar uygular. Bir servis ele geçirilse bile, SELinux sayesinde saldırganın erişimi ciddi şekilde kısıtlanır.
Sonuç
Linux sistem güvenliği, sürekli dikkat ve güncelleme gerektiren bir süreçtir. Temel önlemler arasında güvenlik duvarı yapılandırması, kullanıcı yetkilendirme, düzenli güncelleme ve log izleme yer alır. Bu adımları uygulayarak sisteminizi büyük ölçüde koruma altına alabilirsiniz.
Unutmayın, güvenlik tek bir önlemle sağlanmaz. Katmanlı bir yaklaşım benimseyerek hem iç hem de dış tehditlere karşı hazırlıklı olmalısınız. Düzenli denetimler ve farkındalık, güvenli bir Linux sisteminin anahtarıdır.

