Menu
 

Euro Truck Simulator 2 Dedicated Server Setup: Convoy, Ports & Server Packages

Euro Truck Simulator 2 Dedicated Server Setup: Convoy, Ports & Server Packages

An ETS2 dedicated server is more than a process listening on a port. The server reads a generated package manifest, advertises through the Convoy browser, and separates logical (virtual) ports from the physical ports your firewall and router must forward. If a session is visible but cannot be joined, start with the files and physical ports below.

Install the official dedicated-server tool

SCS publishes the tool as Steam app 1948160. It is free and can be downloaded with an anonymous SteamCMD login; owning the client game is not required just to launch the dedicated server:

steamcmd +force_install_dir /opt/ets2-dedicated \
  +login anonymous +app_update 1948160 validate +quit

cd /opt/ets2-dedicated
./server_launch.sh

SteamCMD does not keep this tool updated automatically. Stop the service during a maintenance window, run app_update 1948160 validate, then start it again and check the first lines of the log for the new build.

Let the first launch create the configuration

The first successful launch creates server_config.sii in the server home directory. Keep that file and the log in a persistent path; do not edit a copy in the install directory while the service is reading another home directory. The launcher supports these useful options:

OptionUse
-serverRun the headless dedicated-server mode.
-server_cfg <path>Use an explicit server_config.sii when the service has a non-default home.
-homedir <path>Keep configuration, generated packages and logs in a known persistent directory.
-nosinglePrevent the process from falling back to the single-player client mode.

On Linux, follow the SCS launcher layout rather than inventing a second wrapper. If the supplied script cannot find steamclient.so, install the matching Steam runtime or link the library where the script expects it before debugging gameplay settings.

Generate the package files the server actually loads

A server can start and still reject every driver when its package manifest is missing or stale. The server directory must contain:

FileWhy it matters
server_config.siiConvoy name, player limit, ports, token and server behaviour.
server_packages.siiGenerated list of the game/DLC packages the server offers.
server_packages.datBinary package data paired with the generated manifest.

Generate the package files from the same ETS2 installation and DLC set that the convoy is meant to use. After a game update or DLC change, regenerate them and restart. The dedicated server cannot browse Steam Workshop content for players, so use the exact package set you can distribute and test yourself.

Forward physical ports, not virtual ports

ETS2 exposes a logical address to the browser and a physical listener to the network. Only the physical values are router/firewall targets. A simple starting configuration is:

Config valueExampleForward?
connection_virtual_port27015No; this is the logical Convoy address.
query_virtual_port27016No; this is the logical browser/query address.
connection_dedicated_port27015Yes; forward TCP and UDP to the server.
query_dedicated_port27016Yes; forward TCP and UDP to the server.

If the query port is already occupied, choose another physical port in the documented LAN range (for example 27015-27020) and update the config and firewall together. A port that is open on the host but not forwarded at the router is still unreachable from the public browser.

Use a persistent game logon token

Anonymous SteamCMD is enough to install the files, but a persistent public server should use a game-server logon token generated in Steam's Manage Game Servers page. Create it for the ETS2 client game app 227300, then put the token in server_config.sii using the token field documented by SCS. Do not paste the token into a public issue, screenshot or repository; revoke it in Steam if it leaks.

Set the eight-player ceiling deliberately

SCS documents a hard maximum of eight players. Set a lower value when you want a private convoy with predictable CPU and bandwidth use:

max_playersGood fit
4Small friends-only convoy.
6Regular group with headroom for traffic and voice chat.
8Supported maximum; test the package set and upload capacity before opening the door.

Fast diagnosis

SymptomFirst check
Server exits before showing a nameRead the first config error and confirm server_config.sii is from the active -homedir.
Visible in LAN, absent publiclyForward the physical connection/query ports over both TCP and UDP; virtual ports do not open a router.
Visible but join fails immediatelyRegenerate server_packages.sii and .dat; check that every driver has the same DLC/content.
Server disappears after a game updateStop it, run SteamCMD validation, regenerate packages, and restart all at the same build.
Token or authentication warningUse a token made for app 227300, keep it private, and replace/revoke it if exposed.
Players hit the eight-slot limitmax_players cannot exceed eight; use a second convoy rather than an unsupported value.

Sources

Want the package files, port forwarding, updates and backups handled for you? Reserve a Euro Truck Simulator 2 server plan; the hosting page explains the current launch status and takes no payment before the door opens.

Planning a Euro Truck Simulator 2 server?

We are taking reservations. Pick a plan size and lock its price for your first year; no payment is taken before the door opens.

Reserve your Euro Truck Simulator 2 Server →
Top