Docs / Game Servers / How to Set Up a Factorio Dedicated Server

How to Set Up a Factorio Dedicated Server

By Admin · Mar 1, 2026 · Updated Apr 24, 2026 · 28 views · 2 min read

Overview

Factorio is a factory-building game that runs exceptionally well on dedicated servers. Even small VPS instances can host servers for 10+ players.

Requirements

  • A Breeze with at least 1 GB RAM
  • Factorio purchased on Steam or factorio.com

Step 1: Download the Server

sudo useradd -r -m -d /opt/factorio factorio
cd /opt/factorio
sudo -u factorio wget https://factorio.com/get-download/stable/headless/linux64 -O factorio-headless.tar.xz
sudo -u factorio tar xf factorio-headless.tar.xz --strip-components=1
rm factorio-headless.tar.xz

Step 2: Create a Save File

sudo -u factorio /opt/factorio/bin/x64/factorio --create /opt/factorio/saves/myworld.zip

Step 3: Configure the Server

sudo -u factorio tee /opt/factorio/data/server-settings.json <<'EOF'
{
  "name": "My Factorio Server",
  "description": "A Breeze-hosted Factorio server",
  "max_players": 10,
  "visibility": { "public": false, "lan": true },
  "require_user_verification": true,
  "game_password": "changeme",
  "autosave_interval": 5,
  "autosave_slots": 5,
  "allow_commands": "admins-only"
}
EOF

Step 4: Create a Systemd Service

sudo tee /etc/systemd/system/factorio.service <<EOF
[Unit]
Description=Factorio Server
After=network.target

[Service]
User=factorio
ExecStart=/opt/factorio/bin/x64/factorio --start-server /opt/factorio/saves/myworld.zip --server-settings /opt/factorio/data/server-settings.json
Restart=on-failure

[Install]
WantedBy=multi-user.target
EOF

sudo systemctl daemon-reload
sudo systemctl enable --now factorio

Step 5: Open Firewall

sudo ufw allow 34197/udp

Connecting

In Factorio, click Multiplayer → Connect to address, and enter your server's IP address.

Was this article helpful?