1. Yedekleme
tar czf /tmp/metin2_backup_$(date +%F).tar.gz /opt/Metin2- Neden: Değişiklikler sırasında hatalı bir işlem tüm sunucuyu bozar; yedek hızlı kurtarma sağlar.
2. Hedef Klasörlerin Belirlenmesi
Bash:
find /opt/Metin2 -type d -name "config" -o -name "record" -o -name "log"
- Neden: Sadece hassas dosyalar üzerinde izin değişikliği yapılmalı, gereksiz izin genişliğini önler.
3. Sahiplik ve İzinlerin Düzenlenmesi
Bash:
# Örnek sunucu kullanıcısı: metin2
sudo chown -R metin2:metin2 /opt/Metin2
sudo find /opt/Metin2 -type d -exec chmod 750 {} \;
sudo find /opt/Metin2 -type f -name "*.conf" -exec chmod 640 {} \;
- Neden:
750ile alt klasörler sadece sahibi ve grup için okunur,640ile konfig dosyaları sadece sahibi ve grup okuyabilir. Diğer kullanıcıların erişimi engellenir.
4. SELinux / AppArmor Kullanımı
sestatusile SELinux durumunu kontrol edin; aktifseaudit2allowile gerekli politikaları ekleyin.- Neden: Ek bir güvenlik katmanı sağlayarak dosyalar üzerinde geçerli olmayan erişimlerin engellenmesi.
5. Şifreli Depolama
Bash:
# Örneğin log dosyaları için dm-crypt
sudo cryptsetup luksFormat /dev/sdb1
sudo cryptsetup open /dev/sdb1 metin2log
sudo mkfs.ext4 /dev/mapper/metin2log
sudo mount /dev/mapper/metin2log /opt/Metin2/log
- Neden: Fiziksel disk çalınsa bile içerik okunamaz. Şifreleme, kritik verilerin korunması için zorunlu bir adımdır.
6. Düzenli Denetim
Bash:
find /opt/Metin2 -type d -perm -777 -print
- Neden: Yanlışlıkla geniş izin verilen dizinlerin tespiti ve zamanında düzeltme.
7. Uygulamadaki Hataları Önleme
- Tipografik hata:
chmod 755yerinechmod 750yazılması. - Sahiplik karışıklığı:
rootolarak çalışan servislerinmetin2kullanıcı dosyalarını değiştirmesi.
Tüm adımlardan önce mutlaka geçici bir test ortamında uygulamayı deneyeyim. Sunucunuzda gerçekleşen değişikliklerin geri alınabilir olduğundan emin misiniz?