Technische Benutzer, auch bekannt als Service Accounts oder technische Konten, sind spezielle Benutzerkonten, die für automatisierte Prozesse und Dienste verwendet werden. Im Kontext eines GitHub Action Runners, der auf einem VM-Cluster läuft, wird ein technischer Benutzer eingerichtet, um sicherzustellen, dass der Runner die benötigten Berechtigungen hat, ohne dass ein menschlicher Benutzerkonto dafür verwendet wird. Hier sind die Schritte, um einen technischen Benutzer auf einem VM-Cluster einzurichten, so dass der GitHub Action Runner als technischer Benutzer läuft: 1. **Erstellen des technischen Benutzers:** - Logge dich auf deinem VM-Cluster ein. - Erstelle einen neuen Benutzer, der als technischer Benutzer dient. Dies kann oft mit dem `useradd`-Befehl in Linux geschehen. ``` sudo useradd -m -s /bin/bash github_runner sudo passwd github_runner ``` 2. **Zuweisen von Berechtigungen:** - Stelle sicher, dass der technische Benutzer die erforderlichen Berechtigungen hat, um auf alle Ressourcen zuzugreifen, die für die Ausführung der GitHub Actions notwendig sind. - Füge den Benutzer zu relevanten Gruppen hinzu, falls erforderlich. ```sh sudo usermod -aG docker github_runner # Falls Docker benötigt wird sudo usermod -aG sudo github_runner # Falls sudo-Rechte benötigt werden ``` 3. **Konfigurieren des GitHub Action Runners:** - Lade den GitHub Action Runner herunter und installiere ihn im Kontext des technischen Benutzers. - Wechsle zum neu erstellten Benutzer: ```sh su - github_runner ``` - Lade den GitHub Runner herunter: ```sh mkdir actions-runner && cd actions-runner curl -o actions-runner-linux-x64-2.278.0.tar.gz -L https://github.com/actions/runner/releases/download/v2.278.0/actions-runner-linux-x64-2.278.0.tar.gz tar xzf ./actions-runner-linux-x64-2.278.0.tar.gz ``` - Konfiguriere den Runner mit einem Token von deinem GitHub Repository: ```sh ./config.sh --url https://github.com/your_org/your_repo --token YOUR_GITHUB_TOKEN ``` 4. **Service für den GitHub Runner erstellen:** - Erstelle einen Service, damit der GitHub Runner beim Start der VM automatisch gestartet wird. ```sh sudo ./svc.sh install sudo ./svc.sh start ``` 5. **Sicherheitsüberlegungen:** - Stelle sicher, dass der technische Benutzer nur die minimal notwendigen Rechte hat, um Sicherheitsrisiken zu minimieren. - Verwende Schlüsselverwaltung und andere Sicherheitspraktiken, um die Anmeldedaten des technischen Benutzers zu schützen. Durch diese Schritte stellst du sicher, dass der GitHub Action Runner auf deinem VM-Cluster als technischer Benutzer läuft, was zu einer sichereren und effizienteren CI/CD-Pipeline führt.