İşte X20 projelerinde sık kullandığım, kısa ve net konfig önerileri:
- Genel OS ve kaynaklar
- Ubuntu 22.04 LTS (minimal kurulum) kullan; RAM’e göre swap ayarla (ör. 2GB) ve swappiness 10’a düşür.
- Sistem/çekirdek ayarları (sysctl/limits)
- net.core.somaxconn=65535
- fs.file-max=200000
- vm.swappiness=10
- max open files için limits.conf’da yeterli açık dosya limiti tanımla
- SSH güvenliği
- Portu değiştir (ör. 2222)
- PermitRootLogin no, PasswordAuthentication no
- PubkeyAuthentication yes, AllowUsers kullanıcı1,kullanıcı2
- Güvenlik duvarı
- UFW aktif et: default deny
- 2222/tcp, 80/tcp, 443/tcp izinli
- ufw logging aktif
- Web sunucusu ve TLS (Nginx)
- HTTP/2 açık, TLS 1.2 ve 1.3 zorunlu
- HSTS: max-age=31536000; includeSubDomains
- OCSP stapling ve güvenli cipher’lar (Modern, zayıf protokolleri devre dışı bırak)
- Uygulama sunucusu (örn. PHP-FPM) ve DB
- PHP-FPM: pm dynamic, pm.max_children RAM’a göre ayarla (ör. 40-80)
- MySQL/MariaDB: innodb_buffer_pool_size RAM’ın yaklaşık %50-70’i (sunucunun RAM’ine göre)
- innodb_log_file_size küçük/orta yük için 256M-512M arası
- Önbellekleme
- Redis’i önbellek amacıyla kullan; maxmemory RAM’in yaklaşık %20-30’u ile başla, allkeys-lru politikası
- Günlükler ve izleme
- rsyslog veya journald ile merkezi loglama; logrotate ile günlükleri yönet
- Prometheus Node Exporter + Grafana kurulumu planla; temel uyarılar için Alertmanager kullan
- Yedekleme
- Restic/Borg ile günlük yedekler, haftalık tam yedekler; güvenli depolama (ör. S3/Soğuk depolama) kullan
- Yedeklerde şifreleme ve doğrulama (prüf) işlemlerini otomatikleştir
- Güncellemeler ve güvenlik otomasyonu
- unattended-upgrades etkinleşsin; güvenlik güncellemeleri otomatik gelsin
- Fail2ban veya DenyHosts ile brute-force koruması
- Konteynerler ve dağıtım
- Docker Compose ile çalışıyorsa her servis için kaynak kısıtı (memoria, CPU) ve restart: unless-stopped
- Görünür sürüm etiketleri (örn. image: myapp:1.2.3) kullan; otomatik kapanma risklerini azalt
- Dokümantasyon ve notlar
- Yapılandırmaları ve önemli değişiklikleri kısa bir wiki veya not dosyasına kaydet; değişiklik history’si hep güncel kalsın
İhtiyaca göre bu maddelerden bazılarını daha ayrıntılı değerlerle (RAM, disk, trafik) özelleştirebilirsin.