\x89PNG\r\n\x1a\n\x00\x00\x00\x0DIHDR\x00\x00\x00\x01\x00 \x00\x00\x01\x08\x06\x00\x00\x00\x1F\x15\xC4\x89\x00\x00\x00 \x0AIDATx\x9Ccb\x00\x00\x00\x06\x00\x03\x1A\x05\x9D\x00\x00 \x00\x00IEND\xAE\x42\x60\x82
| Path : /var/www/html/yedekledb24/DatabaseBackupMasterv5/ |
|
B-Con CMD Config cPanel C-Rdp D-Log Info Jump Mass Ransom Symlink vHost Zone-H |
| Current File : /var/www/html/yedekledb24/DatabaseBackupMasterv5/fix_gpg_path.py |
#!/usr/bin/env python
# -*- coding: utf-8 -*-
"""
YedekleDB24 için GPG anahtarı dizinini düzeltme scripti.
Bu script, tüm şifreleme işlemlerinde kullanılan GPG anahtarlarının
belirtilen dizinde oluşturulmasını ve kullanılmasını sağlar.
"""
import os
import re
import logging
# Logging yapılandırması
logging.basicConfig(level=logging.INFO,
format='%(asctime)s - %(name)s - %(levelname)s - %(message)s')
logger = logging.getLogger(__name__)
def update_gpg_path_in_file(file_path):
"""
Belirtilen dosyadaki GPG home dizini kodunu günceller.
Args:
file_path (str): Güncellenecek dosyanın yolu
Returns:
bool: Başarılı ise True, değilse False
"""
try:
# Dosya içeriğini oku
with open(file_path, 'r', encoding='utf-8') as f:
content = f.read()
# Eski kodu bul ve değiştir
pattern = r"[ \t]*# GPG home dizini[^\n]*\n[ \t]*gpg_home = os\.path\.join\(os\.path\.dirname\(os\.path\.abspath\(__file__\)\), 'gpg_keys'\)[^\n]*\n[ \t]*os\.makedirs\(gpg_home, exist_ok=True\)"
replacement = """ # GPG home dizini - Çevre değişkeninden
base_path = os.environ.get('GPG_HOME_DIR', os.path.dirname(os.path.abspath(__file__)))
gpg_home = os.path.join(base_path, 'gpg_keys')
os.makedirs(gpg_home, exist_ok=True)"""
# Değişiklikleri uygula
new_content = re.sub(pattern, replacement, content)
# Değişiklik yapıldı mı kontrol et
if new_content == content:
logger.warning(f"Dosyada ({file_path}) değişiklik yapılmadı, eşleşme bulunamadı.")
return False
# Değişiklikleri kaydet
with open(file_path, 'w', encoding='utf-8') as f:
f.write(new_content)
logger.info(f"Dosya başarıyla güncellendi: {file_path}")
return True
except Exception as e:
logger.error(f"Dosya güncellenirken hata: {str(e)}")
return False
def fix_all_gpg_paths():
"""
Tüm şifreleme dosyalarındaki GPG home dizini kodunu günceller.
Returns:
int: Güncellenen dosya sayısı
"""
# Güncellenecek dosyalar
files_to_update = [
'encryption_utils.py',
'encryption_utils_simplified.py',
]
updated_count = 0
for file_path in files_to_update:
if os.path.exists(file_path):
if update_gpg_path_in_file(file_path):
updated_count += 1
else:
logger.warning(f"Dosya bulunamadı: {file_path}")
return updated_count
def main():
"""Ana fonksiyon"""
logger.info("GPG anahtarı dizini düzeltme işlemi başlatılıyor...")
# GPG_HOME_DIR değişkenini kontrol et
gpg_home_dir = os.environ.get('GPG_HOME_DIR')
if not gpg_home_dir:
logger.warning("GPG_HOME_DIR çevre değişkeni ayarlanmamış. "
"Lütfen .env dosyasında ayarlayın veya sisteme ekleyin.")
else:
logger.info(f"GPG anahtarları şu dizinde saklanacak: {gpg_home_dir}")
# Tüm dosyaları güncelle
updated_count = fix_all_gpg_paths()
logger.info(f"Toplam {updated_count} dosya güncellendi.")
logger.info("GPG anahtarı dizini düzeltme işlemi tamamlandı.")
if __name__ == "__main__":
main()