Zugriff
- Open the CTFd URL:
https://<SERVER-IP> - Die Warnung zum selbstsignierten Zertifikat bestätigen.
- Schließen Sie den einmaligen Setup-Assistenten ab.
- Erstellen Sie das Administratorkonto.
- Konfigurieren Sie Ihr CTF.
Wichtige Dateien und Verzeichnisse
- Installationspfad:
/root/ctfd - Compose-Datei:
/root/ctfd/docker-compose.yml - Umgebungsdatei:
/root/ctfd/.env - Uploads:
/root/ctfd/.data/CTFd/uploads - Protokolle:
/root/ctfd/.data/CTFd/logs - MariaDB Data:
/root/ctfd/.data/mysql - Redis-Daten:
/root/ctfd/.data/redis - Nginx Konfiguration:
/etc/nginx/sites-available/ctfd - SSL-Zertifikat:
/etc/nginx/ssl/ctfd.crt - SSL-Privater Schlüssel:
/etc/nginx/ssl/ctfd.key
Docker-Verwaltung
Container prüfen:
docker ps
Logs ansehen:
cd /root/ctfd
docker compose logs -f
Dienste neu starten:
cd /root/ctfd
docker compose restart
Dienste stoppen:
cd /root/ctfd
docker compose down
Dienste starten:
cd /root/ctfd
docker compose up -d
Nginx verwalten
Testkonfiguration:
nginx -t
Nginx neu starten:
systemctl restart nginx
Nginx neu laden:
systemctl reload nginx
Nginx-Status prüfen:
systemctl status nginx
SSL mit einer Domain aktivieren
1. Richten Sie Ihre Domain auf die Server-IP aus.
2. Nginx-Konfiguration bearbeiten und ersetzen server_name _; with your domain in both HTTP and HTTPS blocks:
vim /etc/nginx/sites-available/ctfd
3. Certbot installieren:
apt install -y certbot python3-certbot-nginx
4. Generate a Let's Encrypt certificate:
certbot certonly --nginx --non-interactive --agree-tos --email [email protected] -d yourdomain.com
5. SSL-Pfade in der Nginx-Konfiguration ersetzen:
vim /etc/nginx/sites-available/ctfd
# Before:
# ssl_certificate /etc/nginx/ssl/ctfd.crt;
# ssl_certificate_key /etc/nginx/ssl/ctfd.key;
# After:
# ssl_certificate /etc/letsencrypt/live/yourdomain.com/fullchain.pem;
# ssl_certificate_key /etc/letsencrypt/live/yourdomain.com/privkey.pem;
6. Reload Nginx:
systemctl reload nginx