Performans testi, sunucunuzun yük altında nasıl davrandığını anlamak ve trafik kapasitesini ölçmek için kritik öneme sahiptir.
Apache Benchmark, hızlı ve temel yük testleri için kullanılır.
-
Kurulum:
sudo apt install apache2-utils
-
Kullanım:
ab -n 1000 -c 10 http://yourdomain.com/
-n
: Toplam istek sayısı.-c
: Eşzamanlı istek sayısı.
Siege, eşzamanlı kullanıcı yüklerini simüle ederek performansı analiz eder.
-
Kurulum:
sudo apt install siege
-
Kullanım:
siege -c 50 -t 1M http://yourdomain.com/
-c
: Eşzamanlı kullanıcı sayısı.-t
: Test süresi (örneğin, 1 dakika).
Locust, Python tabanlı dağıtılmış yük testleri için güçlü bir araçtır.
-
Kurulum:
pip install locust
-
Kullanım:
locust -f locustfile.py
locustfile.py
içinde test senaryolarınızı yazabilirsiniz.
- Pingdom ve GTmetrix gibi araçlar, web sitenizin yüklenme hızını ve performansını ölçer.
Saldırganların kullandığı yöntemleri anlamak, savunma stratejilerinizi geliştirmek için önemlidir.
- Amaç: Trafiği tıkayarak sunucuyu çalışamaz hale getirmek.
- Araçlar:
- LOIC (Low Orbit Ion Cannon): DDoS saldırıları için kullanılan basit bir araç.
- hping3: Komut satırı üzerinden SYN flood saldırıları düzenler.
hping3 -S -p 80 --flood yourserver.com
- Amaç: Şifre tahmini ile sisteme yetkisiz erişim sağlamak.
- Araçlar:
- Hydra:
hydra -l admin -P passwords.txt yourserver.com ssh
- Hydra:
- Amaç: Sistem açıklarını tespit etmek.
- Araçlar:
- Metasploit: Güvenlik açıklarını bulur ve sömürür.
- Nikto: Web sunucularındaki zayıflıkları tarar.
Loglar, saldırıları anlamak ve kaynağını tespit etmek için en önemli araçtır.
- Erişim Logları:
- Apache:
/var/log/apache2/access.log
- Nginx:
/var/log/nginx/access.log
- Apache:
- SSH Logları:
/var/log/auth.log
Örnek Komut:
grep "Failed password" /var/log/auth.log
- Wireshark: Ağ trafiğini detaylı şekilde izler.
- Netstat:
netstat -an | grep :80
- GoAccess: Gerçek zamanlı log analizi yapar.
goaccess /var/log/nginx/access.log --log-format=COMBINED
iptables veya ufw ile IP adreslerini engelleyebilirsiniz.
sudo ufw enable
sudo ufw deny from <malicious-ip>
-
Fail2Ban: Kaba kuvvet saldırılarını önlemek için kullanılır.
sudo apt install fail2ban
Ayar Dosyası (
/etc/fail2ban/jail.local
):[ssh] enabled = true port = ssh logpath = /var/log/auth.log maxretry = 3 bantime = 600
-
Nginx Rate Limiting:
limit_req_zone $binary_remote_addr zone=one:10m rate=10r/s;
Sistem yazılımlarınızı ve bağımlılıkları düzenli olarak güncelleyin:
sudo apt update && sudo apt upgrade
- Zabbix veya Nagios gibi araçlarla sistem durumunu izleyin.
- Anlık uyarılar için alarmlar tanımlayın.
Anormal giriş denemeleri veya trafik için e-posta uyarıları ayarlayın.
Bu dökümanla sunucu performansınızı test edebilir, potansiyel saldırılara karşı savunma önlemleri alabilir ve sisteminizi güvenli hale getirebilirsiniz.
Özet Adımlar:
- Performans testi araçlarıyla sunucunuzu analiz edin.
- Logları ve ağ trafiğini düzenli olarak izleyin.
- Güvenlik duvarı ve rate limiting yöntemleri ile saldırıları engelleyin.
- Güncel yazılım ve izleme araçları ile sürekli güvenliği sağlayın.