Faraday docker: Unterschied zwischen den Versionen

Aus Xinux Wiki
Zur Navigation springen Zur Suche springen
Zeile 1: Zeile 1:
= Faraday Community Edition mit Docker Compose betreiben =
+
= Faraday Community Edition mit Docker und CLI =
 +
 
 +
== Ziel ==
 +
* Faraday Server läuft isoliert in Docker-Containern
 +
* Faraday CLI läuft lokal auf Kali Linux
 +
* Scanner (nmap, nikto, nuclei, …) werden per CLI importiert
 +
* Kein Kali-Paket, keine Python-Abhängigkeitsprobleme
  
 
== Voraussetzungen ==
 
== Voraussetzungen ==
* Docker Engine ≥ 20.10
+
* Kali Linux (oder Debian-basiert)
* Docker Compose V2 (Subbefehl: '''docker compose''')
+
* Root- oder sudo-Rechte
* Internetverbindung
+
* Internetzugang für Docker-Images
 +
 
 +
== Docker installieren ==
 +
* apt update
 +
* apt install docker.io docker-compose-plugin
 +
* systemctl enable docker --now
 +
* docker version
 +
* docker compose version
 +
 
 +
== Faraday Repository holen ==
 +
* git clone https://github.com/infobyte/faraday.git
 +
* cd faraday
 +
 
 +
== Faraday Server starten ==
 +
* docker compose up -d
 +
 
 +
== Container prüfen ==
 +
* docker ps
 +
 
 +
Erwartet werden Container für:
 +
* faraday-server
 +
* postgres
 +
* redis
 +
 
 +
== Faraday Webinterface ==
 +
* http://127.0.0.1:5985
 +
 
 +
Standard-Zugang:
 +
* Benutzer: faraday
 +
* Passwort: faraday
 +
 
 +
== Faraday CLI installieren (lokal, nicht im Container) ==
 +
* apt install python3-pip
 +
* pip3 install faraday-cli
 +
 
 +
== CLI Funktionstest ==
 +
* faraday-cli --help
 +
 
 +
== CLI mit Faraday Server verbinden ==
 +
* faraday-cli auth login --url http://127.0.0.1:5985 --user faraday --password faraday
 +
 
 +
== Verbindung testen ==
 +
* faraday-cli workspace list
 +
 
 +
== Workspace anlegen ==
 +
* faraday-cli workspace create lab01
 +
* faraday-cli workspace select lab01
 +
 
 +
== Scanner-Import mit Dateien ==
 +
 
 +
=== Nmap (XML) ===
 +
* nmap -sS -sV 10.0.10.104 -oX nmap.xml
 +
* faraday-cli tool import nmap nmap.xml
 +
 
 +
=== Nikto (XML) ===
 +
* nikto -h http://10.0.10.104 -o nikto.xml -Format xml
 +
* faraday-cli tool import nikto nikto.xml
 +
 
 +
=== Nuclei (JSON) ===
 +
* nuclei -u http://10.0.10.104 -json > nuclei.json
 +
* faraday-cli tool import nuclei nuclei.json
  
== Projektverzeichnis vorbereiten ==
+
== Scanner-Import per Pipe ==
* Verzeichnis anlegen:
 
mkdir -p ~/faraday
 
cd ~/faraday
 
  
== Docker-Compose-Datei erstellen ==
+
=== Nmap per Pipe ===
* Datei '''compose.yaml''' mit folgendem Inhalt anlegen:
+
* nmap -sS -sV 10.0.10.104 -oX - | faraday-cli tool import nmap -
  
<pre>
+
=== Nuclei per Pipe ===
services:
+
* nuclei -u http://10.0.10.104 -json | faraday-cli tool import nuclei -
  db:
 
    image: postgres:12.7-alpine
 
    restart: always
 
    container_name: faraday_db
 
    environment:
 
      - POSTGRES_USER=postgres
 
      - POSTGRES_PASSWORD=postgres
 
      - POSTGRES_DB=faraday
 
    ports:
 
      - '5432'
 
    volumes:
 
      - "./db:/var/lib/postgresql/data:rw"
 
  
  redis:
+
== Wichtige Hinweise ==
    image: 'redis:6.2-alpine'
+
* Faraday scannt nicht selbst, es importiert Ergebnisse
    container_name: faraday_redis
+
* Scanner laufen immer außerhalb von Faraday
    ports:
+
* CLI gehört nicht in Docker
      - '6379'
+
* Docker kapselt PostgreSQL und Redis vollständig
 +
* Das Kali-Paket python-faraday wird bewusst nicht verwendet
  
  app:
+
== Typische Fehler ==
    image: index.docker.io/faradaysec/faraday
+
* Schwarze Oberfläche → Workspace nicht ausgewählt
    restart: always
+
* Import schlägt fehl → falsches Ausgabeformat
    container_name: faraday_app
+
* CLI findet Server nicht → URL oder Port falsch
    entrypoint: "/entrypoint.sh"
+
* Scanner fehlen → Scanner müssen separat installiert sein
    volumes:
 
    - "./faraday:/home/faraday/.faraday:rw"
 
    environment:
 
      - PGSQL_USER=postgres
 
      - PGSQL_PASSWD=postgres
 
      - PGSQL_HOST=db
 
      - PGSQL_DBNAME=faraday
 
      - REDIS_SERVER=redis
 
    depends_on:
 
    - db
 
    - redis
 
    ports:
 
    - "5985:5985"
 
</pre>
 
  
== Faraday starten ==
+
== Stoppen von Faraday ==
* Im Projektverzeichnis:
+
* docker compose down
docker compose up -d
 
  
== Webinterface aufrufen ==
+
== Aufräumen ==
* Browser öffnen:
+
* docker compose down -v
http://localhost:5985
+
* docker system prune
  
== Passwort ändern ==
+
== Fazit ==
* Passwort des Benutzers '''faraday''' ändern:
+
* Docker + CLI ist die stabilste und reproduzierbare Variante
docker exec -it faraday_app faraday-manage change-password
+
* Geeignet für Schulung, Lab und Demo
 +
* Keine Versionskonflikte mit Kali

Version vom 7. Februar 2026, 14:02 Uhr

Faraday Community Edition mit Docker und CLI

Ziel

  • Faraday Server läuft isoliert in Docker-Containern
  • Faraday CLI läuft lokal auf Kali Linux
  • Scanner (nmap, nikto, nuclei, …) werden per CLI importiert
  • Kein Kali-Paket, keine Python-Abhängigkeitsprobleme

Voraussetzungen

  • Kali Linux (oder Debian-basiert)
  • Root- oder sudo-Rechte
  • Internetzugang für Docker-Images

Docker installieren

  • apt update
  • apt install docker.io docker-compose-plugin
  • systemctl enable docker --now
  • docker version
  • docker compose version

Faraday Repository holen

Faraday Server starten

  • docker compose up -d

Container prüfen

  • docker ps

Erwartet werden Container für:

  • faraday-server
  • postgres
  • redis

Faraday Webinterface

Standard-Zugang:

  • Benutzer: faraday
  • Passwort: faraday

Faraday CLI installieren (lokal, nicht im Container)

  • apt install python3-pip
  • pip3 install faraday-cli

CLI Funktionstest

  • faraday-cli --help

CLI mit Faraday Server verbinden

Verbindung testen

  • faraday-cli workspace list

Workspace anlegen

  • faraday-cli workspace create lab01
  • faraday-cli workspace select lab01

Scanner-Import mit Dateien

Nmap (XML)

  • nmap -sS -sV 10.0.10.104 -oX nmap.xml
  • faraday-cli tool import nmap nmap.xml

Nikto (XML)

  • nikto -h http://10.0.10.104 -o nikto.xml -Format xml
  • faraday-cli tool import nikto nikto.xml

Nuclei (JSON)

  • nuclei -u http://10.0.10.104 -json > nuclei.json
  • faraday-cli tool import nuclei nuclei.json

Scanner-Import per Pipe

Nmap per Pipe

  • nmap -sS -sV 10.0.10.104 -oX - | faraday-cli tool import nmap -

Nuclei per Pipe

Wichtige Hinweise

  • Faraday scannt nicht selbst, es importiert Ergebnisse
  • Scanner laufen immer außerhalb von Faraday
  • CLI gehört nicht in Docker
  • Docker kapselt PostgreSQL und Redis vollständig
  • Das Kali-Paket python-faraday wird bewusst nicht verwendet

Typische Fehler

  • Schwarze Oberfläche → Workspace nicht ausgewählt
  • Import schlägt fehl → falsches Ausgabeformat
  • CLI findet Server nicht → URL oder Port falsch
  • Scanner fehlen → Scanner müssen separat installiert sein

Stoppen von Faraday

  • docker compose down

Aufräumen

  • docker compose down -v
  • docker system prune

Fazit

  • Docker + CLI ist die stabilste und reproduzierbare Variante
  • Geeignet für Schulung, Lab und Demo
  • Keine Versionskonflikte mit Kali