SSD Nodes Learn Hosting plans →
Gidsen Matt ConnorDoor Matt Connor · Bijgewerkt 2026-09-03

Hermes Agent zelf hosten op een goedkope VPS

Draai Hermes Agent op een VPS van 5 dollar. Omdat het model extern draait, volstaat een kleine server. Gebruik ProtectSystem=strict en configureer UFW voor IPv6 veiligheid.

Wat Hermes Agent is

Hermes Agent is een zelfgehoste AI-agent van Nous Research, uitgebracht in februari 2026. U draait deze op uw eigen server, waar de agent een persistent geheugen van uw projecten bijhoudt, tijdens het werk eigen herbruikbare skills schrijft en u bereikt via chat-apps zoals Telegram en Discord. De agent is model-agnostisch; u koppelt deze aan elk taalmodel van uw voorkeur. Bovendien is de software licht genoeg om te draaien op een VPS van 5 dollar, in Docker of via SSH. Deze scheiding, waarbij het model elders draait en de loop, de tools en het geheugen op uw eigen systeem staan, maakt van Hermes een agent-harness in plaats van een model. Dit is de reden waarom een kleine server volstaat.

Zoals bij elke agent komt de waarde voort uit het handelen namens u, en daarom moet u de configuratie zorgvuldig uitvoeren. Een agent die zaken onthoudt, leert en taken uitvoert, is een continu draaiend proces met daadwerkelijke toegang tot uw server. Deze handleiding beschrijft de veilige installatie; de hier toegepaste hardening is identiek aan wat u zou gebruiken voor het veilig draaien van OpenClaw.

De installatie met één commando, en waarom u dit eerst moet lezen

Hermes installeert met één enkel commando:

curl -fsSL https://hermes-agent.nousresearch.com/install.sh | bash

Dat is handig, en het is tevens een patroon dat het respect waard is. Het direct via een pipe naar een shell sturen van een script van het internet voert alles uit wat dat script bevat, met de rechten van de gebruiker die het uitvoert. Voordat u dit op een echte server uitvoert, downloadt u het eerst, leest u het door en voert u het uit als een specifieke gebruiker in plaats van als root:

curl -fsSL https://hermes-agent.nousresearch.com/install.sh -o hermes-install.sh
less hermes-install.sh

Dit gaat niet over het wantrouwen van Hermes in het bijzonder. Het is de gewoonte die voorkomt dat een willekeurige curl | bash-installatie ongemerkt de zwakste schakel in uw configuratie wordt.

Geef het een account zonder privileges

Draai Hermes onder een eigen systeemaccount, nooit als root, zodat een bug of een foutieve instructie de rest van de machine niet kan bereiken. Maak een gebruiker aan zonder login-shell:

sudo useradd --system --home /opt/hermes --shell /usr/sbin/nologin hermes

Installeer Hermes onder /opt/hermes en maak dat account eigenaar. Het officiële installatieprogramma installeert de software voor de gebruiker die het uitvoert. Voer het gedownloade script daarom uit als de gebruiker hermes, bijvoorbeeld sudo -u hermes bash hermes-install.sh. De bestanden komen dan in de home-directory van dat account terecht, niet in die van u. De reden is dezelfde als bij services uitvoeren als een gebruiker zonder verhoogde rechten: het account waaronder de agent draait, bepaalt de maximale schade die de agent kan veroorzaken. Het OS-account is slechts een deel van het geheel. De eigen instellingen van de agent bepalen namelijk hoeveel acties hij uitvoert zonder eerst toestemming te vragen. Dat is de achtergrond van de toestemmingsmodi van Claude Code wanneer de agent draait op een systeem waar u niet voor zit. Als het systeem uiteindelijk meer moet bedienen dan alleen u, trekt OneCLI dat idee van één account per agent door naar een volledig team door elke persoon een eigen geïsoleerde agent te geven, terwijl de modelkeys in één centrale gateway blijven staan en niemand ze hoeft te kopiëren.

Beveilig de server met een firewall en isoleer geheimen

Hermes voert zijn taken uit door verbinding te maken met een model en de chat-apps die u koppelt. Het is daarom niet nodig om inkomende verbindingen vanaf het internet te accepteren. Plaats een default-deny firewall voor de server:

sudo ufw default deny incoming
sudo ufw allow 22/tcp
sudo ufw enable

Let op de IPv6-firewallkloof in deze situatie, omdat een regelset die alleen IPv4 afdekt een service via IPv6 bereikbaar kan laten. Als de agent wel toegang moet hebben tot iets dat alleen in uw thuisnetwerk bestaat, zoals een NAS of een lokale database, brengt het adverteren van dat netwerk naar uw tailnet met een subnetrouter het verkeer daarheen via een uitgaande verbinding, in plaats van via een open inkomende poort. Bewaar de model-API-sleutel en eventuele chat-tokens in een bestand dat alleen de gebruiker hermes kan lezen (mode 600), en laad het bestand in de service in plaats van de waarde op een opdrachtregel te plakken, waar deze in uw shellgeschiedenis terechtkomt. Zo'n secrets-bestand is hetzelfde kleine doelwit met een hoge waarde als het admin-token achter een zelfgehoste wachtwoordmanager, en de redenering uit de hardeningronde voor Vaultwarden is hier ook van toepassing: beveilig het ene bestand dat al het andere ontsluit en beveilig de back-ups daarvan net zo zorgvuldig. Bestandsrechten houden andere gebruikers op het systeem tegen, maar niet de onderliggende provider. Als de sleutels die uw agent beheert gevoelig genoeg zijn om die afweging te veranderen, bepalen versleuteld geheugen en attestation of uw hostingbedrijf ze uit het RAM kan uitlezen.

Hermes uitvoeren als een beveiligde systemd-service

Een systemd-unit zorgt ervoor dat Hermes blijft draaien nadat u uitlogt en na een herstart, herstart het proces bij een crash en stelt u in staat om kernel-level sandboxing toe te passen die de toegang van het proces beperkt. Schakel NoNewPrivileges, ProtectSystem=strict, PrivateTmp en ProtectHome in zodat een eventuele inbreuk beperkt blijft tot de sandbox.

Genereer hier een beveiligde unit en kopieer deze naar /etc/systemd/system/hermes.service. De unit start hermes gateway, het langlopende proces dat uw chat-apps verbindt; voer na installatie hermes --help uit om het commando en het pad naar het binaire bestand op uw versie te bevestigen voordat u de service inschakelt:

ToolGenerate a hardened systemd unit for the agent

De richtlijnen, evenals de stappen daemon-reload en enable --now, worden behandeld in een programma uitvoeren als systemd-service:

sudo systemctl daemon-reload
sudo systemctl enable --now hermes

Voor een uitgewerkt voorbeeld van hetzelfde patroon bij een andere agent, besteedt dsh headless uitvoeren onder systemd meer aandacht aan de Restart-regels en de journalctl-commando's die u nodig heeft wanneer de service 's nachts voor het eerst stopt. Beter nog, wacht niet tot de ochtend om erachter te komen: een OnFailure=-unit die de melding naar uw eigen ntfy-server pusht stuurt een notificatie naar uw telefoon op het moment dat Hermes stopt met herstarten.

Als u liever heeft dat systemd een container beheert in plaats van een native installatie, bereikt KiroCrew in leven houden als een pinned container hetzelfde resultaat waarbij de service een herstart overleeft, terwijl de image-versie vastgezet blijft.

De server daaromheen beveiligen

Sluit af met het beveiligen van de hoofdingang. Schakel SSH over naar authenticatie uitsluitend via sleutels en schakel root-login uit, zoals beschreven in SSH-beveiliging op een VPS, zodat het account dat u gebruikt om de server te beheren niet kan worden geraden. Een agent die een persistent geheugen bijhoudt, is bescherming waard, en de goedkoopste bescherming is ervoor zorgen dat niemand kan inloggen op de server waarop deze draait.

Zodra de server zelf is vergrendeld, is de functionaliteit die de meeste mensen als volgende toevoegen webzoekopdrachten, en het koppelen van de agent aan uw eigen SearXNG-instantie houdt die zoekopdrachten op uw eigen server, ten koste van het voeden met pagina's die door niemand zijn gecontroleerd. Hermes is bovendien zelden de enige agent op de server; als u daar ook Claude Code laat draaien, kunnen twee sessies taken direct aan elkaar overdragen in plaats van elke overdracht via u te laten verlopen. Als de volgende agent die u toevoegt er een is die uw code leest in plaats van uw chat-apps, dan past het uitvoeren van open-kritt's security scans op dezelfde server in hetzelfde patroon: een vastgezette release, een eigen account en een web-UI die u bereikt via een SSH-tunnel in plaats van een open poort.

Als u liever de techniek begrijpt dan een kant-en-klare agent draait, dan zet het bouwen van uw eigen AI-agent op een VPS dit stap voor stap uiteen. Als de terminologie in die handleiding nog nieuw voor u is, dan biedt een stapsgewijs pad voor het leren werken met AI-agents de lus, tools, het geheugen en de veiligheid in de volgorde waarin ze op elkaar voortbouwen, zodat de keuzes die Hermes voor u maakt niet langer als magie aanvoelen.

FAQ

Kan ik Hermes Agent op een goedkope VPS draaien?

Ja. Hermes is ontworpen om op een kleine server te draaien en een VPS van $5 is voldoende voor een persoonlijke, altijd actieve agent. De agent maakt verbinding met een taalmodel en uw chat-apps in plaats van zwaar verkeer te verwerken, waardoor het resourceverbruik laag is. Wijs een eigen gebruiker toe, configureer een firewall en gebruik een systemd-service; een kleine VPS kan dit moeiteloos aan. Als u al een machine thuis heeft staan, weeg dan de hardware- en stroomkosten af tegen die maandelijkse vergoeding, aangezien een Proxmox-server thuis en een gehuurde VPS op verschillende vlakken voordelen bieden.

Is het veilig om het installatiescript van één regel uit te voeren?

De curl | bash installatie is handig, maar het is een veilige gewoonte om het script eerst te downloaden en te lezen voordat u het uitvoert, en om het uit te voeren als een toegewezen gebruiker in plaats van als root. Op die manier kan een piped installer, van welk project dan ook, nooit meer doen dan wat dat beperkte account toestaat. Dit is niet specifiek voor Hermes; het is een goede gewoonte voor elke installatie van dit type.

Hoe draai ik Hermes zonder root-rechten?

Maak een toegewezen systeemgebruiker aan zonder login-shell, installeer Hermes in een map waarvan die gebruiker de eigenaar is, zoals /opt/hermes, en voer de service uit onder dat account. Mocht de agent ooit worden gecompromitteerd, dan blijft de schade beperkt tot wat dat specifieke account kan bereiken.

Hoe houd ik Hermes actief nadat ik ben uitgelogd?

Voer het uit als een systemd-service. Een unit-bestand start Hermes bij het opstarten, herstart het bij een crash en houdt het actief nadat uw SSH-sessie is beëindigd, terwijl de sandboxing-opties van systemd beperken wat het proces kan benaderen. Genereer een beveiligde unit met de bovenstaande tool en schakel deze in met systemctl enable --now hermes.

Heeft Hermes Agent een GPU nodig?

Nee. Hermes is de runtime voor de agent, niet het taalmodel zelf, dus het draait prima op een kleine VPS die alleen over een CPU beschikt. De zware berekeningen vinden plaats waar het model draait, wat meestal een gehoste API is waarmee u verbinding maakt. Als u het model ook zelf op dezelfde machine wilt hosten, kies dan de grootte van de machine op basis van het model in plaats van op basis van Hermes zelf. Voor het hosten van modellen op enkel CPU zijn de cijfers in de Ollama-handleiding van toepassing.