VGKAMI
Advertise Get listed

Game Guides

How to Make a Killing Floor 2 Server: Step-by-Step Setup Guide

October 26, 2026 12 min read

To make a Killing Floor 2 server, install the separate dedicated-server files with SteamCMD (app ID 232130), run the server once to generate its configuration, edit the generated INI files, open the required network ports, and launch with a map and game mode. You can run it on a Windows or Linux machine you control, or use managed game-server hosting if you would rather configure everything through a panel.

This guide covers a private server for friends, a publicly listed co-op server, WebAdmin, port forwarding, Workshop content, and the maintenance work that keeps the installation reachable after game updates.

What do I need before setting up a Killing Floor 2 server?

You need a machine that can stay online while people play, a separate server directory, SteamCMD, and permission to configure its firewall. The ordinary game client is not the dedicated server; installing the game through Steam does not create a server you can launch for other players.

  • A Windows or Linux computer, dedicated machine, or virtual machine with enough storage for the server files and maps.
  • A separate directory for the server, such as C:kf2server on Windows or /home/steam/kf2server on Linux.
  • SteamCMD for your operating system.
  • Administrator or root access for firewall rules and, if applicable, router port forwarding.
  • A public IP address or a hosting-panel address that players can reach. A private LAN address alone is not enough for players outside your home network.
  • The map and game mode you want to start with, such as KF-BioticsLab in Survival mode.

For a home server, check whether your internet provider uses carrier-grade NAT. If your router does not receive a real public address, ordinary port forwarding may not work; a managed host or a network tunnel is then a more practical option.

Should I self-host or use managed Killing Floor 2 hosting?

Self-hosting gives you complete control over files, ports, mods, and updates. Managed hosting removes most operating-system, firewall, and reachability work but adds a recurring fee and limits you to the provider’s panel and policies.

Consideration Self-hosted Windows or Linux Managed host
Initial setup Install SteamCMD, download app 232130, run once, edit INIs, and configure the firewall and NAT. Choose a server, set startup variables in a control panel, and start it.
Control Full access to files, command-line tools, ports, logs, and automation. Access depends on the panel, file manager, and provider policy.
Maintenance You perform updates, backups, firewall changes, and troubleshooting. The provider usually supplies panel operations and may offer update controls.
Cost Uses your hardware, bandwidth, electricity, and administration time. Requires a recurring hosting charge; price, locations, and uptime vary by provider.
Best fit Administrators who want maximum flexibility or already have an always-on machine. Groups that want a quick, lower-maintenance deployment.

Whichever path you choose, the game settings are the same: server name, password, difficulty, game length, player limit, map, and mode still need to be selected.

How do I install the Killing Floor 2 dedicated server with SteamCMD?

SteamCMD downloads the dedicated-server build separately from the retail client. Use an anonymous login and app ID 232130.

Linux installation

Create or choose a directory owned by the account that will run the server, then execute:

steamcmd +force_install_dir /home/steam/kf2server +login anonymous +app_update 232130 validate +quit

The validate option checks the initial download and repairs missing files. Run it for the first installation or an intentional repair, not as a routine update.

Windows installation

From a Command Prompt or PowerShell window in the SteamCMD directory, run:

steamcmd.exe +force_install_dir "C:\kf2server" +login anonymous +app_update 232130 validate +quit

Use a path with enough free space and avoid placing the server inside a directory that is synchronized or aggressively scanned by backup software while the server is running.

How should I update the files later?

Stop the server first, back up the configuration directory, and then run an update without repeatedly validating:

steamcmd +force_install_dir /home/steam/kf2server +login anonymous +app_update 232130 +quit

Routine validation can affect configuration files, so reserve validate for a repair or when an update has clearly left files incomplete.

Why must I launch the server once before editing its settings?

The first launch creates the platform-specific INI files under KFGame/Config. If you edit a file before this initialization, there may be nothing for the server to read, and a later first run can overwrite your changes.

  1. Start the server with a stock map and let initialization finish. The exact executable differs between Windows and Linux installations.
  2. Stop it cleanly rather than killing the process. A clean stop lets the server finish writing its current state.
  3. Open the resulting KFGame/Config directory and identify the game, engine, and WebAdmin INI files created by that build.
  4. Make a backup copy before changing values. Keep one known-good copy outside the live configuration directory.

File names and section names can vary by platform and installation. Always edit the files generated by your own first launch rather than copying a path from a different build.

Which INI settings control a private or public server?

Edit the generated server game INI while the server is stopped. The following values control the settings most groups change first.

Setting What it controls Allowed or typical values
ServerName Name shown in the server browser. Any descriptive name; avoid misleading region or mode labels.
GamePassword Password required to join. Leave empty for a public server; set a strong, shareable password for a private group.
AdminPassword Password used for administrative commands and WebAdmin. Use a unique password that is not the game password.
GameDifficulty Difficulty selected when a match starts. 0 Normal, 1 Hard, 2 Suicidal, 3 Hell on Earth.
GameLength Number of waves in a match. 0 short (4 waves), 1 medium (7 waves), 2 long (10 waves).
MaxPlayers Maximum number of simultaneous players. Set the limit your machine and group can support; the value is read from the generated configuration.

Save the file, start the server, and verify the result in the console or server browser. If a value appears unchanged, stop the process and check that you edited the active file and section rather than a template or backup.

How do I enable WebAdmin safely?

WebAdmin is normally disabled until you enable the web server in its configuration. It is optional: use it only when browser-based administration is worth exposing an additional service.

  1. Stop the server and open the generated WebAdmin configuration file.
  2. Enable the WebServer option and set a strong administrator password. The username shown by different builds or hosting panels may appear as Admin or admin; use the label displayed by your installation.
  3. Keep the default WebAdmin port, TCP 8080, or change it consistently in the configuration, firewall, and router.
  4. Expose TCP 8080 only when remote browser administration is required. If you administer from the same machine or LAN, restrict the firewall rule to trusted addresses.
  5. Restart the server and browse to http://SERVER_ADDRESS:8080 from an allowed network.

Do not reuse the game password for WebAdmin, and do not leave the interface open to the entire internet without a firewall rule limiting who can reach it.

What launch command starts a KF2 server with a map and mode?

Launch with a map URL followed by the game options and port arguments. The following Linux example starts BioticsLab in Hard, medium-length Survival:

./Binaries/Win64/KFGameSteamServer.bin.x86_64 KF-BioticsLab?Game=KFGameContent.KFGameInfo_Survival?Difficulty=1?GameLength=1 -Port=7777 -QueryPort=27015 -WebAdminPort=8080

On Windows, use the supplied KFServer.exe or the batch launcher in the server directory with the same map and URL-style options. The executable name can differ between builds, so use the file installed on your machine.

Which game modes can I launch?

Survival is the normal cooperative mode. The installation and guides also reference Weekly Survival, Versus Survival, and Endless. Replace the map or game-info class with the mode you want, and confirm that the map exists in the installation before starting.

What do the launch ports mean?

-Port is the game connection port, -QueryPort is used for server-browser queries, and -WebAdminPort selects the browser administration port. If you change any of them, make the same change in your firewall, router, and connection instructions.

Which firewall and router ports must I open?

Allow the ports actually configured on your server. The common defaults are:

Function Typical default Protocol When it is needed
Game traffic 7777 UDP Required for players to join.
Steam traffic 20560 UDP Used by the server’s Steam communication.
Query or master-list traffic 27015 UDP Helps the server browser discover and query the server.
WebAdmin 8080 TCP Optional; required only for browser administration.
Weekly Outbreak time lookup 123 UDP Mode-specific time service for Weekly Outbreak content.

How do I configure a home router?

  1. Give the server computer a reserved LAN address in the router, such as a DHCP reservation, so forwarding does not break after a reboot.
  2. Create inbound UDP rules for 7777, 20560, and 27015. Add TCP 8080 only if WebAdmin must be reachable from outside.
  3. Forward each external port to the same port on the server’s reserved LAN address, unless you intentionally changed the internal port.
  4. Allow the same ports through the operating-system firewall and select the correct network profile.
  5. Restart the server and test from a different network, such as a phone hotspot. Testing from inside the same LAN can fail because some routers do not support hairpin NAT.

Port forwarding is unnecessary when the server has a directly reachable public address and no intervening NAT. It is also ineffective when the provider places your router behind carrier-grade NAT.

How do players join the server?

After startup, wait for the server browser to index the listing and search for the exact ServerName. Browser discovery depends on the query port and can take longer than the game port becoming reachable.

For an immediate test, open the in-game console and enter:

open YOUR.PUBLIC.IP:7777

Replace the placeholder with the public address and game port. Players on the same LAN may need to use the server’s private address instead. A managed hosting panel normally displays the exact address and port to share.

What should I check if direct connection works but the browser is empty?

  • Confirm UDP 27015 is allowed and forwarded; game port 7777 alone is not enough for query discovery.
  • Check that the server is fully initialized and has not logged an authentication or map error.
  • Verify the displayed server name and search filters, including region, mode, and password filters.
  • Wait several minutes after the first launch or an address change for listing services to update.
  • Test from outside your LAN to rule out a router’s hairpin-NAT limitation.

How do I add Workshop maps or mods?

Workshop content requires the server to receive the item’s ID through the appropriate online-subsystem configuration or a maintained server tool. The exact section depends on the server build and the tool you choose.

  1. Record the Workshop item ID for each map or modification.
  2. Add the IDs to the server’s Workshop configuration while the server is stopped.
  3. Configure client download or a custom redirect if the content is not delivered automatically.
  4. Start the server with one item first and confirm that it downloads and loads before adding more.
  5. Keep a backup of the working INI files and test every mod after a game update.

A client and server must use compatible content. If players are kicked during map travel, remove the newest item, inspect the logs, and test the stock map before changing unrelated settings.

How do I keep a Killing Floor 2 server reliable?

Most outages come from configuration changes, updates, or network changes rather than from the map itself. Use a small maintenance routine:

  • Stop the server before editing INI files or replacing Workshop settings.
  • Back up the entire configuration directory before every game update and keep dated copies of known-good files.
  • Run SteamCMD updates after a game patch, then start the server and watch the console for missing files, map errors, or port conflicts.
  • Use routine app_update 232130 updates; use validate only for an intentional repair.
  • Document the public address, game port, query port, WebAdmin port, and administrator credentials in a secure password manager.
  • Restrict WebAdmin and operating-system administration to trusted networks, and use different passwords for the game and administration.
  • Check available disk space and log growth so an otherwise healthy server does not stop writing files.

Managed panels may offer automatic updates, console controls, file editing, and file history. Confirm how a provider handles configuration preservation before enabling automatic updates.

What are the most common setup failures?

The server closes immediately

Run it from a terminal or command window and read the final error. Common causes include an incorrect executable path, a missing dependency, an invalid map name, or another process already using the selected port. Start with a stock map and default ports before restoring custom settings.

Friends cannot connect, but I can play locally

Check the public address, router forwarding, and the operating-system firewall. A local test proves only that the process is listening on the LAN; it does not prove internet reachability. Test from a different network and confirm that the provider has not placed you behind carrier-grade NAT.

The browser lists the server but joining fails

Verify that UDP 7777 is forwarded to the same machine and that the server is not bound to a different port. Check the console for a full server, password rejection, incompatible Workshop content, or a map that failed to load.

Changes in the INI have no effect

Stop the server, confirm the edit is in the generated active file and correct section, and check for duplicate entries later in the file. A first launch, validation, or hosting-panel synchronization may have restored an older copy.

WebAdmin cannot be reached

Confirm WebServer is enabled, TCP 8080 is allowed, and you are using the configured port. If it works on the server computer but not remotely, restrict or correct the router forwarding rule rather than changing game settings.

Is self-hosting worth it for a small private group?

Self-hosting is usually worthwhile when you already have an always-on computer, can configure NAT and firewalls, and want control over maps and mods. A managed host is simpler when the group needs a server quickly, the host machine is not online reliably, or nobody wants to handle updates and network troubleshooting.

Start with the smallest setup that answers your needs: stock maps, one game mode, a password, and the default ports. Add WebAdmin, Workshop content, alternate modes, or automated updates only after the basic server can start and accept a direct connection.

Frequently Asked Questions

Can I run a Killing Floor 2 server and play on the same PC?

Yes, provided the computer has enough CPU, memory, storage, and upload capacity for both processes. Keep the server in its own directory and expect game updates or a demanding map to compete with the client for resources; a separate machine is more predictable for a public server.

How can I change the server’s game port?

Change the launch argument, such as -Port=7780, then allow and forward that UDP port and give players the new port in their open IP:PORT command. Keep the query and WebAdmin ports distinct from any other service on the machine.

Can players join a server on a private home network without port forwarding?

Players on the same LAN can usually connect to the server’s private address, but people outside the network need a reachable public address and forwarded ports. If the internet provider uses carrier-grade NAT, ask for a public address or use managed hosting instead.

Where should I store server backups?

Keep dated copies of KFGame/Config and any Workshop or launch scripts outside the live server directory. Store at least one copy on another disk or machine so a failed update or disk problem does not remove both the active and backup files.

Does changing the server name require a restart?

Yes. Stop the server, edit ServerName in the active generated INI, save it, and start the server again. The browser may take a short time to display the new listing after the restart.