Übung 4: NOROOT4U duplizieren und als unprivileged Agent starten 🧬👤

In dieser Übung baust du dir einen zweiten UNIX Agenten als Kopie des bestehenden Agents. Diesen neuen Agenten nennst du NOROOT4U und startest ihn bewusst als unprivileged Agent unter dem OS-User automic.

Für diese Übung verwendest du bewusst die neue Verzeichnisstruktur unter /opt/Automic/ADX02. Der Agent liegt dabei unter /opt/Automic/ADX02/Agents/noroot4u. Diese Struktur brauchst du später, wenn du zusätzlich einen eigenen ServiceManager unter /opt/Automic/ADX02/ServiceManager bereitstellst.

🧭 Ziel der Übung

  • Du duplizierst einen bestehenden UNIX Agenten als eigene Testinstanz NOROOT4U
  • Du passt die neue Agent-Konfiguration für einen separaten Start an
  • Du startest den neuen Agenten bewusst ohne privilegierten User-Switch unter automic
  • Du prüfst anschließend mit zwei Login-Objekten, dass NOROOT4U keinen User-Switch mehr ausführt

🧪 Schritt-für-Schritt-Anleitung

  1. Agent-Verzeichnis am Host duplizieren
    • Führe diese Kommandos am Linux-Host aus:
mkdir -p /opt/Automic/ADX02/Agents
cp -a /opt/Automic/Automation.Platform/Agents/unix /opt/Automic/ADX02/Agents/noroot4u
find /opt/Automic/ADX02/Agents/noroot4u/temp -mindepth 1 -delete
gedit /opt/Automic/Automation.Platform/Agents/noroot4u/bin/ucxjlx6.ini
  • Dieser Block legt den Zielpfad für den neuen Agenten an, kopiert den bestehenden UNIX Agenten nach /opt/Automic/ADX02/Agents/noroot4u, leert das Verzeichnis temp und startet gedit damit du Folgende Anpassungen machen kannst:

NAME=NOROOT4U
PORT=2301
LOGIN_CHECK=N
automic=NO_START entfernen
  1. In das neue bin-Verzeichnis wechseln
    • Wechsle in das bin-Verzeichnis des neuen Agents:
cd /opt/Automic/ADX02/Agents/noroot4u/bin
  1. Neue INI-Einstellungen prüfen
    • Prüfe, ob Name, Port und LOGIN_CHECK wie erwartet gesetzt sind und ob der Eintrag automic=NO_START aus der Kopie entfernt wurde:
grep -in 'name=\|port=\|login_check\|automic=' ucxjlx6.ini
  1. SUID-Bit entfernen
    • Entferne für diesen Testaufbau ein mögliches SUID-Bit auf ucxjlx6:
sudo chmod u-s ucxjlx6
ls -l ucxjlx6
stat ucxjlx6
  1. Startkontext vorbereiten
    • Prüfe, dass du den Agenten als OS-User automic startest:
id automic
  1. Agent als automic starten
    • Starte den neuen Agenten bewusst als User automic:
/opt/Automic/ADX02/Agents/noroot4u/bin/ucxjlx6
  1. Laufenden Prozess prüfen
    • Öffne ein zweites Terminal oder eine zweite Session und prüfe den Prozess:
ps -ef | grep ucxjlx6
  1. Listener des neuen Agents prüfen
    • Prüfe, welchem User der Listener-Socket des neuen Agents auf Port 2301 gehört:
sudo lsof -i :2301
  1. Beobachtung einordnen
  • Beobachtung: NOROOT4U läuft unter automic
  • Beobachtung: Es gibt für diesen Agenten keinen zusätzlichen privilegierten Helper-Prozess unter root
  1. Starte deinen Testjob auf NOROOT4U mit LOGIN.UNIX
  2. Report des ersten Runs prüfen
  • Öffne den Report und prüfe die Ausgabe von whoami und id
  • Beobachtung: Der Run läuft unter automic
  1. Starte denselben Testjob auf NOROOT4U jetzt mit LOGIN.BATCH
  2. Report des zweiten Runs prüfen
  • Prüfe im Report oder in der Ausführungsmeldung, dass dieser Run nicht erfolgreich ausgeführt wird
  • 👀 Beobachtung: Der Run kann den gewünschten Kontextwechsel auf batch nicht durchführen
  1. Ergebnis festhalten
  • Halte für dich fest: NOROOT4U führt keinen OS-User-Switch mehr aus

Warum braucht ein unprivileged Agent den Anonymous Mode?

Laut Dokumentation muss ein UNIX Agent im unprivileged Modus auch im Anonymous Mode betrieben werden, weil er keinen User-Context-Switch durchführen kann.

Dafür setzt du in der Agent-INI LOGIN_CHECK=N und pflegst in der zugeordneten Host-Charakteristik die gewünschten Werte für ANONYMOUS_JOB, ANONYMOUS_FT und ANONYMOUS_FE.

🧩 Zusammenfassung

  • NOROOT4U ist eine duplizierte Testinstanz des bestehenden UNIX Agents
  • Mit LOGIN_CHECK=N, ohne SUID-Bit und ohne den kopierten Eintrag automic=NO_START bereitest du den Agenten für einen unprivileged Betrieb vor
  • ANONYMOUS_JOB=Y Hast du bereit in Übung 3 definiert.
  • Wenn du NOROOT4U als automic startest, läuft der Agent im Kontext dieses Users und ohne zusätzlichen privilegierten Helper-Prozess
  • Ein Run mit LOGIN.BATCH kann auf NOROOT4U keinen Wechsel auf den User batch durchführen

Einen Kommentar hinterlassen

Deine E-Mail-Adresse wird nicht veröffentlicht. Erforderliche Felder sind mit * markiert