İçerik Tablosu
- 1. Hazırlık
- Gerekli Yazılımlar ve Araçlar
- 2. Log İmzalama için OpenSSL Kurulumu
- OpenSSL Yükleme
- RSA Anahtar Çifti Oluşturma
- 3. Log İmzalama Scripti
- 4. QNAP NAS’e Yedekleme
- NAS’i Bağlama
- Rsync ile Yedekleme Scripti
- 5. Süreçleri Otomatikleştirme
- Cron Job Ekleyerek Zamanlama
- 6. 5651 Uyumunu Doğrulama
- İmzaları Doğrulama
- Zaman Damgası Eklemek
- Sonuç
5651 sayılı kanun gerekliliklerine uygun olarak logların hashlenip imzalanması ve bir NAS cihazına yedeklenmesi, hem yasal uyumluluk hem de verilerin uzun süreli güvenliği için kritik bir süreçtir. Bu makalede Wazuh’da toplanan logların otomatik olarak işlenip QNAP NAS’e aktarılması adım adım anlatılmaktadır.
1. Hazırlık
Gerekli Yazılımlar ve Araçlar
- OpenSSL: Hashleme ve imzalama için.
- Cron: Otomatik zamanlanmış görevler için.
- Rsync veya SCP: Log dosyalarını NAS cihazına yedeklemek için.
- Wazuh’un Log Dizini: Logların bulunduğu dizin (
/var/ossec/logs/alerts/
). - QNAP NAS: NFS veya SMB üzerinden bağlanabilir bir NAS cihazı.
2. Log İmzalama için OpenSSL Kurulumu
OpenSSL Yükleme
OpenSSL genellikle çoğu Linux dağıtımında önceden yüklüdür. Yüklü değilse aşağıdaki komutla yükleyebilirsiniz:
sudo apt update && sudo apt install openssl -y
RSA Anahtar Çifti Oluşturma
Logları imzalamak için bir özel anahtar (private key) ve doğrulama için bir ortak anahtar (public key) gereklidir.
-
- Özel Anahtar (Private Key) Oluşturma:
openssl genrsa -out privatekey.pem 2048
-
- Ortak Anahtar (Public Key) Çıkartma:
openssl rsa -in privatekey.pem -pubout -out publickey.pem
-
- Anahtarları Güvenli Bir Yerde Saklayın:
sudo mkdir -p /etc/wazuh-keys
sudo mv /root/privatekey.pem /etc/wazuh-keys/
sudo mv /root/publickey.pem /etc/wazuh-keys/
sudo chmod 600 /etc/wazuh-keys/privatekey.pem
sudo chmod 644 /etc/wazuh-keys/publickey.pem
3. Log İmzalama Scripti
Logları hashleyip imzalamak için bir Bash scripti oluşturun:
-
- Script’i Oluşturma:
sudo nano /usr/local/bin/sign_wazuh_logs.sh
-
- Script İçeriği:
#!/bin/bash
LOG_DIR="/var/ossec/logs/alerts"
SIGNED_DIR="/var/log/signed_logs"
KEY_DIR="/etc/wazuh-keys"
TIMESTAMP=$(date +%Y%m%d_%H%M%S)
# İmzalanmış logları saklamak için dizin oluştur
mkdir -p $SIGNED_DIR
# Her bir log dosyasını işleme al
for file in $LOG_DIR/*.log; do
BASENAME=$(basename $file)
SIGNATURE_FILE="$SIGNED_DIR/${BASENAME}_$TIMESTAMP.sig"
# Log dosyasını hashle ve imzala
openssl dgst -sha256 -sign $KEY_DIR/privatekey.pem -out $SIGNATURE_FILE $file
echo "Log file $file signed as $SIGNATURE_FILE"
done
-
- Scripti Çalıştırılabilir Yapma:
sudo chmod +x /usr/local/bin/sign_wazuh_logs.sh
4. QNAP NAS’e Yedekleme
NAS’i Bağlama
-
- SMB Paylaşımını Bağlama:
sudo mkdir -p /mnt/qnap_logs
sudo mount -t cifs //192.168.20.155/5651 /mnt/qnap_logs -o username=my_username,password=my_password
-
- Otomatik Montaj (Fstab):
SMB paylaşımını sistem yeniden başlatıldığında otomatik bağlamak için fstab
dosyasına şu satırı ekleyin:
//192.168.20.155/5651 /mnt/qnap_logs cifs username=my_username,password=my_password,iocharset=utf8,vers=3.0 0 0
Rsync ile Yedekleme Scripti
-
- Yedekleme Scripti Oluşturma:
sudo nano /usr/local/bin/backup_to_qnap.sh
-
- Script İçeriği:
#!/bin/bash
SIGNED_DIR="/var/log/signed_logs"
QNAP_DIR="/mnt/qnap_logs"
# İmzalanmış logları QNAP NAS’e kopyala
rsync -av $SIGNED_DIR/ $QNAP_DIR/
echo "Logs backed up to QNAP NAS at $QNAP_DIR"
-
- Scripti Çalıştırılabilir Yapma:
sudo chmod +x /usr/local/bin/backup_to_qnap.sh
5. Süreçleri Otomatikleştirme
Cron Job Ekleyerek Zamanlama
-
- Cron Tablosunu Açın:
sudo crontab -e
-
- Cron Görevlerini Ekleyin:
# Her gece 2’de logları imzala
0 2 * * * /usr/local/bin/sign_wazuh_logs.sh
# Her gece 3’te imzalı logları NAS’e yedekle
0 3 * * * /usr/local/bin/backup_to_qnap.sh
6. 5651 Uyumunu Doğrulama
İmzaları Doğrulama
openssl dgst -sha256 -verify /etc/wazuh-keys/publickey.pem -signature /var/log/signed_logs/log-file.sig /var/ossec/logs/alerts/log-file.log
Zaman Damgası Eklemek
Eğer logların zaman damgası gerekliliği varsa, Türkiye’deki bir zaman damgası sağlayıcısından API ile zaman damgası eklemeyi düşünebilirsiniz. Örneğin, OpenTSA kullanılabilir.
Sonuç
Bu süreç sayesinde Wazuh loglarını:
- SHA256 ile hashleyip imzaladınız,
- QNAP NAS cihazına yedeklediniz,
- Otomatikleştirerek manuel iş yükünü azalttınız.
5651 uyumluluğunu tam olarak sağlamak için zaman damgası sağlayıcılarından destek almayı ve imzalı logların saklanmasını düzenli olarak kontrol etmeyi unutmayın.
Elinize sağlık çok güzel içerik.