We are your new 5-Star Hosting Company. At least according to ★ Trustpilot

Following along with a Counter-Strike 2 server? Deploy yours in minutes.

All servers come with a 24-Hour Trial, Free Backups, and 40Gbps DDoS Protection included!

Use code SAVE15 to take 15% OFF Your First Invoice with ChicagoServers! Limited Time!
Counter-Strike 2 guide

CS2 RCON and Admin Commands: Run and Manage Your Server

By the ChicagoServers team · Updated · 11 min read

Once a Counter-Strike 2 server is running, most day-to-day administration is done by typing console commands: changing the map, ending warmup, restarting a match, kicking a disruptive player. On ChicagoServers you do that on the Console tab of your server in the panel, or remotely over RCON (remote console), which sends the same commands to the server over the network after authenticating with a password.

This guide covers setting the RCON password, the ways to reach the console, a reference table of the commands that exist in CS2, the match and bot cvars admins use most, what the game does and does not offer for admin permissions, and how to keep RCON from becoming a security hole. Command behaviour was checked against Valve's published RCON protocol documentation and community CS2 references in November 2026; where sources disagree, the text says so.

Quick answer
  • Set the password in the RCON password field on the Startup tab, then Save startup and Restart. Use a long random value without quotes or semicolons. An empty password leaves RCON unusable, and a rcon_password line in server.cfg is overwritten from that field at every start.
  • RCON travels over TCP on the same port number as the game (27015 by default) and is not encrypted, so restrict who can reach it. Your server's ports are assigned by the panel.
  • On the Console tab you type commands and press Send, and RCON is handled for you. Over RCON from outside you use an external RCON client. The in-game rcon command has been reported unreliable in CS2.
  • Core commands: status, changelevel, kickid, banid plus writeid, mp_restartgame 1, mp_warmup_end, bot_quota, exec.
  • CS2 has no built-in per-person admin list. Named admins with permissions and persistent bans need a plugin framework such as CounterStrikeSharp. For panel access without sharing the RCON password, add sub-users.
On this page
  1. Server console vs RCON: what is the difference?
  2. Setting the RCON password
  3. Connecting with RCON
  4. Admin command reference
  5. Match, bot and cheat commands
  6. Admins and bans: what the game offers vs what needs a plugin
  7. Securing RCON
  8. Common mistakes
  9. Frequently asked questions

Server console vs RCON: what is the difference?

Every command in this guide is an ordinary console command. The only question is how it reaches the server process.

MethodHow it worksNeeds RCON?
Server consoleThe Console tab in the panel, which shows live server output. You type the command with no prefix and press SendNo
External RCON clientA tool that connects to the server's address and port, authenticates with your RCON password, and sends commandsYes
In-game rcon commandSet rcon_address and rcon_password in your own game console, then prefix commands with rconYes, but see the note below

RCON is the Source engine's remote console protocol. Valve documents it as a TCP protocol: the client authenticates first, and commands are only accepted after authentication succeeds. If rcon_password is empty, every authentication attempt is refused, so an unset password means RCON is effectively off rather than open.

Setting the RCON password

The game's setting is the rcon_password cvar. On ChicagoServers you set it in the panel rather than in a config file. If you are new to config files, the server.cfg and game modes guide explains the load order.

  1. Open the Startup tab

    Sign in at panel.chicagoservers.co, open your server, then the Startup tab.

  2. Enter the password

    Type a long random value into RCON password. Click Show to check it.

  3. Save and restart

    Click Save startup, then Restart at the top of the page. The new password applies at the next start.

Settings the panel controls, including passwords, are written from the Startup tab at every start. A rcon_password line in server.cfg on the Configs tab therefore does not stick. Do not put the password on a command line either: process lists show command lines to every user on a machine, and on ChicagoServers the command line is staff-only anyway.

  • Use a long random value (20 or more characters) and store it in a password manager.
  • Avoid double quotes and semicolons inside the password. In a config file a semicolon starts a new command, so a password containing one can be cut short.
  • Changing the RCON password closes every authenticated RCON connection, even if the new value matches the old one. Clients must reconnect. That makes a password change a handy way to kick out an old session.
  • Remember that the field now holds a secret. A sub-user with the Startup permission can open that tab, so only give it to people you trust.

Several hosting guides say you must also add the -usercon launch option before RCON will listen at all. Valve's dedicated server page does not list it, so we cannot confirm it from Valve. There is no Startup field for it and the command line is staff-only, so if an external RCON client refuses connections with a correct password and an open port, contact support and mention -usercon.

Connecting with RCON

RCON uses TCP, not UDP. By Valve's documentation it listens on the same number as the server port, 27015 by default, and follows the -port option if you change it. That has two practical consequences: TCP must be reachable on the game port (game traffic itself is UDP), and RCON clients need the server's IP and that port. On ChicagoServers the panel assigns the ports (see Startup, Network) and you do not open a firewall yourself; if an external client cannot connect, contact support.

  1. Pick an RCON client

    Use a third-party RCON client, command-line tool or web console that speaks the Source RCON protocol. Several open-source ones exist; choose one you trust and keep it updated.

  2. Enter address, port and password

    Use the server IP and the game port (for example 27015) from the address at the top of your server page, and the RCON password you set on the Startup tab.

  3. Run a harmless test

    Send status. If you see the hostname, map and player list, RCON works.

  4. Or try the in-game route

    From your own game console you can set rcon_address and rcon_password and prefix commands with rcon. Treat this as optional.

    rcon_address 203.0.113.10:27015
    rcon_password your-password
    rcon status

Long outputs such as the player list can arrive as several packets, which is normal for the protocol and handled by decent clients.

Admin command reference

These commands exist in CS2 according to community references and current server guides. On ChicagoServers, type them on the Console tab and press Send. A few notes: map names are the file names such as de_mirage, and arguments in angle brackets are values you supply.

CommandEffectNotes
statusShows hostname, map and connected players with user IDs, SteamIDs and pingUse it first; the user ID it prints is what kickid and banid expect
changelevel <map>Switches to a map, keeping players connectedFor Workshop maps see the Workshop maps guide
host_workshop_map <id>Downloads and loads a Workshop map by its numeric IDNeeds the Workshop item to be public
mp_restartgame 1Restarts the match after the given number of seconds and resets scoresArgument is the delay in seconds
mp_warmup_endEnds warmup immediatelyUseful when players are ready
mp_pause_match / mp_unpause_matchPauses and resumes the matchUsed for tactical pauses and match tools
kick <name>Removes a player by nameAmbiguous with similar names
kickid <userid>Removes a player by user IDSafer than names; take the ID from status
banid <minutes> <userid>Bans a player; 0 minutes means permanentHeld in memory until you run writeid
writeidSaves the banned-ID list to diskWithout it bans can vanish on restart. In Source engine servers it saves permanent bans (0 minutes) only, so timed bans may not survive a restart
listid / removeid <steamid>Lists bans / removes oneRun writeid after removing
say <text>Sends a chat message as the serverGood for restart warnings
sv_password <value>Sets or clears the join passwordAn empty value clears it. A console change lasts until the next restart; for a permanent password use Join password on the Startup tab
exec <file>Runs a config file from game/csgo/cfg/Handy for switching between scrim and public setups
sv_cheats 1Enables cheat-protected commandsSee the warning below

Bans made with banid have limits. They are stored in simple files, carry no reason or expiry text, and are not shared between servers. Several host guides also note that the banid family can behave inconsistently across CS2 builds, so verify with listid after banning and consider a plugin with a database if bans matter to you.

Match, bot and cheat commands

These cvars shape how a round or match plays. Many are covered in depth in the server.cfg and game modes guide; here are the ones admins reach for mid-session.

Command or cvarWhat it does
mp_maxrounds <n>Sets the number of rounds in a match (competitive modes)
mp_roundtime, mp_freezetime, mp_buytimeRound length, freeze time and buy time; defuse maps can also have their own round-time cvar
mp_autoteambalance <0|1>Turns automatic team balancing off or on
bot_quota <n>Number of bots the server tries to maintain
bot_quota_mode <mode>How the quota is applied, for example fill keeps the total player count and removes bots as humans join
bot_add_t, bot_add_ct, bot_addAdds a bot to a team (or by argument)
bot_kickRemoves bots
bot_difficulty <0-3>Sets bot skill from easy to expert

One common gotcha: the game-mode config for the current mode can run when a map loads and reset mp_ cvars you set earlier in server.cfg. If a value reverts after changelevel, set it in the mode-specific config (a mode-only config on the Configs tab for Competitive, Casual and Deathmatch) or run it with exec after the map loads. Bots also change how a server looks in the server browser, which matters if you keep bots on a public server.

Typical sequence
// Example: quick scrim reset, sent one command at a time
mp_warmup_end
mp_restartgame 1
say Match is live - good luck!

To send commands on a timer, such as a say warning before a restart, use the Schedules tab: under Add a scheduled task, choose When, then Add a step with Send console commands, a Wait 5 minutes step and Restart the server, and click Add task.

Admins and bans: what the game offers vs what needs a plugin

CS2 does not ship a built-in admin list with permission levels. In practice, anyone who knows the RCON password can do anything an RCON client can, and the in-game server browser treats everyone else as an ordinary player. Everything finer than that is the job of a plugin.

NeedNative CS2Plugin needed?
Change map, restart match, end warmupYes, via console or RCONNo
Kick or ban by IDYes, with caveats aboveOptional, for reasons and persistence
Named admins with different permissionsNoYes
Chat commands like !kick, !ban, !mapNoYes
Persistent bans with reasons and expiryNot reallyYes
Mute, gag, slay and similar moderationNoYes
Audit trail of who did whatNoYes, depending on the plugin

The usual route is Metamod:Source plus CounterStrikeSharp and an admin plugin, with admins identified by SteamID64. CounterStrikeSharp's admin framework is configured with JSON files in its configs folder (on ChicagoServers, CounterStrikeSharp admins on the Configs tab), but installing the framework does not add chat commands by itself. The plugin installation guide explains the install and verification steps. These are third-party projects; they are not provided or supported by Valve, and ChicagoServers does not support individual plugins.

If you have staff who only need file or console access, sub-users are usually safer than handing out the RCON password. Click Sub-users in the left menu, enter their email under Add someone, tick the server and their permissions (for example Console, or Files for SFTP) and click Give access. Each person gets their own login that you can revoke.

Securing RCON

RCON is powerful and, by design, simple. Valve's protocol documentation shows the password as readable text in the authentication packet, and the protocol has no encryption of its own. Anyone who can watch the traffic between you and the server could read the password. Plan accordingly.

  • Use a unique, long password and never reuse a password from another account.
  • Limit who can connect. Prefer the Console tab and sub-users over handing out the RCON password. If you need an external client and want to restrict it by source address, ask support what is possible.
  • Do not connect over untrusted networks such as public Wi-Fi without a VPN or SSH tunnel.
  • Keep it out of screenshots, chat logs and public repositories. Config files committed to version control are a classic leak.
  • Rotate it when staff leave or if you suspect it leaked. Change RCON password on Startup and restart, which drops existing sessions.
  • Watch the logs. Repeated failed attempts mean someone is guessing. Some community references mention sv_rcon_maxfailures and sv_rcon_banpenalty to throttle guessing, but they report these as hidden or unreliable in retail CS2, so do not rely on them: a strong password and a restricted source address do the real work.

DDoS protection and RCON security are different problems. Network filtering, such as the 40Gbps DDoS protection included with ChicagoServers CS2 servers, absorbs floods but does not protect a weak password.

Common mistakes

  • Typing rcon on the Console tab. The prefix is only for sending commands from a client. On the Console tab just type the command.
  • Editing rcon_password in server.cfg and expecting it to stick. The panel writes the password from the RCON password field at every start, so change the Startup field instead.
  • Forgetting writeid. A ban that exists only in memory disappears on restart.
  • Kicking by name. Similar names, spaces and Unicode make it error-prone. Use status and kickid.
  • Leaving sv_cheats 1 on. Always set it back and keep it out of your standard configs.
  • Setting mp_ cvars in the wrong file and finding them reset after a map change.
  • Handing the RCON password to everyone. Port scanners find open game ports quickly, so keep the password to people who need it and give the rest sub-user access.
  • Using client-only commands. Commands such as map_workshop are for your game client. On a server, use host_workshop_map or changelevel.
  • Trusting a stale tutorial. CS:GO-era commands and cvars, including old rate and tick settings, may not exist in CS2. If a command is unknown, check it against current documentation instead of assuming a typo.

Frequently asked questions

How do I set the RCON password on a CS2 server?

In the panel, open your server, then the Startup tab, type a long random value into RCON password, click Save startup and then Restart. Avoid quotes and semicolons inside the password. If it is empty, RCON cannot be used. A rcon_password line in server.cfg does not stick, because the panel writes the password from the Startup tab at every start.

What port does CS2 RCON use?

RCON is a TCP protocol and uses the same port number as the server, 27015 by default. Game traffic itself is UDP. On ChicagoServers the panel assigns your server's ports and you do not open a firewall; the Console tab handles RCON for you, and external RCON clients use the address shown at the top of your server page.

Why does the in-game rcon command say unable to connect?

Community reports show the in-game rcon command failing in CS2 even when the server is configured correctly, while external RCON clients work. Test with an external client or use the Console tab, and check the RCON password on the Startup tab.

How do I ban a player on a CS2 server?

Run status to get the user ID, then banid followed by the number of minutes and the user ID (0 minutes is permanent), then kickid with the same user ID if the player is still connected, then writeid to save the ban list. Only permanent bans are saved, so use 0 minutes for any ban you want to keep. For bans with reasons or database storage you need an admin plugin.

Can I have multiple admins with different permissions without a plugin?

Not natively. CS2 has no built-in permission levels beyond knowing the RCON password. Named admins need a plugin framework such as CounterStrikeSharp with an admin plugin, or sub-user access to the panel, where each person gets only the permissions you tick.

Is RCON safe to leave open?

Only with precautions. The protocol is not encrypted, so use a long unique password, avoid untrusted networks and do not hand the password out widely. Many people skip RCON and use the Console tab in the panel instead.

We are your new 5-Star Hosting Company. At least according to ★ Trustpilot

Following along with a Counter-Strike 2 server? Deploy yours in minutes.

All servers come with a 24-Hour Trial, Free Backups, and 40Gbps DDoS Protection included!

We offer quality support, a detailed knowledgebase, video tutorials on most topics, and even live support in case you prefer a live human.

Use code SAVE15 to take 15% OFF Your First Invoice with ChicagoServers! Limited Time!