Part 4 sonunda Docker platformu hazırdı. Bu bölümde klasik offensive-security ikilisini ekledim: Kali attacker, Metasploitable ise bilerek zafiyetli bırakılmış target.

İkisini de PENTEST VLAN’a koydum. Böylece pratik trafiği lab’in geri kalanından ayrı kaldı ve segment dışına çıkış tamamen pfSense kurallarına bağlı oldu.


Ne İnşa Ettim?

Segment:          PENTEST
VLAN:             40
Gateway:          10.10.40.1
Kali IP:          10.10.40.102
Metasploitable:   10.10.40.100
Kali: vmbr1 + VLAN tag 40.
Metasploitable: VLAN 40 ve local-zfs disk.


Neden Önemli?

Vulnerable target’ın management veya domain segmentinde durmaması gerektiğini düşünüyorum. PENTEST VLAN, saldırı trafiğini kontrollü bir alanda tutmamı sağlıyor.

Bu sayede ileride firewall kararları daha anlamlı hale gelecek:

PENTEST -> HONEYPOT     test için izinli olabilir
PENTEST -> CLIENT       sadece controlled simulation sırasında
PENTEST -> SIEM         normalde kapalı, sadece açık management path varsa

Topoloji Kesiti

PENTEST VLAN 40 / 10.10.40.0/24
        |-- Kali Linux          10.10.40.102
        |-- Metasploitable 2    10.10.40.100
pfSense gateway: 10.10.40.1

Kurulum Adımları

Metasploitable Import

Metasploitable normal ISO installer ile kurulmadığı için akış biraz farklı:

Empty VM -> image download -> disk import -> attach disk -> boot order
cd /var/lib/vz/images/104
wget https://downloads.metasploit.com/data/metasploitable/metasploitable-linux-2.0.0.zip
unzip metasploitable-linux-2.0.0.zip
qm importdisk 104 Metasploitable.vmdk local-zfs
Metasploitable için boş VM.
Image Proxmox üzerinde indiriliyor.
qm importdisk ile disk import.
Imported disk VM'e attach edilip boot order içine alındı.

ZFS Volume Reference Fix

İlk boot sırasında şu hatayı aldım:

TASK ERROR: unable to parse zfs volume name '104/Metasploitable.qcow2'

Disk vardı, ama VM config dosyası diski yanlış referans ediyordu. Gerçek ZFS volume adını kontrol edip config’i buna göre düzelttim:

zfs list | grep 104
vi /etc/pve/qemu-server/104.conf

Doğru satır:

virtio0: local-zfs:vm-104-disk-1,iothread=1,size=32G
ZFS parse hatası.
104.conf içinde disk referansı düzeltildi.
Gerçek ZFS volume adı doğrulandı.

Kali Kurulumu

Kali’yi normal ISO installer ile kurdum. Buradaki kritik ayar yine network tarafıydı: vmbr1, VLAN tag 40.

Kali installer başlangıcı.
Kali VM için guided disk partitioning.
Kali software selection.
Kali PENTEST VLAN'da hazır.

macOS Route’u Kalıcı Hale Getirmek

Lab’in ilk erişim modelinde MacBook’tan 10.10.0.0/16 ağına yerel route eklemiştim. route add reboot sonrası kaybolduğu için erişim bir noktada tekrar bozuldu.

sudo route -n add -net 10.10.0.0/16 192.168.1.87
netstat -rn | grep 10.10

Kalıcı dosya:

/Library/LaunchDaemons/com.homelab.route.plist

Çalıştırdığı komut:

/sbin/route -n add -net 10.10.0.0/16 192.168.1.87

Bu çözüm daha sonra Tailscale remote access ile değişecek, ama local route’un neden reboot sonrası kaybolduğunu belgelemek önemliydi.


Karşılaştığım Problemler

Ready image ISO gibi kurulmaz. Önce boş VM oluşturmam, sonra diski import edip attach etmem gerekti.

ZFS disk adı farklı. VM config dosyasının filename yerine vm-104-disk-1 formatındaki gerçek ZFS volume adını referans etmesi gerekti.

macOS route kalıcı değil. route add reboot sonrası kayboluyor. İlk erişim sorunlarından biri buydu.


Ne Öğrendim?

PENTEST VLAN’ın noisy tool ve vulnerable machine’ler için ayrı bir pratik alanı olduğunu netleştirdim. Kali ve Metasploitable birbirini doğrudan görebiliyor; segment dışına çıkış ise pfSense rule’larıyla kontrollü kaldı.

Bir Proxmox dersi de çıktı: ZFS üzerinde disk import etmek sadece dosya kopyalamak değil. VM config doğru ZFS volume adını referans etmezse disk orada olsa bile VM boot edemiyor.


Doğrulama Kanıtı

Kali’den:

ip addr
ping -c 3 10.10.40.1
ping -c 3 10.10.40.100
nmap -sV 10.10.40.100

Tunnel:

ssh -L 8081:10.10.40.100:80 admin@10.10.1.50
# browser: http://localhost:8081

Sırada Ne Var?

Attacker ve target hazır. Sırada bu trafiği gözlemleyebilmek için Wazuh SIEM temelini kurmak var.


Hızlı Referans

qm importdisk 104 Metasploitable.vmdk local-zfs
zfs list | grep 104
vi /etc/pve/qemu-server/104.conf
virtio0: local-zfs:vm-104-disk-1,iothread=1,size=32G
ssh -L 8081:10.10.40.100:80 admin@10.10.1.50