Neler yeni

Yazılım Forum

Tüm özelliklerimize erişmek için şimdi bize katılın. Kayıt olduktan ve giriş yaptıktan sonra konu oluşturabilecek, mevcut konulara yanıt gönderebilecek, itibar kazanabilecek, özel mesajlaşmaya erişebilecek ve çok daha fazlasını yapabileceksiniz! Bu hizmetlerimiz ise tamamen ücretsiz ve kurallara uyulduğu sürece sınırsızdır, o zaman ne bekliyorsunuz? Hadi, sizde aramıza katılın!

Linux Sistemler İçin Kapsamlı Güvenlik İpuçları ve En İyi Uygulamalar Rehberi

Günümüzde Linux, sunuculardan kişisel bilgisayarlara, mobil cihazlardan IoT'ye kadar geniş bir yelpazede kullanılmaktadır. Açık kaynak kodlu yapısı, esnekliği ve güçlü komut satırı araçları sayesinde popülerliğini korurken, bu yaygınlık beraberinde güvenlik risklerini de getirmektedir. Her ne kadar Linux tabanlı sistemler genel olarak Windows'a kıyasla daha güvenli kabul edilse de, hiçbir sistem tamamen güvenli değildir. Bu rehberde, Linux sistemlerinizi potansiyel tehditlere karşı korumak için uygulayabileceğiniz temelden ileri düzeye çeşitli güvenlik ipuçlarını ve en iyi uygulamaları detaylıca ele alacağız.

1. Güncellemeleri Asla İhmal Etmeyin
Bu, belki de en temel ama en kritik güvenlik önlemidir. Yazılım güncellemeleri, bilinen güvenlik açıklarını kapatan yamalar içerir. Sisteminizi düzenli olarak güncellemek, siber saldırganların istismar edebileceği zafiyetleri ortadan kaldırır. Otomatik güncellemeleri yapılandırmak veya düzenli aralıklarla manuel olarak çalıştırmak büyük önem taşır. Örneğin, Debian/Ubuntu tabanlı sistemlerde:
Kod:
sudo apt update
sudo apt upgrade -y
sudo apt dist-upgrade -y
sudo apt autoremove -y
Red Hat/CentOS tabanlı sistemlerde ise:
Kod:
sudo yum update -y
# veya
sudo dnf update -y
Unutmayın, çekirdek güncellemelerinden sonra sistemi yeniden başlatmak genellikle zorunludur.

2. Güçlü ve Benzersiz Şifreler Kullanın
Zayıf şifreler, bir sistemin ilk ve en kolay kırılabilir savunma hattıdır. Şifreleriniz karmaşık, uzun ve tahmin edilemez olmalıdır. Büyük ve küçük harfler, rakamlar ve özel karakterlerin birleşimini içermelidir. Ayrıca, her hesap için farklı şifreler kullanmak olası bir güvenlik ihlalinin etkisini minimize eder.
  • Minimum 12-16 karakter uzunluğunda şifreler tercih edin.
  • Kelime dağarcığı saldırılarına karşı sözlük kelimelerinden kaçının.
  • Şifre yöneticisi kullanmayı düşünün.
  • Varsayılan şifreleri hemen değiştirin.
Şifre politikalarını /etc/login.defs ve /etc/pam.d/common-password gibi dosyalar üzerinden yapılandırabilirsiniz. Örneğin, pam_pwquality modülü ile şifrelerin karmaşıklığını zorlayabilirsiniz.

3. SSH Güvenliğini Sıkılaştırın
SSH (Secure Shell), Linux sunucularına uzaktan erişim için yaygın olarak kullanılan bir protokoldür. Yanlış yapılandırıldığında ciddi bir güvenlik zafiyeti oluşturabilir. İşte bazı SSH güvenlik ipuçları:
  • Şifre Tabanlı Kimlik Doğrulamayı Devre Dışı Bırakın ve Anahtar Tabanlı Kimlik Doğrulamayı Kullanın: Bu, en güçlü SSH güvenlik önlemidir. SSH anahtarları, şifrelere göre çok daha güvenlidir.
    Kod:
    # /etc/ssh/sshd_config dosyasında:
    PasswordAuthentication no
    PubkeyAuthentication yes
  • Root Girişini Devre Dışı Bırakın: Doğrudan root kullanıcısı ile SSH erişimini engelleyin. Bunun yerine, normal bir kullanıcıyla giriş yapıp gerektiğinde sudo kullanın.
    Kod:
    # /etc/ssh/sshd_config dosyasında:
    PermitRootLogin no
  • Varsayılan SSH Portunu Değiştirin: Port 22, SSH'ın varsayılan portudur ve saldırganlar tarafından sıklıkla taranır. Farklı bir port kullanmak, otomatik taramaların hedefi olmanızı engeller.
    Kod:
    # /etc/ssh/sshd_config dosyasında (örneğin port 2222'ye değiştirin):
    Port 2222
  • Rate Limiting Uygulayın: Fail2ban gibi araçlar kullanarak ardışık başarısız giriş denemeleri sonrası IP adreslerini engelleyebilirsiniz.

4. Kullanıcı ve İzin Yönetimi (Least Privilege Prensibi)
"En Az Ayrıcalık Prensibi" (Principle of Least Privilege), kullanıcıların ve uygulamaların yalnızca görevlerini yerine getirmek için kesinlikle ihtiyaç duydukları minimum ayrıcalıklara sahip olmaları gerektiğini belirtir. Bu, sistemde yetkisiz erişimi ve potansiyel zararı sınırlar.
  • Gereksiz Kullanıcıları Kaldırın: Sistemde artık kullanılmayan veya test amaçlı oluşturulmuş kullanıcı hesaplarını silin.
  • Sudo Kullanımını Sınırlayın: sudo komutu, normal kullanıcıların belirli komutları root yetkileriyle çalıştırmasına olanak tanır. Yalnızca güvenilir kullanıcılara sudo yetkisi verin ve /etc/sudoers dosyasını dikkatlice yapılandırın.
    Kod:
    # sudoers dosyasını düzenlemek için:
    sudo visudo
  • Doğru Dosya ve Dizin İzinlerini Ayarlayın: Dosya ve dizin izinleri, sistemde kimin neye erişebileceğini belirler. Yanlış izinler, veri sızıntılarına veya yetkisiz değişikliklere yol açabilir. chmod ve chown komutlarını doğru şekilde kullanın. Örneğin, hassas yapılandırma dosyalarının sahipliği root'ta olmalı ve izinleri sadece root'un okumasına izin vermelidir (örneğin 600 veya 400).
    Kod:
    ls -l /etc/shadow # Örnek çıktı: -rw-r----- 1 root shadow 1000 Eki 26 15:00 /etc/shadow
    chmod 600 /etc/some_conf_file # Yalnızca sahibi okuyup yazabilir.
    chown root:root /etc/some_conf_file # Sahipliği root'a verir.
"Güvenlik, bir ürün değil, bir süreçtir."
Bu söz, güvenliğin sürekli bir çaba gerektiren dinamik bir alan olduğunu vurgular.

5. Güvenlik Duvarı (Firewall) Yapılandırması
Bir güvenlik duvarı, ağ trafiğini filtreleyerek sisteminize gelen ve giden bağlantıları kontrol eder. Yalnızca gerekli portlara ve hizmetlere erişime izin vermek, ağ tabanlı saldırıların riskini önemli ölçüde azaltır. Linux'ta yaygın olarak kullanılan güvenlik duvarı araçları arasında UFW (Uncomplicated Firewall) ve firewalld bulunur.
  • UFW Kullanımı (Ubuntu/Debian):
    Kod:
    sudo ufw enable # Güvenlik duvarını etkinleştir
    sudo ufw default deny incoming # Varsayılan olarak tüm gelen bağlantıları reddet
    sudo ufw allow ssh # SSH portuna (22) izin ver
    sudo ufw allow http # HTTP portuna (80) izin ver
    sudo ufw allow https # HTTPS portuna (443) izin ver
    sudo ufw status verbose # Durumu kontrol et
  • Firewalld Kullanımı (CentOS/RHEL):
    Kod:
    sudo systemctl start firewalld # firewalld servisini başlat
    sudo systemctl enable firewalld # Açılışta başlamasını sağla
    sudo firewall-cmd --permanent --add-service=ssh # SSH servisine izin ver
    sudo firewall-cmd --permanent --add-service=http # HTTP servisine izin ver
    sudo firewall-cmd --permanent --add-service=https # HTTPS servisine izin ver
    sudo firewall-cmd --reload # Değişiklikleri uygula
    sudo firewall-cmd --list-all # Tüm kuralları listele
  • Yalnızca Gerekli Portları Açın: Sisteminizde aktif olan her açık port, potansiyel bir saldırı yüzeyidir. Kullanılmayan veya gereksiz hizmetlerin portlarını kapatın.

6. Loglama ve İzleme
Sistemdeki aktiviteleri kaydetmek (loglama) ve bu kayıtları düzenli olarak gözden geçirmek (izleme), güvenlik olaylarını tespit etmek ve müdahale etmek için hayati öneme sahiptir. Linux sistemlerinde loglar genellikle /var/log dizininde bulunur. SSH giriş denemeleri, yetkilendirme hataları, kernel mesajları gibi kritik bilgileri içeren log dosyalarını düzenli olarak kontrol edin.
  • Auth Logları: /var/log/auth.log veya /var/log/secure dosyasını, başarısız giriş denemeleri ve sudo kullanımları için inceleyin.
  • Sistem Logları: /var/log/syslog veya /var/log/messages genel sistem olaylarını içerir.
  • Log Rotasyonunu Yapılandırın: Log dosyalarının çok büyümesini engellemek için logrotate gibi araçları kullanın.
  • Merkezi Log Yönetimi: Birden fazla sunucunuz varsa, Splunk, ELK Stack (Elasticsearch, Logstash, Kibana) veya Graylog gibi merkezi log yönetim sistemleri kurmayı düşünün. Bu, şüpheli aktiviteleri daha kolay izlemenizi sağlar.

7. Uygulama ve Servis Güvenliği
Sisteminize kurduğunuz her uygulama veya çalıştırdığınız her servis, potansiyel bir güvenlik riskidir. Bu nedenle, yalnızca gerekli olan yazılımları kurmalı ve bunları güvenli bir şekilde yapılandırmalısınız.
  • Gereksiz Servisleri Devre Dışı Bırakın: Sistemde çalışmayan veya artık kullanılmayan servisleri tespit edin ve devre dışı bırakın veya kaldırın. Örneğin, systemctl list-unit-files --type=service komutu ile çalışan servisleri görebilirsiniz.
  • Varsayılan Yapılandırmaları Değiştirin: Birçok uygulama varsayılan olarak güvenli olmayan ayarlarla gelir. Kurulumdan sonra her uygulamanın yapılandırma dosyasını (örneğin web sunucuları için nginx.conf, httpd.conf) gözden geçirin ve güvenliği artıracak şekilde değiştirin.
  • AppArmor/SELinux Kullanın: Bu araçlar, uygulamaların ve servislerin sistem kaynaklarına erişimini kısıtlayan zorunlu erişim kontrol (MAC) mekanizmaları sağlar. AppArmor (Ubuntu/Debian) veya SELinux (CentOS/RHEL) doğru şekilde yapılandırıldığında, bir uygulamanın veya servisin güvenlik açığı sömürülse bile sistemin geneline zarar vermesini engelleyebilir.
    Örneğin, SELinux politikaları sayesinde bir web sunucusu, web dizini dışındaki dosyalara erişemez hale getirilebilir.

8. Yedekleme ve Kurtarma Planı
En iyi güvenlik önlemleri bile %100 koruma sağlamaz. Bu nedenle, düzenli ve güvenilir yedeklemeler yapmak, bir güvenlik ihlali veya sistem çökmesi durumunda verilerinizi kurtarmanın tek yoludur. Yedeklerinizi ayrı bir fiziksel konumda veya bulutta saklayın ve düzenli olarak yedekleme-geri yükleme süreçlerini test edin.
  • Otomatik Yedekleme Çözümleri: rsync, BorgBackup veya bulut tabanlı yedekleme servislerini kullanın.
  • Kurtarma Planı: Bir felaket kurtarma planı (DRP) oluşturun. Bu plan, bir güvenlik olayı veya sistem arızası durumunda hangi adımların izleneceğini detaylandırır.

9. Güvenlik Denetimleri ve Tarama Araçları
Sisteminizi düzenli olarak güvenlik açıklarına karşı taramak, zafiyetleri proaktif olarak tespit etmenizi sağlar. Lynis, OpenVAS veya Nessus gibi araçlar kullanabilirsiniz.
  • Lynis: Sistem sıkılaştırması ve güvenlik denetimi için harika bir araçtır. Çeşitli güvenlik testleri yapar ve iyileştirme önerileri sunar.
    Kod:
    sudo apt install lynis # veya diğer paket yöneticinizle
    sudo lynis audit system
  • Rootkit Taraması: chkrootkit veya rkhunter gibi araçlarla sisteminizde rootkit olup olmadığını kontrol edin. Rootkitler, saldırganların sistemde varlıklarını gizlemelerini sağlayan kötü amaçlı yazılımlardır.
    Kod:
    sudo apt install chkrootkit rkhunter
    sudo chkrootkit
    sudo rkhunter --check

10. Fiziksel Güvenlik
Her ne kadar yazılımsal güvenlik önlemlerine odaklansak da, fiziksel güvenlik de aynı derecede önemlidir. Sunucularınızın veya bilgisayarlarınızın yetkisiz fiziksel erişime karşı korunduğundan emin olun. Bu, veri merkezlerinde kilitli raflar, güvenlik kameraları ve erişim kontrolü gibi önlemleri içerebilir.

11. Bilinçli Olun ve Bilgi Edinmeye Devam Edin
Siber güvenlik, sürekli gelişen bir alandır. Yeni tehditler ve saldırı yöntemleri her gün ortaya çıkmaktadır. Bu nedenle, en güncel güvenlik trendleri, Linux çekirdeğindeki ve popüler uygulamalardaki yeni güvenlik açıkları hakkında bilgi edinmeye devam etmek esastır. Güvenlik bültenlerine abone olun, saygın güvenlik bloglarını takip edin ve güvenlik forumlarına katılın.
Örneğin, Ubuntu Security Notifications veya benzeri resmi güvenlik bildirimleri çok faydalıdır.

Sonuç
Linux sistemler için güvenlik, tek seferlik bir işlem değil, sürekli bir süreçtir. Yukarıda belirtilen ipuçlarını uygulayarak sistemlerinizin güvenliğini önemli ölçüde artırabilir ve potansiyel saldırıların önüne geçebilirsiniz. Unutmayın, en zayıf halka genellikle insan faktörüdür. Bu nedenle, sistem yöneticilerinin ve kullanıcıların güvenlik bilinci de en az teknik önlemler kadar kritiktir. Kapsamlı bir yaklaşımla, Linux ortamlarınızın sağlam ve güvenli kalmasını sağlayabilirsiniz.

Bu rehberdeki bilgiler genel amaçlıdır ve her özel duruma uymayabilir. Kendi sistem ihtiyaçlarınıza göre ayarlamalar yapmanız önemlidir.
 
shape1
shape2
shape3
shape4
shape5
shape6
Üst

Bu web sitenin performansı Hazal Host tarafından sağlanmaktadır.

YazilimForum.com.tr internet sitesi, 5651 sayılı Kanun’un 2. maddesinin 1. fıkrasının (m) bendi ve aynı Kanun’un 5. maddesi kapsamında Yer Sağlayıcı konumundadır. Sitede yer alan içerikler ön onay olmaksızın tamamen kullanıcılar tarafından oluşturulmaktadır.

YazilimForum.com.tr, kullanıcılar tarafından paylaşılan içeriklerin doğruluğunu, güncelliğini veya hukuka uygunluğunu garanti etmez ve içeriklerin kontrolü veya araştırılması ile yükümlü değildir. Kullanıcılar, paylaştıkları içeriklerden tamamen kendileri sorumludur.

Hukuka aykırı içerikleri fark ettiğinizde lütfen bize bildirin: lydexcoding@gmail.com

Sitemiz, kullanıcıların paylaştığı içerik ve bilgileri 6698 sayılı KVKK kapsamında işlemektedir. Kullanıcılar, kişisel verileriyle ilgili haklarını KVKK Politikası sayfasından inceleyebilir.

Sitede yer alan reklamlar veya üçüncü taraf bağlantılar için YazilimForum.com.tr herhangi bir sorumluluk kabul etmez.

Sitemizi kullanarak Forum Kuralları’nı kabul etmiş sayılırsınız.

DMCA.com Protection Status Copyrighted.com Registered & Protected