Go to file
Boban Blaskovic 9f8038d5f4 Site Details: 3 new tabs — vHost / SSL-TLS / SSH-FTP
vHost tab:
- HTTP-version segmented (HTTP/1.1 | HTTP/2 | HTTP/3 QUIC).
- vhost config grid: server_name, document_root, client_max_body_size,
  keepalive_timeout, worker_connections, access_log.
- 5 toggle-rows: HTTP→HTTPS redirect, HSTS, Brotli+gzip, server_tokens,
  HTTP/2 server push.
- Custom Headers kv-card (X-Frame-Options, X-Content-Type-Options,
  Referrer-Policy, Permissions-Policy).
- Rate Limit kv-card (/wp-login.php 5 req/min, /xmlrpc.php blocked).
- Actions: 'nginx -t (Syntax-Check)', 'vHost speichern + reload'.

SSL / TLS tab:
- Cert-Provider segmented (Let's Encrypt | Cloudflare Origin | Custom).
- CN + SAN + TLS-min (1.2 | 1.3) + Cipher Suite (Mozilla Modern/
  Intermediate/Old).
- 4 toggle-rows: OCSP Stapling, Auto-Renewal, CAA-Check, CT-Log.
- Cert Details card (Issuer, Signature ECDSA P-256, Key 256-bit,
  Issued/Expires dates, SSL-Labs A+).
- Bisherige Zertifikate table.
- Actions: download, renew now, save+reload.

SSH / FTP tab:
- SSH-Benutzer table (deploy/m.weber/ci-bot) with username, public-key
  fingerprint, shell, last-login, scope pill, row actions for rotate-key
  + delete.
- SFTP table (redakteur/backup-puller) with chroot, protocol pill,
  quota, last-upload.
- Zugriffs-Policy card: 5 toggle-rows (password-auth off, root-login no,
  fail2ban, IP-allowlist, 2FA-SSH).
- Actions: 'Public Key importieren', 'SSH/SFTP-Benutzer anlegen'.

Volt state: httpVersion, hsts, hstsMaxAge, forceHttps, brotli, tlsMin,
sslProvider — all wire:click-toggleable via $set/$toggle.

All 5 site-details Pest tests still green.
2026-06-01 00:18:14 +02:00
app Site Details: 3 new tabs — vHost / SSL-TLS / SSH-FTP 2026-06-01 00:18:14 +02:00
docker Skip composer scripts during build; defer package:discover to entrypoint 2026-05-31 18:05:05 +02:00
templates Foundation + Login Glass page from template 2026-05-31 22:18:51 +02:00
.dockerignore Bake app into multi-stage image; drop bind mounts for Portainer remote endpoint 2026-05-31 17:44:35 +02:00
.gitignore nginx: extra_hosts host-gateway for vite HMR upstream; gitignore root .env 2026-05-31 21:01:28 +02:00
Dockerfile Skip composer scripts during build; defer package:discover to entrypoint 2026-05-31 18:05:05 +02:00
docker-compose.override.yml Move dev bind-mounts to docker-compose.override.yml (keep Portainer stack clean) 2026-05-31 23:37:04 +02:00
docker-compose.portainer.yml Add image-only compose for Portainer Repository deploys (no buildkit) 2026-05-31 21:40:46 +02:00
docker-compose.yml Move dev bind-mounts to docker-compose.override.yml (keep Portainer stack clean) 2026-05-31 23:37:04 +02:00
stack.env.example Version-pin images: APP_VERSION for own builds, MARIADB/REDIS for services 2026-05-31 18:17:09 +02:00