# ===================================================================================== # ap3 — dedizierte Service-Accounts nachziehen. TP28-Nachtrag, 2026-08-30. # # BEFUND: nach dem Bring-up rendert Golden Config die intended config fuer ap3 sauber, # aber der BACKUP-Job scheitert -- Nautobot kommt per SSH nicht auf das Geraet. Ursache # ist kein Netz- und kein Firewall-Problem: ap1/ap2/core/branch tragen seit TP-PWD # (2026-08-23) dedizierte Service-Accounts `nautobot` und `ha`, ein Werksgeraet hat nur # `admin`. Ohne den User gibt es kein Backup, ohne Backup keine Compliance-Eintraege -- # und die Gesamtzahl bleibt unauffaellig bei 104/104, weil ein Geraet ohne Ergebnisse # eben auch keine Drift meldet. 🔴 Merkregel: eine gleichbleibende Compliance-Zahl nach # dem Hinzufuegen eines Geraets ist ein BEFUND, kein Erfolg. # # Policies 1:1 von ap1 uebernommen (live gelesen, nicht abgeschrieben): # grp-ha = read,test,api,rest-api + alles andere explizit aus # grp-nautobot = ssh,read,write,test,sensitive + alles andere explizit aus # (write, weil Golden Config auch deployen koennen muss) # # `__HA_PW__` / `__NB_PW__` sind PLATZHALTER. Die echte Datei wird zur Laufzeit aus # ~/.secrets/credentials.env (MIKROTIK_HA_PASS / MIKROTIK_NAUTOBOT_PASS) ins Scratchpad # generiert und danach geloescht -- die Werte stehen nie in diesem Repo. # ===================================================================================== :if ([:len [/user group find where name="grp-ha"]]=0) do={ /user group add name=grp-ha policy=read,test,api,rest-api,!local,!telnet,!ssh,!ftp,!reboot,!write,!policy,!winbox,!password,!web,!sniff,!sensitive,!romon } :if ([:len [/user group find where name="grp-nautobot"]]=0) do={ /user group add name=grp-nautobot policy=ssh,read,write,test,sensitive,!local,!telnet,!ftp,!reboot,!policy,!winbox,!password,!web,!sniff,!api,!romon,!rest-api } :if ([:len [/user find where name="ha"]]=0) do={ /user add name=ha group=grp-ha password="__HA_PW__" comment="TP-PWD 2026-08-23: dedizierter Service-Account" } else={ /user set [find name="ha"] group=grp-ha password="__HA_PW__" } :if ([:len [/user find where name="nautobot"]]=0) do={ /user add name=nautobot group=grp-nautobot password="__NB_PW__" comment="TP-PWD 2026-08-23: dedizierter Service-Account" } else={ /user set [find name="nautobot"] group=grp-nautobot password="__NB_PW__" } :log info ("tp28-ap3: service-accounts, users=" . [:tostr [:len [/user find]]] . " groups=" . [:tostr [:len [/user group find]]])