Un VPS Linux est la façon la plus économique d’avoir un serveur Valheim allumé 24h/24 avec un contrôle total. Ce guide installe le serveur avec SteamCMD, le transforme en service systemd et le sécurise.
📌 Pas envie de Linux ?
Un hébergeur Valheim fait tout ça pour vous avec un panel. Ce guide est pour ceux qui veulent mettre les mains dedans.
Étape 1 : préparer le système
Connectez-vous en SSH, mettez à jour et installez les dépendances officielles :
sudo apt update && sudo apt upgrade -y
sudo apt install -y libatomic1 libpulse-dev libpulse0
Créez un utilisateur dédié (ne lancez jamais un serveur de jeu en root) :
sudo adduser --disabled-password --gecos "" valheim
Étape 2 : installer SteamCMD
Sur Ubuntu :
sudo add-apt-repository -y multiverse
sudo dpkg --add-architecture i386
sudo apt update
sudo apt install -y steamcmd
Acceptez la licence Steam quand elle s’affiche.
Étape 3 : télécharger le serveur Valheim
Passez sur l’utilisateur valheim et téléchargez le serveur (app ID 896660) :
sudo -iu valheim
/usr/games/steamcmd +force_install_dir /home/valheim/server +login anonymous +app_update 896660 validate +quit
Étape 4 : créer le script de lancement
Copiez le script fourni pour que les mises à jour ne l’écrasent pas :
cd /home/valheim/server
cp start_server.sh start_valheim.sh
nano start_valheim.sh
Contenu :
#!/bin/bash
export templdpath=$LD_LIBRARY_PATH
export LD_LIBRARY_PATH=./linux64:$LD_LIBRARY_PATH
export SteamAppId=892970
./valheim_server.x86_64 -name "Viking FR" -port 2456 -world "MonMonde" -password "hache123" -public 1
export LD_LIBRARY_PATH=$templdpath
Ajoutez -crossplay pour les joueurs console, et vos modificateurs de monde si besoin. Rendez le script exécutable et testez :
chmod +x start_valheim.sh
./start_valheim.sh
Quand le monde est généré sans erreur, arrêtez avec Ctrl + C et revenez à votre utilisateur sudo avec exit.
Étape 5 : créer un service systemd
Le serveur démarrera tout seul au boot et redémarrera en cas de crash.
sudo nano /etc/systemd/system/valheim.service
[Unit]
Description=Serveur Valheim
Wants=network-online.target
After=network-online.target
[Service]
Type=simple
User=valheim
WorkingDirectory=/home/valheim/server
ExecStartPre=/usr/games/steamcmd +force_install_dir /home/valheim/server +login anonymous +app_update 896660 validate +quit
ExecStart=/home/valheim/server/start_valheim.sh
KillSignal=SIGINT
TimeoutStopSec=120
Restart=on-failure
RestartSec=15
[Install]
WantedBy=multi-user.target
ExecStartPremet le serveur à jour à chaque démarrageKillSignal=SIGINTéquivaut à un Ctrl + C : le monde est sauvegardé avant l’arrêt
Activez et démarrez :
sudo systemctl daemon-reload
sudo systemctl enable --now valheim
sudo journalctl -u valheim -f
Étape 6 : ouvrir le pare-feu
sudo ufw allow 2456:2457/udp
sudo ufw allow OpenSSH
sudo ufw enable
⚠️ N'oubliez pas SSH
Autorisez OpenSSH avant d'activer ufw, sinon vous perdez l'accès à votre VPS.
Commandes utiles
| Action | Commande |
|---|---|
| Démarrer | sudo systemctl start valheim |
| Arrêter (avec sauvegarde) | sudo systemctl stop valheim |
| Redémarrer / mettre à jour | sudo systemctl restart valheim |
| Voir les logs | sudo journalctl -u valheim -f |
Où sont les fichiers ?
| Élément | Chemin |
|---|---|
| Mondes | /home/valheim/.config/unity3d/IronGate/Valheim/worlds_local/ |
adminlist.txt, bannedlist.txt, permittedlist.txt | /home/valheim/.config/unity3d/IronGate/Valheim/ |
Pour gérer les admins : commandes admin Valheim. Pour transférer un monde : importer et sauvegarder son monde.
Questions fréquentes
Quel app ID pour SteamCMD ?
896660, en connexion anonyme.
Quelles dépendances ?
libatomic1, libpulse-dev, libpulse0, avec GLIBC 2.29+ (Ubuntu 22.04/24.04 OK).
Où sont les mondes ?
~/.config/unity3d/IronGate/Valheim/worlds_local de l’utilisateur qui lance le serveur.
Un VPS prêt à l’emploi ? Voir nos VPS, ou un serveur Valheim clé en main.
Équipe HebergTonServ
Administrateurs serveurs de jeux