Xubuntu im Docker-Container
Eine einfache Anleitung, um Xfce4 mit xrdp in einem Docker-Container zu starten.
Ich habe bereits Kali-Linux in einem LXC-Container gestartet. Das hat sich bisher auch als beste Variante herausgestellt.
Doch nicht immer hat man die Möglichkeit einen LXC-Container zu nutzen. Daher probiere ich das ganze nocheinmal unter Docker. Das wird etwas komplexer, da ich den Container erst bauen werde.
Docker-Compose-Datei erstellen
Ich erstelle zunächst eine docker-compose.yml
-Datei:
version: '3'
services:
xfce4-container:
build:
context: .
image: xfce4-container
container_name: xfce4-container
ports:
- "3389:3389"
- "5900:5900"
command: xrdp --nodaemon
Dockerfile erstellen
Dann eine Datei namens Dockerfile
:
FROM ubuntu:latest
# Installiere notwendige Pakete
RUN apt-get update && \
DEBIAN_FRONTEND=noninteractive apt-get install -y xfce4 xrdp xvfb && \
apt-get clean && \
rm -rf /var/lib/apt/lists/*
# Starte den RDP-Server beim Containerstart
CMD ["xrdp", "--nodaemon"]
Docker-Image bauen
Dann gehe ich in das Verzeichnis, in dem ich beide Dateien angelegt habe, und führe den folgenden Befehl aus:
docker-compose build
Container starten
Den eben gebauten Container starte ich wieder mit folgendem Kommando:
docker-compose up -d
Noch schnell ein root-Passwort vergeben:
docker exec -it xfce4-container passwd root
Manueller Start des xrdp-Sitzungsmanagers
Falls erforderlich, kann man den xrdp-Sitzungsmanager manuell starten. Ich habe bei meinen ersten Versuchen gesehen, daß nach Eingabe des Passwortes die RDP-Session eingefroren wirkt. Dann einfach folgendes eingeben:
docker exec -it xfce4-container xrdp-sesman
Erster Start
Ich nutze Linux und stelle die Verbindung zum Xubuntu-Container mit xfreerdp her:
xfreerdp /u:root /dynamic-resolution /v:container-dev-host
Unter Windows kann man mit mstsc
ebenfalls eine Session starten. Und schon öffnet sich der Login-Screen:
Und wenn alles gut gegangen ist, startet eine Session:
Fazit
Beide Optionen sind umsetzbar. Wenn man eine VPS-Instanz im Internet gemietet hat, steht wahrscheinlich kein Proxmox-Server zur Verfügung. In solchen Fällen bietet sich Docker als eine gute Alternative an.
Es gibt jedoch Hoffnung: Viele VPS-Anbieter stellen ein Debian-Image zur Verfügung. Da Proxmox als Debian-Paket installiert werden kann, besteht die Möglichkeit, Container oder sogar komplette virtuelle Maschinen (VMs) mit virtuellen Netzwerken bequem zu verbinden.