Clawdbot: Installation auf einem Ubuntu 24.04 Server + Telegram (ohne Sandbox)
Diese Anleitung beschreibt die Installation und Konfiguration von Clawdbot auf einem Ubuntu 24.04 Server mit Telegram-Integration und wichtigen Sicherheitshinwe
1) SSH-Schlüssel auf dem lokalen Computer erstellen
ssh-keygen -t ed25519 -a 100 -f ~/.ssh/id_ed25519
Kommentar: Der Schlüssel wird auf Ihrem Computer erstellt und verbleibt dort; er ist Ihr „Zugangspass“ zum Server. Ein Passwort schützt den Schlüssel, falls die Datei gestohlen wird. Wir verwenden ed25519, ein modernes und sicheres Format. Dieser Schritt ermöglicht es, bei der Anmeldung vollständig auf Passwörter zu verzichten.
Ergänzung: Falls Ihr Provider über eine Schlüsselverwaltung verfügt, fügen Sie dort den Inhalt von ~/.ssh/id_ed25519.pub hinzu. Der erste Login erfolgt dann direkt per Schlüssel, ohne Passwort. Falls keine solche Verwaltung existiert, nutzen Sie den passwortbasierten Login einmalig, um den Schlüssel manuell auf dem Server hinzuzufügen.
2) Auf dem Server anmelden
ssh root@<SERVER_IP>
Kommentar: Dies ist der initiale Zugang zur Systemkonfiguration. In diesem Schritt melden wir uns als root an, da dies die einzige Möglichkeit ist, die grundlegenden Servereinstellungen vorzunehmen. Der root-Login wird anschließend deaktiviert; dieser erste Zugang ist somit nur einmalig notwendig. Dies reduziert das Risiko, dass root als „offene Tür“ bestehen bleibt.
3) System aktualisieren
apt update && apt upgrade -y
Kommentar: Schließt Sicherheitslücken und aktualisiert Pakete. Jedes neue System enthält oft ältere Versionen von Bibliotheken und Systemdienstprogrammen, die Schwachstellen aufweisen können. Ein Update ist grundlegende Hygiene; ohne es ist es sinnlos, über weitere Sicherheitsmaßnahmen zu sprechen. Wir installieren Patches, bevor wir Dienste starten.
4) Separaten Benutzer erstellen
adduser clawd
usermod -aG sudo clawd
Kommentar: Der Bot sollte nicht als root ausgeführt werden, um das Risiko zu minimieren. Dies entspricht dem Prinzip der geringsten Rechte: Der Agent darf nicht auf den gesamten Server zugreifen. Falls etwas schiefgeht, bleibt der Schaden auf die Benutzerordner beschränkt und betrifft nicht das gesamte System. Dies ist eine grundlegende Schutzmaßnahme.
5) SSH-Schlüsselzugriff gewähren
rsync --archive --chown=clawd_yt:clawd ~/.ssh /home/clawd
Kommentar: Anmelden per Schlüssel ohne Passwort. Passwörter können erraten oder gestohlen werden; Schlüssel sind deutlich sicherer. Wir übertragen die Schlüssel, damit der Zugang sicher und komfortabel bleibt. Dies reduziert das Risiko eines Brute-Force-Angriffs.
6) Unter dem neuen Benutzer anmelden
ssh clawd_yt@<SERVER_IP>
Kommentar: Alle weiteren Arbeiten erfolgen unter dem Benutzer clawd. Dies trennt den „Operator“ vom „System“, sodass der Bot nicht auf root-Ebene ausgeführt wird. Dieser Ansatz verringert die Wahrscheinlichkeit fataler Fehler. Wir führen dies sofort durch, um alle nachfolgenden Aktionen im sicheren Modus auszuführen.
7) SSH absichern
sudo nano /etc/ssh/sshd_config
Folgende Zeilen hinzufügen/prüfen:
PermitRootLogin no
PasswordAuthentication no
PubkeyAuthentication yes
Neustart des Dienstes:
sudo systemctl restart ssh
Kommentar: root-Login und Passwörter verbieten, nur Schlüssel zulassen. Die häufigsten Angriffe sind Passwort-Brute-Force und Versuche, sich als root anzumelden. Wir unterbinden diesen Weg vollständig. Danach ist ein Login nur noch per Schlüssel möglich.
8) Firewall konfigurieren
sudo apt install -y ufw
sudo ufw allow OpenSSH
sudo ufw enable
Kommentar: Alle Ports außer SSH schließen. Je weniger Ports geöffnet sind, desto geringer ist die Wahrscheinlichkeit von Angriffen. Wir lassen nur den notwendigen Zugang für die Administration zu. Dies macht den Server „leiser“ und weniger auffällig für Scanner.
9) Clawdbot installieren
curl -fsSL https://molt.bot/install.sh | bash
Kommentar: Installiert CLI und Gateway. Dies ist die Basismaschine, ohne die Clawdbot nicht funktioniert. Die CLI ist für Konfiguration und Diagnose zuständig, das Gateway für die Telegram-Anbindung und die Ausführung von Aufgaben. Dies ist die Grundlage der Installation.
10) Onboarding durchführen
clawdbot onboard
Kommentar: Erstellt einen Workspace und konfiguriert das Gateway sowie den Telegram-Kanal. Das Onboarding verbindet den Bot mit Telegram und erstellt die Basiskonfiguration. Dies ist der Zeitpunkt, an dem der Bot „lebendig“ wird. Ohne diesen Schritt kann er nicht antworten.
11) Gateway im Loopback-Modus belassen
Überprüfen Sie in ~/.clawdbot/clawdbot.json:
"gateway": {
"bind": "loopback",
"port": 18789,
"auth": { "mode": "token", "token": "${CLAWDBOT_GATEWAY_TOKEN}" }
}
Kommentar: Die Verwaltung ist nur lokal zugänglich; ein Token schützt die Benutzeroberfläche. Dies stellt sicher, dass das Control Panel nicht dem gesamten Internet offensteht. Selbst wenn jemand die Adresse herausfindet, kann er ohne Token nicht zugreifen. Wir tun dies, damit die Kontrolle ausschließlich beim Eigentümer verbleibt.
12) DMs in Telegram einschränken (Allowlist)
clawdbot config set channels.telegram.dmPolicy "allowlist"
clawdbot config set channels.telegram.allowFrom "[\"tg:<YOUR_TELEGRAM_ID>\"]"
systemctl --user restart clawdbot-gateway.service
Kommentar: Der Bot antwortet nur dem Eigentümer. Dies ist ein entscheidender Schutz vor zufälligen oder böswilligen Nachrichten. Selbst wenn jemand den Namen des Bots erfährt, kann er ihn nicht nutzen. So entziehen wir allen außer Ihnen den Zugriff.
13) Rechte für den Zustand beschränken
chmod 700 /home/clawd/.clawdbot
Kommentar: Dieser Befehl macht den Bot-Ordner privat – nur der Benutzer clawd hat Zugriff. Darin befinden sich Token, Einstellungen und der Verlauf, die nicht von anderen Benutzern eingesehen oder geändert werden dürfen. Dies ist ein einfacher Schutz vor zufälligen und schädlichen Änderungen. Danach ist der Ordner für alle außer dem Eigentümer geschlossen.
14) Überprüfung (Schritt 14 wurde im Original übersprungen)
clawdbot status
Kommentar: Danach antwortet der Bot in Telegram und arbeitet im „offenen“ Modus ohne Sandbox. Dies ist schneller und einfacher einzurichten, birgt jedoch ein höheres Risiko. Es ist wichtig zu beachten, dass der Bot direkten Systemzugriff hat. Daher werden die übrigen Sicherheitsschritte besonders kritisch.
15) Control UI über SSH-Tunnel
ssh -N -L 18789:127.0.0.1:18789 clawd_yt@<SERVER_IP>
Öffnen Sie dann im Browser:
http://127.0.0.1:18789/
Kommentar: Falls eine Authentifizierung erforderlich ist, wird der Token mit einem separaten Befehl angezeigt. Der Token schützt den Zugriff auf das Control Panel. Dies ist besser als ein offenes Panel ohne Passwort. Wir verwenden einen Token anstelle eines öffentlichen Benutzernamens/Passworts.
clawdbot dashboard --no-open