CT-101 Samba: ganesha 6.5 Client-Allowlist per CLIENT-Block (vor EXPORT)
- Mount von ghostnet-ki schlug mit EPERM fehl: Export hatte "0 defined clients" (kein clients-Parameter -> Zugriffspruefung schlaegt fehl) - Ganesha 6.5: CLIENT-Block mit kleingeschriebenem `clients`, Block MUSS vor dem EXPORT stehen (Parser ist reihenfolgeempfindlich); gegen den 6.5-Parser verifiziert. EXPORT auf Access_Type = None (deny-by-default), CLIENT gewaehrt 10.0.0.90 RW; nftables deckelt zusaetzlich auf 2049 nur von 10.0.0.90 Generated by Mistral Vibe. Co-Authored-By: Mistral Vibe <vibe@mistral.ai>
This commit is contained in:
@@ -152,12 +152,12 @@ GNENC-002 Abschnitt 4): `input/`, `jd/`, `queue/`, `work/`, `output/`,
|
||||
`proxmox/lxc/ct-101-samba/` ist gebaut (Design in
|
||||
[GNAI-019](GNAI-019-DEC_Ansible-Migration.md), Requirements in
|
||||
[GNAI-018](GNAI-018-REQ_Encoding-Pipeline-Integration.md)) und lokal
|
||||
verifiziert (Syntax-Checks, Check-Mode-Smoke). **In Arbeit (Stand
|
||||
27.10.2026):** Adoption gemäß Runbook in `ansible/README.md` — Schlüssel
|
||||
installiert, SSH-Zugang für `ghost-agent` (UID 1004) und `ghost` (UID 1000)
|
||||
hergestellt; die elf Inventory-Platzhalter wurden am 27.10.2026 aus
|
||||
preflight/live gefüllt (alle drei Inventare byte-identisch); ausstehend:
|
||||
audit, bootstrap, Konvergenz, Verifikation.
|
||||
verifiziert (Syntax-Checks, Check-Mode-Smoke). **Adoption erledigt
|
||||
30.10.2026:** Audit ok=26 changed=0; Bootstrap ok=32 changed=9;
|
||||
Pre-Migration-Backup `pre-migration-20261029T181754Z`;
|
||||
`site.yml --check --diff` ok=100 changed=20; Konvergenz ok=128 changed=2;
|
||||
verify-production ok=61 changed=0; Idempotenz-Lauf changed=0 — Details in
|
||||
GNAI-019 Abschnitt 16.
|
||||
2. **`[printers]` doppelt** in der `smb.conf` — erledigt: Das Duplikat (inkl.
|
||||
Kommentarblöcke) ist im templated `smb.conf` bereinigt; `testparm` ist als
|
||||
`validate:`-Gate im Rollen-Flow verankert (GNAI-019 Entscheidung 7).
|
||||
|
||||
@@ -346,7 +346,14 @@ dieselbe Person auf Medien-/SMB-Ebene ist nicht erforderlich.
|
||||
## 16. Offene Punkte
|
||||
|
||||
1. Adoption des produktiven CT 101 gemäß Runbook in
|
||||
`proxmox/lxc/ct-101-samba/ansible/README.md` (erfordert Betreiber-Autorisierung).
|
||||
`proxmox/lxc/ct-101-samba/ansible/README.md` — **erledigt 30.10.2026:**
|
||||
Audit ok=26 changed=0; Bootstrap ok=32 changed=9 (ansible-deploy UID 1005,
|
||||
NOPASSWD, SSH-Hardening); Backup `pre-migration-20261029T181754Z`;
|
||||
check --diff ok=100 changed=20; Konvergenz ok=128 changed=2 (Ganesha-Quadlet
|
||||
healthy mit 2049 TCP/UDP, 14 Shares inkl. [Encode]/[Encode-In], passdb
|
||||
unverändert mit ghost/daidalaw/debugofen, nftables ghostnet_filter aktiv);
|
||||
verify-production ok=61 changed=0; Idempotenz-Lauf changed=0. Reboot-Test
|
||||
und NFSv4.2-Mount-Test von ghostnet-ki siehe Punkt 5 bzw. GNAI-017.
|
||||
2. Elf Inventory-Platzhalter mit den Ist-Werten füllen (`preflight.yml` /
|
||||
`audit-production.yml` liefern sie) — **erledigt 27.10.2026**: preflight und
|
||||
Live-Abfragen lieferten die Werte; alle drei Inventare sind byte-identisch
|
||||
|
||||
@@ -23,20 +23,25 @@ EXPORT_DEFAULTS {
|
||||
Access_Type = None;
|
||||
}
|
||||
|
||||
# Client allowlist: only ghostnet-ki gets RW (GNAI-017 section 4.1). Ganesha
|
||||
# 6.5 syntax: CLIENT block with lowercase `clients` parameter, and it must
|
||||
# appear BEFORE the EXPORT block (parser is order-sensitive; verified against
|
||||
# the 6.5 parser on 2026-10-30). Additionally the nftables policy only admits
|
||||
# 2049 from 10.0.0.90 (samba_firewall, asserted by verify-production.yml).
|
||||
CLIENT {
|
||||
clients = {{ samba_nfs_client_ipv4 }};
|
||||
Access_Type = RW;
|
||||
}
|
||||
|
||||
EXPORT {
|
||||
Export_Id = {{ samba_nfs_export_id }};
|
||||
Path = {{ samba_nfs_export_path }};
|
||||
Pseudo = {{ samba_nfs_export_path }};
|
||||
Access_Type = RW;
|
||||
Access_Type = None;
|
||||
Squash = rootid;
|
||||
SecType = sys;
|
||||
Protocols = 4;
|
||||
Transports = TCP,UDP;
|
||||
# Client restriction ("only ghostnet-ki 10.0.0.90", GNAI-017 section 4.1) is
|
||||
# enforced by the nftables policy (port 2049 only from 10.0.0.90, default
|
||||
# drop; samba_firewall, asserted by verify-production.yml). Ganesha 6.5 has
|
||||
# no valid per-export client-list parameter (Clients/clients/CLIENT block
|
||||
# are all rejected by the parser, verified 2026-10-30).
|
||||
FSAL {
|
||||
Name = VFS;
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user