Skip to main content

Thin Client to Proxmox

Anleitung: Automatisches Herstellen einer Remote-Verbindung zu einer Proxmox-VM beim Booten von Debian ohne Desktop-Umgebung

Ziel: Ein Debian-System so konfigurieren, dass es automatisch eine Verbindung zu einer Proxmox-VM über eine .vv-Datei herstellt, ohne eine vollständige Desktop-Umgebung zu starten.

1. Voraussetzungen:

    Ein Debian 12 System ohne Desktop-Umgebung. Eine vorhandene .vv-Datei zur Verbindung mit der Proxmox-VM.

    2. Schritte:

    2.1. Installation von Virt-Viewer:

    sudo#!/bin/bash
    aptset update-e
    
    sudo# aptSet installauth virt-options
    PASSWORD='remote1234'
    USERNAME='remote@pve'
    
    # Set VM ID
    VMID="601"
    
    # Set Node
    # This must either be a DNS address or name of the node in the cluster
    NODE="liz"
    
    # Proxy equals node if node is a DNS address
    # Otherwise, you need to set the IP address of the node here
    PROXY="10.11.12.10"
    
    #The rest of the script from Proxmox
    NODE="${NODE%%\.*}"
    
    DATA="$(curl -f -s -S -k --data-urlencode "username=$USERNAME" --data-urlencode "password=$PASSWORD" "https://$PROXY:8006/api2/json/access/ticket")"
    
    echo "AUTH OK"
    
    TICKET="${DATA//\"/}"
    TICKET="${TICKET##*ticket:}"
    TICKET="${TICKET%%,*}"
    TICKET="${TICKET%%\}*}"
    
    CSRF="${DATA//\"/}"
    CSRF="${CSRF##*CSRFPreventionToken:}"
    CSRF="${CSRF%%,*}"
    CSRF="${CSRF%%\}*}"
    
    curl -f -s -S -k -b "PVEAuthCookie=$TICKET" -H "CSRFPreventionToken: $CSRF" "https://$PROXY:8006/api2/spiceconfig/nodes/$NODE/qemu/$VMID/spiceproxy" -d "proxy=$PROXY" > spiceproxy
    
    #Launch remote-viewer with spiceproxy file, in kiosk mode, quit on disconnect
    #The run loop will get a new ticket and launch us again if we disconnect
    exec remote-viewer -k --kiosk-quit on-disconnect spiceproxy
    

    2.2. Installation eines minimalistischen X-Servers:

    sudo apt update
    sudo apt install xorg
    

    2.3. Automatischer Start der VM-Verbindung:

    Erstelle einen systemd-Dienst:

    sudo nano /etc/systemd/system/vm-connect.service
    

    Füge den folgenden Inhalt ein (ersetze /path/to/your/file.vv durch den Pfad zu deiner .vv-Datei und YOUR_USERNAME durch deinen Benutzernamen):

    [Unit]
    Description=Connect to Proxmox VM
    After=network.target
    
    [Service]
    ExecStart=/usr/bin/startx /usr/bin/remote-viewer /path/to/your/file.vv -- -nocursor
    Type=simple
    User=YOUR_USERNAME
    Restart=always
    RestartSec=10
    
    [Install]
    WantedBy=multi-user.target
    

    Aktiviere und starte den systemd-Dienst:

    sudo systemctl enable vm-connect.service
    sudo systemctl start vm-connect.service
    

    2.4. Booten ohne vollständige GUI:

    Stelle sicher, dass Debian im Multi-User-Modus startet:

    sudo systemctl set-default multi-user.target
    

    3. Abschluss:

    Nach diesen Schritten sollte das Debian-System beim Booten automatisch eine Verbindung zur Proxmox-VM herstellen, ohne eine vollständige Desktop-Umgebung zu starten.

    Hinweis: Es ist ratsam, eine Möglichkeit zu haben, auf das System zuzugreifen (z.B. über SSH), falls es Probleme mit der Verbindung oder dem X-Server gibt.


     

    Du kannst

    diesen

     Leitfaden

    in

     dein

    Wiki

     kopieren

    und

     nach

    Bedarf

     anpassen.