SafeLine Nedir? (detaylı incelemeye buradan ulaşabilirsiniz)
SafeLine, Chaitin tarafından geliştirilen açık kaynak kodlu bir Web Uygulama Güvenlik Duvarı (WAF) çözümüdür. Web uygulamalarınızı çeşitli siber saldırılara karşı korumak için tasarlanmıştır.
Temel Özellikler
– SQL Enjeksiyon Koruması: Veritabanı sorgularını manipüle etmeye yönelik saldırıları engeller
– XSS Koruması: Cross-site scripting saldırılarını önler
– DDoS Koruma: Dağıtık hizmet reddi saldırılarına karşı koruma sağlar
– Bot Yönetimi: Kötü amaçlı bot trafiğini filtreler
– API Güvenliği: API uç noktalarını korur
– Gerçek Zamanlı İzleme: Anlık güvenlik olaylarını takip eder
Kurulum Adımları
1. Sistem Gereksinimleri
– Linux işletim sistemi (Ubuntu/CentOS önerilir)
– Docker ve Docker Compose
– Minimum 2GB RAM
– 2 CPU çekirdeği
2. Docker ile Kurulum
bash
GitHub deposunu klonlayın
git clone https://github.com/chaitin/SafeLine.git
Proje dizinine gidin
cd SafeLine
Docker konteynerlerini başlatın
docker-compose up -d
3. Yapılandırma
Temel yapılandırma dosyası: config/safeline.yml
yaml
http: port: 80 ssl_port: 443 security: sql_injection: true xss: true bot_protection: true
4. Yönetim Paneline Erişim
Kurulum tamamlandıktan sonra yönetim paneline şu adresten ulaşabilirsiniz:
http://<sunucu-ip>:80/admin
Varsayılan giriş bilgileri:
– Kullanıcı Adı: admin
– Şifre: safeline123
Kullanım Senaryoları
1. Temel Koruma Kurallarını Etkinleştirme
bash
SQL enjeksiyon korumasını etkinleştirme
curl -X PUT http://localhost:80/api/v1/rules/sql_injection -H "Content-Type: application/json" -d '{"enabled": true}'
2. Özel Kural Ekleme
bash
curl -X POST http://localhost:80/api/v1/rules/custom -H "Content-Type: application/json" -d '{ "name": "block_admin_path", "pattern": "/admin", "action": "block", "description": "Admin panel erişimini engelle" }'
3. Saldırı Loglarını Görüntüleme
bash
curl http://localhost:80/api/v1/logs/attack
Gelişmiş Özellikler
1. Rate Limiting
yaml
config/safeline.yml rate_limit: enabled: true requests_per_minute: 100 burst: 20
2. Özel Beyaz Liste
bash
curl -X POST http://localhost:80/api/v1/whitelist -H "Content-Type: application/json" -d '{ "ip": "192.168.1.100", "description": "Güvenilen iç IP" }'
3. API Güvenliği
yaml
config/safeline.yml api_security: enabled: true openapi_spec: "/path/to/your/openapi.yaml"
Sorun Giderme
1. Servis Başlatma Hatası
bash
Logları kontrol edin
docker logs safeline-core
Docker konteyner durumunu kontrol edin
docker ps -a
2. Performans Sorunları
bash
Kaynak kullanımını izleyin
docker stats
Kural optimizasyonu yapın
curl -X PUT http://localhost:80/api/v1/optimize
Güncelleme İşlemleri
bash
Proje dizinine gidin
cd SafeLine
Son sürümü çekin
git pull origin master
Konteynerleri yeniden başlatın
docker-compose down && docker-compose up -d
Güvenlik Önerileri
1. Varsayılan yönetici şifresini değiştirin
2. Düzenli olarak güncelleme yapın
3. Sadece gerekli portları açık bırakın
4. Kompleks kurallar için regex ifadelerini dikkatli kullanın
SafeLine, web uygulamalarınız için güçlü bir güvenlik katmanı sağlar. Bu rehberde öğrendiklerinizle temel kurulumu yapabilir ve temel güvenlik kurallarını uygulayabilirsiniz.
Daha fazla bilgi için [resmi GitHub deposunu](https://github.com/chaitin/SafeLine) ziyaret edebilirsiniz.