Introduction
Modern bilgi teknolojilerinde güvenlik ve etik artık yalnızca teknik gereklilikler değil, aynı zamanda kurumsal itibar, kullanıcı güveni ve yasal zorunlulukların bir parçasıdır.
Bu makalede, güvenlik ve etik prensipleri çerçevesinde:
- Temel güvenlik önlemlerini uygulayacağız,
- Etik ilkelere uygun veri yönetimini tartışacağız,
- Gerçek dünya saldırı ve ihlallerinden dersler çıkaracağız,
- CLI ve config örnekleriyle pratiğe dökeceğiz.
Prerequisites
Başlamadan önce aşağıdaki gereksinimlere ihtiyacınız olacak:
- Linux tabanlı bir sistem (Ubuntu 22.04 önerilir)
- Root veya sudo yetkileri
- Temel ağ bilgisi (IP adresi, port kavramı)
- Güvenlik araçlarına aşinalık (nmap, openssl, ufw)
Step 1 – Temel Güvenlik Kurulumları
1.1 Güçlü Parola Politikaları
Parolalar, sistem güvenliğinin ilk basamağıdır. Minimum gereksinimler:
- En az 12 karakter
- Büyük/küçük harf, rakam ve özel karakter kombinasyonu
- Parola tekrar kullanılmamalı
Linux’ta parola politikası ayarlama:
sudo apt install libpam-pwquality -y
sudo nano /etc/security/pwquality.conf
İçerik:
minlen = 12
dcredit = -1
ucredit = -1
ocredit = -1
lcredit = -1
1.2 SSH Güvenliği
Varsayılan SSH ayarları saldırılara açıktır. /etc/ssh/sshd_config dosyasında şunları değiştirin:
Port 2222
PermitRootLogin no
PasswordAuthentication no
SSH servisini yeniden başlatın:
sudo systemctl restart sshd
1.3 Güvenlik Duvarı (UFW)
sudo apt install ufw -y
sudo ufw default deny incoming
sudo ufw default allow outgoing
sudo ufw allow 2222/tcp
sudo ufw enable
sudo ufw status verbose
Step 2 – Etik İlkeler ve Veri Gizliliği
2.1 Privacy by Design
GDPR ve KVKK, “tasarımda gizlilik” yaklaşımını zorunlu kılar. Yani uygulamalar en baştan itibaren veri minimizasyonunu dikkate almalıdır.
2.2 Kullanıcı Verilerinin Şifrelenmesi
# Dosya şifreleme
openssl enc -aes-256-cbc -salt -in data.txt -out data.enc
# Dosya çözme
openssl enc -d -aes-256-cbc -in data.enc -out data.txt
2.3 Etik Senaryolar
- Kullanıcıdan açık rıza almadan veri toplamak etik dışıdır.
- “Varsayılan açık” yerine “varsayılan kapalı” ilkesi uygulanmalı.
Step 3 – İzleme ve Denetim
3.1 Auditd ile İzleme
Auditd sistem çağrılarını kaydederek adli analiz için veri sunar.
sudo apt install auditd -y
sudo systemctl enable auditd
sudo auditctl -w /etc/passwd -p war -k passwd_changes
Logları inceleme:
ausearch -k passwd_changes
3.2 Syslog ile Merkezi Loglama
sudo nano /etc/rsyslog.conf
*.* @@192.168.1.100:514
sudo systemctl restart rsyslog
Step 4 – Güvenlik Araçları ve Testler
4.1 Nmap ile Ağ Taraması
nmap -sV -p 1-65535 192.168.1.10
4.2 Nikto ile Web Güvenliği Testi
nikto -h http://example.com
4.3 Fail2ban ile Brute-Force Önleme
sudo apt install fail2ban -y
sudo systemctl enable fail2ban
Konfigürasyon: /etc/fail2ban/jail.local
[sshd]
enabled = true
port = 2222
filter = sshd
maxretry = 5
Step 5 – Etik Hackerlık ve Pentest Yaklaşımı
5.1 Penetrasyon Testi Aşamaları
- Keşif (Reconnaissance)
- Tarama (Scanning)
- Erişim Sağlama (Exploitation)
- Erişimi Sürdürme (Persistence)
- İzleri Temizleme (Covering Tracks)
5.2 Kullanılan Araçlar
- Metasploit
- Burp Suite
- Aircrack-ng