CS 1.6 ReHLDS Server on Linux: Working Install Guide
Last updated: May 4, 2026
This guide covers two methods for setting up a CS 1.6 ReHLDS server on Linux — an automated installer script (fastest, recommended for most users) and a manual installation for those who need full control. Both methods produce a working server with ReHLDS, ReGameDLL, MetamodR, AMX Mod X, and Reunion for Non-Steam client support. For server configuration after installation, see CS 1.6 server.cfg optimization.
Server Requirements
| Component | Minimum | Recommended |
|---|---|---|
| OS | Ubuntu 20.04, Debian 10, CentOS 7 | Ubuntu 22.04 LTS, Debian 12, AlmaLinux 8/9 |
| RAM | 128 MB (server only) | 1 GB+ (with plugins and 32 players) |
| CPU | 1 core, 1 GHz | 2+ cores, 2 GHz |
| Disk | 2 GB | 5 GB (maps, demos, logs) |
| Network | 10 Mbps | 100 Mbps dedicated |
| Access | Root or sudo | Root |
Open UDP port 27015 in your firewall before starting. Players connect to this port. RCON uses TCP 27015.
ReHLDS vs HLDS
ReHLDS is a reverse-engineered, open-source replacement for Valve’s original HLDS engine. It is fully compatible with CS 1.6 clients but adds significant improvements:
| Feature | HLDS | ReHLDS |
|---|---|---|
| Performance | Original Valve binary | Optimized, lower CPU usage |
| Anti-crash | Basic | Improved crash handling and recovery |
| ReGameDLL support | No | Yes — enables sv_maxvelocity, sv_unlag improvements |
| Plugin compatibility | Standard | Extended API for modern AMXX plugins |
| Active development | Abandoned | Community maintained, regular updates |
Method 1: Automated Installer (Recommended)
The ReHLDS installer script downloads and configures everything automatically — ReHLDS, ReGameDLL, MetamodR, AMX Mod X, and Reunion. This is the fastest and most reliable method for Ubuntu and Debian.
- Connect to your server via SSH:
ssh root@YOUR_SERVER_IP - Navigate to root directory:
cd /root/ - Download the installer script:
wget https://raw.githubusercontent.com/lukasenka/rehlds-installer/main/rehlds.sh - Make it executable and run:
chmod +x rehlds.sh bash rehlds.sh - Follow the prompts — the installer asks for server name, RCON password, max players, and map. It then downloads and configures all components automatically.
- Server files location after installation:
/root/ReHLDS/
After installation, edit your launch parameters in /root/ReHLDS/start_line.sh and your server configuration in /root/ReHLDS/cstrike/server.cfg.
Method 2: Manual Installation
Manual installation gives full control over which components and versions you install. Use this if the automated installer fails or you need a specific configuration.
Install dependencies
Ubuntu 22.04 / Debian 12:
sudo dpkg --add-architecture i386
sudo apt update
sudo apt install -y wget curl unzip screen lib32gcc-s1 lib32stdc++6 libc6-i386
Ubuntu 20.04 / Debian 10-11:
sudo dpkg --add-architecture i386
sudo apt update
sudo apt install -y wget curl unzip screen lib32gcc1 lib32stdc++6 libc6-i386
CentOS 7 / AlmaLinux / Rocky Linux:
sudo yum install -y wget curl unzip screen glibc.i686 libgcc.i686 libstdc++.i686
Create server directory
mkdir ~/cs16server
cd ~/cs16server
Download HLDS base files via SteamCMD
wget https://steamcdn-a.akamaihd.net/client/installer/steamcmd_linux.tar.gz
tar -xvzf steamcmd_linux.tar.gz
./steamcmd.sh +login anonymous +force_install_dir ~/cs16server +app_update 90 validate +quit
Run app_update 90 validate two or three times if it stops early — HLDS (appid 90) often requires multiple runs to complete.
Download and install ReHLDS
- Get the latest release from ReHLDS GitHub releases.
- Download and extract:
wget https://github.com/dreamstalker/rehlds/releases/latest/download/rehlds-bin.zip unzip rehlds-bin.zip -d rehlds_tmp - Copy the Linux engine file to your server directory:
cp rehlds_tmp/bin/linux/engine_i486.so ~/cs16server/ cp rehlds_tmp/bin/linux/filesystem_stdio.so ~/cs16server/
Install ReGameDLL
- Download from ReGameDLL_CS releases.
- Extract and copy:
unzip ReGameDLL_CS.zip -d regamedll_tmp cp regamedll_tmp/bin/linux/cs.so ~/cs16server/cstrike/dlls/ cp regamedll_tmp/bin/linux/game.cfg ~/cs16server/cstrike/
Install MetamodR
- Download from MetamodR releases.
- Extract to addons folder:
mkdir -p ~/cs16server/cstrike/addons/metamod/dlls unzip metamod-r.zip -d metamod_tmp cp metamod_tmp/bin/linux/metamod_i386.so ~/cs16server/cstrike/addons/metamod/dlls/ - Create plugins.ini:
nano ~/cs16server/cstrike/addons/metamod/plugins.iniAdd:
linux addons/amxmodx/dlls/amxmodx_mm_i386.so - Add metamod to liblist.gam:
nano ~/cs16server/cstrike/liblist.gamChange the gamedll_linux line to:
gamedll_linux "addons/metamod/dlls/metamod_i386.so"
Install AMX Mod X
- Download from amxmodx.org — get the Linux base and CS 1.6 addon packages.
- Extract both into your cstrike folder:
tar -xzf amxmodx-*-base-linux.tar.gz -C ~/cs16server/cstrike/ tar -xzf amxmodx-*-cstrike-linux.tar.gz -C ~/cs16server/cstrike/
Reunion — Non-Steam Client Support
Reunion allows Non-Steam clients to connect to your server. Without it, only Steam clients can join.
- Download Reunion from Reunion releases.
- Extract to addons:
mkdir -p ~/cs16server/cstrike/addons/reunion unzip reunion.zip -d reunion_tmp cp reunion_tmp/bin/linux/reunion_mm_i386.so ~/cs16server/cstrike/addons/reunion/ - Add to MetamodR plugins.ini:
linux addons/reunion/reunion_mm_i386.so - Configure reunion.cfg — set a 32-character SteamIdHashSalt:
nano ~/cs16server/cstrike/addons/reunion/reunion.cfgFind
SteamIdHashSaltand set a random 32-character hex string. This is required — Reunion will warn on every startup without it.
Basic server.cfg
hostname "My CS 1.6 Server"
rcon_password "YOUR_SECURE_PASSWORD"
sv_password ""
maxplayers 32
sv_lan 0
sv_region 255
mp_timelimit 30
mp_autokick 0
mp_friendlyfire 0
mp_roundtime 2.5
mp_buytime 0.25
mp_startmoney 800
sv_maxrate 100000
sv_minrate 5000
sv_maxupdaterate 102
sv_minupdaterate 10
sys_ticrate 1000
pingboost 2
Save to ~/cs16server/cstrike/server.cfg. For a complete server configuration guide with all variables explained, see CS 1.6 server.cfg optimization.
Start, Stop and Restart
If using automated installer
cd /root/ReHLDS/
./start # start server
./stop # stop server
./restart # restart server
If using manual installation
Start in a screen session so the server keeps running after SSH disconnect:
screen -S cs16server
cd ~/cs16server
./hlds_run -console -game cstrike +ip YOUR_SERVER_IP +port 27015 +map de_dust2 +maxplayers 32 +sys_ticrate 1000 +pingboost 2
Detach from screen without closing server: Ctrl+A then D
Reattach to server console:
screen -r cs16server
Stop the server from inside screen: type quit in the server console.
Auto-restart on crash
hlds_run automatically restarts the server on crash. If you use hlds directly without hlds_run, create a simple restart loop:
while true; do
./hlds_run -console -game cstrike +ip YOUR_SERVER_IP +port 27015 +map de_dust2 +maxplayers 32
echo "Server crashed — restarting in 5 seconds..."
sleep 5
done
Save as start_server.sh, make executable with chmod +x start_server.sh, and run inside screen.
Common Errors and Fixes
| Error | Cause | Fix |
|---|---|---|
lib32gcc-s1: package not found |
Ubuntu version mismatch | Use lib32gcc1 on Ubuntu 20.04 and below |
steamclient.so: cannot open shared object |
Missing Steam symlinks | Run: mkdir -p ~/.steam/sdk32 && ln -s ~/cs16server/steamclient.so ~/.steam/sdk32/steamclient.so |
| Server not visible in browser | Port 27015 UDP blocked | Open UDP 27015 in firewall: ufw allow 27015/udp |
| Non-Steam clients cannot connect | Reunion not installed or misconfigured | Verify Reunion is in plugins.ini and reunion.cfg has SteamIdHashSalt set |
AMXX: Module not found |
Missing AMXX CS addon package | Install both base AND cstrike addon packages from amxmodx.org |
| Server crashes on startup | Wrong engine file or 32-bit libs missing | Verify dpkg --add-architecture i386 was run and libc6-i386 installed |
app_update 90 stops early |
Known SteamCMD bug with HLDS | Run app_update 90 validate two or three times until “already up to date” |
Looking for a quick way to start, take a look at our Counter-Strike 1.6 portal and also click here for the download Counter-Strike 1.6 original setup.
