CS-Bans Installation for Counter-Strike 1.6 – Ubuntu, Debian, CentOS
Last updated: July 23, 2026
CS-Bans is one of the most used web ban panels for Counter-Strike 1.6 servers. If you’re running a CS 1.6 server and want a proper ban management system with a browser interface – where admins can issue bans, view ban history, and manage accounts without touching config files – CS-Bans is the most straightforward option to set up alongside AMX Mod X. Below are the exact steps to get it running on Ubuntu, Debian, or CentOS, with the commands for each system written out separately since they differ enough to cause real problems if you mix them up.
- What you need before installing CS-Bans
- Installing LAMP on Ubuntu or Debian
- Installing LAMP on CentOS 7
- Creating the CS-Bans database in phpMyAdmin
- Enabling mod_rewrite on Ubuntu and Debian
- Enabling mod_rewrite on CentOS
- Uploading and placing CS-Bans files
- Setting file permissions
- Running the CS-Bans web installer
- Connecting the cs 1.6 server to CS-Bans via AMXX
- Admin Loader plugin – why and how to use it
- Common CS-Bans installation problems
- Quick reference – commands by distro
What you need before installing CS-Bans
The CS-Bans ban panel runs as a PHP web application and needs a LAMP stack on your Linux server. Before starting the cs 1.6 ban system setup, make sure you have:
- A Linux VPS or dedicated server – Ubuntu 20.04/22.04, Debian 11/12, or CentOS 7 are the most common choices for CS 1.6 hosting
- Root or sudo SSH access – you’ll run commands directly on the server using PuTTY on Windows or any terminal on Linux/Mac
- A running Counter-Strike 1.6 server with AMX Mod X installed – CS-Bans communicates with the game server through an AMXX plugin
- FTP or SCP access to upload files – WinSCP is the most common tool for this on Windows
- A basic understanding of Linux terminal commands – you’ll need to navigate directories, edit files, and run chmod commands
Installing LAMP on Ubuntu or Debian for CS-Bans
On Ubuntu and Debian, apt handles the full LAMP stack for cs 1.6 ban panel in one pass. Connect via SSH as root or sudo user and run:
apt update && apt upgrade -y
apt install -y apache2 mysql-server php php-mysql php-mbstring php-gd libapache2-mod-php phpmyadmin
During the phpMyAdmin installation prompt, you’ll be asked to choose which web server to configure automatically – select apache2 by pressing Space to mark it, then Enter. When asked whether to configure the database with dbconfig-common, choose Yes and set a phpMyAdmin admin password.
After installation, verify everything is running:
systemctl status apache2 systemctl status mysql
Both should show “active (running)”. If Apache isn’t running, start it:
systemctl start apache2 systemctl enable apache2
The web root on Ubuntu/Debian is /var/www/html/. phpMyAdmin will be accessible at http://YOUR_IP/phpmyadmin.
Installing LAMP on CentOS 7 for CS-Bans
CentOS uses yum instead of apt, the Apache service is called httpd instead of apache2, and phpMyAdmin is not in the default repos – you need EPEL first. If you’re setting up a cs 1.6 server ban management system on CentOS, don’t copy Ubuntu commands here – the differences will break the setup silently.
First, update and install Apache:
yum update -y yum install -y httpd systemctl start httpd systemctl enable httpd
Install MariaDB (the CentOS default MySQL-compatible database):
yum install -y mariadb-server mariadb systemctl start mariadb systemctl enable mariadb mysql_secure_installation
Run through the mysql_secure_installation prompts – set a root password, remove anonymous users, disallow remote root login, and remove the test database. All yes.
Install PHP 7 with required modules (CentOS 7 needs the Remi repository for PHP 7):
yum install -y epel-release yum-utils yum install -y http://rpms.remirepo.net/enterprise/remi-release-7.rpm yum-config-manager --enable remi-php74 yum install -y php php-mysql php-mbstring php-gd systemctl restart httpd
Install phpMyAdmin from EPEL and configure access:
yum install -y phpMyAdmin
On CentOS, phpMyAdmin by default only allows connections from localhost. To allow access from your IP, edit the config:
nano /etc/httpd/conf.d/phpMyAdmin.conf
Find the lines with Require ip 127.0.0.1 and add your own IP below each one, or change them to Require all granted if this is a private server. Save and restart:
systemctl restart httpd
The web root on CentOS is also /var/www/html/. phpMyAdmin is at http://YOUR_IP/phpMyAdmin (note capital M and A).
If you have a firewall active, open port 80:
firewall-cmd --permanent --add-service=http firewall-cmd --reload
Creating the CS-Bans MySQL database
The cs 1.6 csbans database stores all ban records, admin accounts, and panel configuration. Open phpMyAdmin in your browser and log in with your MySQL/MariaDB root credentials. Then:
- Click New in the left sidebar
- Enter a database name – for example
csbans - Set collation to utf8_general_ci from the dropdown
- Click Create
Note down the exact database name, your MySQL username (root or a separate user you create), and the password. You’ll enter these during the CS-Bans web installer. If you want to create a dedicated MySQL user instead of using root for CS-Bans (recommended on a production server), go to User Accounts in phpMyAdmin, add a new user, grant it all privileges on the csbans database only, and use those credentials in the installer instead.
Enabling mod_rewrite on Ubuntu and Debian
CS-Bans uses URL rewriting for its panel links, which requires the Apache rewrite module to be active and the web directory to allow overrides. On Ubuntu/Debian:
a2enmod rewrite systemctl restart apache2
Then open the default virtual host config:
nano /etc/apache2/sites-available/000-default.conf
Inside the <VirtualHost *:80> block, add a Directory section for your CS-Bans path:
<Directory /var/www/html/csbans>
AllowOverride All
</Directory>
Save, then restart Apache:
systemctl restart apache2
Enabling mod_rewrite on CentOS
On CentOS, mod_rewrite is included with httpd but may not be set to allow overrides. Edit the main Apache config:
nano /etc/httpd/conf/httpd.conf
Find the <Directory "/var/www/html"> section and change AllowOverride None to:
AllowOverride All
Save and restart:
systemctl restart httpd
Uploading and placing CS-Bans files
- Download the CS-Bans package: CSbans.zip
- Extract the ZIP on your local machine – you’ll see folders including
protected,assets,themesand a file calleddb.config.inc.php - Create the installation directory on the server. On both Ubuntu/Debian and CentOS:
mkdir /var/www/html/csbans
- Use WinSCP, FileZilla with SFTP, or the
scpcommand to upload the extracted files into/var/www/html/csbans/– upload the contents of the extracted folder, not the folder itself, so thatprotected/,assets/and the other files sit directly inside/var/www/html/csbans/
If you’re using WinSCP, connect with SFTP protocol on port 22 (not FTP on port 21). Navigate to /var/www/html/csbans/ on the right panel and drag the files from the left panel.
Setting file permissions for CS-Bans
The csbans panel writes runtime data and cached assets to specific folders. Without correct permissions, the web installer fails silently or shows a blank page – this is the most common reason a cs 1.6 ban panel installation gets stuck. Run on both Ubuntu/Debian and CentOS:
chmod -R 777 /var/www/html/csbans/protected/runtime chmod -R 777 /var/www/html/csbans/assets chmod 777 /var/www/html/csbans/db.config.inc.php
If you see a blank page or a “403 Forbidden” during installation, come back to this step first – permission errors are the most common cause of a silent failure during CS-Bans setup.
On CentOS, SELinux can also block Apache from writing to the web root even with chmod 777 applied. If permissions look correct but the installer still fails, check whether SELinux is enforcing:
getenforce
If it returns “Enforcing”, either set the correct SELinux context on the CS-Bans directory:
chcon -Rt httpd_sys_rw_content_t /var/www/html/csbans
Or temporarily set SELinux to permissive mode for testing (not recommended permanently on a public server):
setenforce 0
Running the CS-Bans web installer
- Open your browser and go to:
http://YOUR_SERVER_IP/csbans/site/install.html - The installer form will ask for the database hostname (usually
localhost), database name, MySQL username, and MySQL password – enter the details from the database you created earlier - Set an admin username and password for the CS-Bans web panel itself – this is separate from your MySQL credentials
- Click install and wait for the confirmation that tables were created successfully
- After the installer completes, remove the install file immediately to prevent anyone from re-running it:
rm /var/www/html/csbans/site/install.html
The CS-Bans panel is now accessible at http://YOUR_SERVER_IP/csbans. Log in with the admin credentials you set in the installer, not your MySQL credentials.
Connecting the cs 1.6 server to CS-Bans via AMXX
The CS-Bans AMXX plugin is what ties your game server to the web ban panel. Without it, bans issued in-game won’t reach the cs 1.6 ban management database and bans issued through the web panel won’t affect the server. The plugin connects to MySQL directly – not through HTTP – so it needs the same database credentials used during web installation.
- Download the CS-Bans AMXX plugin and place the compiled
.amxxfile in your CS 1.6 server’scstrike/addons/amxmodx/plugins/folder - Open the CS-Bans plugin configuration file (usually located in
cstrike/addons/amxmodx/configs/) and fill in your MySQL host, database name, username, and password – these are the same credentials used during web installation - Add the plugin to
cstrike/addons/amxmodx/configs/plugins.inion a new line - Restart the game server and check the AMXX console for any connection errors on startup – a successful connection will log a confirmation message, while a failed connection will show a MySQL error with the reason
The cs 1.6 server and the web panel server can be on the same machine or on separate machines – the plugin connects to the database over TCP regardless. If they’re on separate machines, make sure port 3306 (MySQL) is accessible from the game server IP, or create a specific MySQL user that allows connections from the game server’s IP address only.
Admin Loader plugin – why and how to use it
The standard AMXX admin system loads admin accounts from a static flat file (users.ini), which means every time you add or remove an admin through the CS-Bans web panel, you need to restart the game server for the change to take effect. The Admin Loader plugin removes this limitation by reading admin accounts directly from the CS-Bans MySQL database, so changes made in the web panel apply to the live server without a restart.
There’s also a specific technical reason to prefer Admin Loader over the standard amxbans plugin for loading admins from a database: when loading admins from a MySQL source using the standard method, setinfo _pw password authentication stops working correctly. Admin Loader bypasses this entirely and handles authentication differently in a way that works with CS-Bans database records.
- Download the Admin Loader plugin: admin_loader.sma
- Compile it with the AMX Mod X compiler to produce an
.amxxfile, or ask on the AMX Mod X forums if a pre-compiled version is available for your AMXX version - Place the compiled
.amxxfile incstrike/addons/amxmodx/plugins/ - Add the plugin name to
plugins.ini - Configure the plugin to point to the CS-Bans database using the same MySQL credentials as the main plugin
- Remove or comment out any conflicting admin loading plugins from
plugins.inito avoid conflicts
Common CS-Bans installation problems and fixes
- Blank page at the installer URL: almost always a file permission issue. Re-run the three
chmod 777commands and refresh. On CentOS, also check SELinux withgetenforce. - 403 Forbidden at the panel URL: the web root directory permissions are too restrictive, or Apache doesn’t have read access. On CentOS, this is frequently an SELinux issue.
- “AllowOverride” errors in Apache logs: the mod_rewrite configuration wasn’t applied correctly. Check the virtual host config file matches the path where CS-Bans is installed.
- Database connection failed during installer: double-check the hostname (localhost if MySQL is on the same machine, or the actual IP if it’s remote), the database name is spelled exactly as created, and the user has privileges on that specific database.
- AMXX plugin MySQL errors on server startup: the game server can’t reach port 3306 on the database server. Check firewall rules and whether MySQL is bound to
0.0.0.0or only127.0.0.1. Edit/etc/mysql/mysql.conf.d/mysqld.cnf(Ubuntu) or/etc/my.cnf(CentOS) and changebind-addressif needed, then restart MySQL. - Bans issued in-game don’t appear in the web panel: the AMXX plugin isn’t connecting to the database or is pointing to the wrong database. Check the plugin config file for typos in the database name or credentials.
CS-Bans cs 1.6 – commands quick reference by distro
| Task | Ubuntu / Debian | CentOS 7 |
|---|---|---|
| Package manager | apt |
yum |
| Apache service name | apache2 |
httpd |
| Install Apache | apt install apache2 |
yum install httpd |
| Install MySQL | apt install mysql-server |
yum install mariadb-server mariadb |
| Install PHP | apt install php php-mysql php-mbstring php-gd libapache2-mod-php |
Enable Remi repo first, then yum install php php-mysql php-mbstring php-gd |
| Install phpMyAdmin | apt install phpmyadmin (auto-configures Apache) |
Enable EPEL first, then yum install phpMyAdmin (manual Apache config needed) |
| Enable mod_rewrite | a2enmod rewrite |
Built-in, edit /etc/httpd/conf/httpd.conf |
| Apache config path | /etc/apache2/sites-available/000-default.conf |
/etc/httpd/conf/httpd.conf |
| Web root | /var/www/html/ |
/var/www/html/ |
| Restart Apache | systemctl restart apache2 |
systemctl restart httpd |
| SELinux permission fix | Not applicable | chcon -Rt httpd_sys_rw_content_t /var/www/html/csbans |
| Open firewall port 80 | Usually open by default | firewall-cmd --permanent --add-service=http && firewall-cmd --reload |
If you’re setting up a CS 1.6 server from scratch, download Counter-Strike 1.6 from our portal first.
To download the original game files and also see all the available game resources, feel free to use our links. To experience the game at its best.
