Installing Bitrix24 On-Premise: Requirements, Step-by-Step Guide, and Initial Setup
Installing Bitrix24 (Alaio) on-premise means deploying the full platform on your own server - giving you complete control over data, performance, and customisation. This guide covers everything an IT team needs: verified system requirements, the recommended BitrixVM deployment path, the installation wizard walkthrough, initial portal configuration, and post-install security hardening.
System Requirements at a Glance
As of 2026, Bitrix24 (Alaio) on-premise requires PHP 8.2+, Apache 2.4+ or Nginx 1.16+, MySQL 8.x (Percona recommended), SSD storage, and a minimum of 2 GB RAM - with 8-16 GB strongly recommended for any production workload with Push & Pull enabled.
The table below captures the hard minimums and realistic production targets. Hardware should be sized to the number of concurrent users, not just the total user count - see the hardware sizing guide for a full breakdown.
| Requirement | Minimum | Recommended (production) |
|---|---|---|
| Web server | Apache 2.4.x or Nginx 1.16.x | Apache 2.4.x (built-in) via BitrixVM |
| PHP version | 8.2 (as of 2026) | Latest stable 8.2+ |
| PHP memory limit | 256 MB | 512 MB+ |
| PHP extensions | GD, XML, FreeType, Zlib, mbstring, OPcache, POSIX/PCRE regex | Same + Redis/Memcached support |
| Database | MySQL 5.7+ / MariaDB 10.x | MySQL 8.x (Percona Server) |
| RAM | 2 GB (4 GB with Push & Pull) | 8-16 GB+ |
| Storage | 10 GB free (no OS) on HDD | SSD, 128-512 GB depending on user count |
| Open ports | 80 (HTTP), 443 (HTTPS), 22 (SSH) | Same + STUN/TURN ports if VoIP is used |
| SSL certificate | Required for production | Let's Encrypt or corporate CA |
| OS | CentOS Stream 9 / compatible Linux | CentOS Stream 9 via BitrixVM |
Indicative hardware by user count (as of 2026)
| Users | CPU | SSD (DB) | RAM |
|---|---|---|---|
| Up to 50 | 4-core Xeon (3.4 GHz class) | 128-256 GB | 8-12 GB |
| 50-100 | 4-core Xeon | 256 GB | 16-24 GB |
| 100-500 | 4-core Xeon | 512 GB | 24-32 GB |
| 500-1,000 | 6-core Xeon (3.6 GHz class) | 1 TB | 48-64 GB |
| 1,000-5,000 | 12-core Xeon Silver | 2 × 480 GB SSD | 128 GB |
| 5,000+ | 2 × 12-core Xeon Silver (cluster) | 2 × 480 GB SSD | 128 GB per node |
These are approximate guidelines. Actual needs depend on the modules you activate, file storage volume, and integration intensity. Always run a load test before signing off on production hardware.
Key PHP configuration parameters
The following php.ini settings must be correct before installation:
memory_limit = 256M(minimum; increase for heavier loads)mbstring.func_overload = 0(must be 0 - any other value blocks updates)default_charset = UTF-8file_uploads = Onsession.use_trans_sid = 0(prevents session IDs leaking into URLs)
Oracle and Microsoft SQL Server are not supported. PostgreSQL is available only on Enterprise for PostgreSQL licences.
BitrixVM vs Manual LAMP/LEMP: Which Path to Choose
The Bitrix Web Environment (BitrixVM) is the officially recommended deployment method - it pre-configures the entire software stack correctly, eliminating the most common misconfiguration errors that occur during a manual LAMP/LEMP setup.
Bitrix24 offers two deployment approaches:
-
BitrixVM (Bitrix Web Environment) - a pre-built virtual machine image (compatible with VMware, VirtualBox, and similar hypervisors) that ships with the correct versions of CentOS Stream, Nginx, Apache, PHP, MySQL, and all required modules already tuned. Updates to the stack (PHP, MySQL, Nginx) are managed through the built-in
menu.shconsole tool. -
Manual installation on bare OS - deploy a clean Linux server (CentOS Stream 9 is the most tested), install and configure Apache/Nginx, PHP 8.2+, MySQL 8.x, and all required extensions yourself, then run the Bitrix installation wizard. This path gives more flexibility (e.g. Debian/Ubuntu if required), but demands solid Linux administration experience.
| Factor | BitrixVM | Manual on bare OS |
|---|---|---|
| Setup time | Fast - VM ready in minutes | Hours to days |
| Misconfiguration risk | Low - pre-validated stack | High if admin is unfamiliar with Bitrix requirements |
| OS choice | CentOS Stream (bundled) | Any supported Linux |
| Stack updates | Via menu.sh (guided) |
Manual, admin-managed |
| Docker option | Available (bitrixdock) | Available |
| Best for | Standard production deployments | Custom environments, cloud VMs, containers |
For teams deploying on a private cloud or a hyperscaler, there is also a Docker-based path using the bitrixdock project (clone, configure .env with PHP version, DB credentials, and web server type, then docker-compose up -d). See the deployment on AWS, Azure or private cloud guide for cloud-specific considerations.
Installation Checklist: Step by Step
A clean Bitrix24 on-premise installation follows a predictable sequence of 12 steps; skipping any of the infrastructure steps - particularly port forwarding, domain binding, and SSL - will cause functional failures after launch.
Use this checklist as your pre-flight and installation runbook:
- 1. Provision the server - physical, virtual, or cloud VM meeting the hardware requirements above.
- 2. Choose deployment path - BitrixVM image or manual OS install (CentOS Stream 9 recommended).
- 3. Configure network - assign a static external IP address; open ports 80, 443 (required), and 22 (SSH management).
- 4. Bind a domain - point your domain's DNS A record to the server IP so the portal is reachable by hostname.
- 5. Install/verify the software stack - if manual: Apache 2.4+/Nginx 1.16+, PHP 8.2+, MySQL 8.x, required PHP extensions (GD, XML, FreeType, Zlib, mbstring, OPcache).
- 6. Set php.ini parameters -
memory_limit,mbstring.func_overload=0,default_charset=UTF-8,file_uploads=On,session.use_trans_sid=0. - 7. Download the distribution - obtain the Bitrix24 on-premise package (typically via
bitrixsetup.phpbootstrapper or a full archive). - 8. Run the installation wizard - access
bitrixsetup.phporrestore.phpin a browser; the wizard checks environment compatibility and walks through database creation. - 9. Enter the licence key - activate your edition; all domains that will serve the portal must be registered with the key (otherwise cloud Push & Pull will not function).
- 10. Install SSL certificate - Let's Encrypt is the standard choice for public-facing portals; use your corporate CA for air-gapped or internal deployments.
- 11. Configure Push & Pull server - mandatory for chats, tasks, calendars, telephony, and mobile app sync (details in the dedicated section below).
- 12. Set up cron and agents - configure the system cron job for background task processing (mail delivery, automation triggers, scheduled reports).
How the Installation Wizard Works
The Bitrix24 installation wizard (accessed via bitrixsetup.php or restore.php in a browser) validates your server environment, creates the database schema, and writes the initial configuration files - the whole process typically takes 15-30 minutes on a prepared server.
The wizard proceeds through these stages:
- Environment check - PHP version, required extensions, file permissions, and
php.inivalues are tested automatically. Red warnings must be resolved before proceeding; yellow warnings are non-blocking but should be addressed. - Database setup - enter MySQL host, database name, username, and password. The wizard creates the schema and verifies connectivity. Specify the container name if you are using Docker.
- Licence key entry - paste your on-premise licence key. The system contacts the Bitrix licensing server to validate it. Activation records environment fingerprints; migrating the portal to a new server later may require re-activation and can temporarily block update delivery - plan server migrations carefully.
- Administrator account creation - set the initial admin email and password. This account has full portal access.
- Site settings - set the default site title, primary language, and time zone.
- Completion - the wizard writes
dbconn.phpand other configuration files, then redirects to the portal.
If you are restoring from a backup (e.g. migrating from cloud to self-hosted), use restore.php instead of bitrixsetup.php - it unpacks a backup archive and reconstructs the portal state. See the cloud-to-self-hosted migration guide for that workflow.
Initial Portal Configuration
After the wizard completes, five configuration areas need attention before the portal is ready for users: site identity, admin account hardening, system mail, SSL enforcement, and background agents - skipping any of these will result in broken notifications, insecure access, or stalled automation.
Work through these in the Bitrix24 admin panel (/bitrix/admin/):
Site settings
Set the portal's public URL (must match the domain bound to your SSL certificate), default language, regional formats, and file upload limits.
System mail
Configure an SMTP relay or local MTA so the portal can send password resets, task notifications, and CRM alerts. Without a working mail configuration, user onboarding fails silently.
SSL enforcement
Once your certificate is installed (Let's Encrypt or corporate CA), force HTTPS in the web server configuration and set the portal URL to https://. For internal deployments with a private CA, distribute the root and intermediate certificates to all user devices.
Cron and background agents
Bitrix24 uses a cron-based agent system for deferred tasks: scheduled reports, mail queues, automation triggers, and cleanup jobs. Add the Bitrix cron entry to the server's crontab (the exact command is shown in the admin panel under Settings → System settings → Site agents). Without this, automation robots and scheduled tasks will not fire.
AD/LDAP and SSO (optional at install time)
If your organisation uses Active Directory, the AD/LDAP integration module in the admin panel enables centralised user management. SSO can be layered on top via Kerberos or NTLM, configured at the web server level. This is not required at initial install but should be planned before user provisioning begins. Full details are in the AD, LDAP, and SSO integration guide.
Push & Pull Server: Required for Chats and Real-Time Features
The Push & Pull server is mandatory for all real-time Bitrix24 features - chats, task updates, calendar sync, telephony, mobile app, and the document generator - and must be explicitly configured on self-hosted deployments; it does not activate automatically.
The data flow from the portal through the Push & Pull server to end-user clients, and the integration points with telephony and the update/licensing infrastructure.
The following diagram illustrates how a self-hosted Bitrix24 portal connects its core infrastructure components: the web server stack feeds the portal application, which communicates with the database and the Push & Pull server. End-user browsers and mobile apps maintain persistent connections to Push & Pull for real-time events. The licensing server is contacted on activation and updates.
flowchart LR
subgraph Server["Your Server"]
NX[Nginx / Apache] --> B24[Bitrix24 App]
B24 <--> DB[(MySQL 8.x)]
B24 <--> PP[Push & Pull Server\nBitrix Push Server 2.0]
end
B24 <-->|HTTPS 443| LICENSE[Licensing Server]
B24 <-->|REST API 443| VOIP[Telephony / VoIP]
BROWSER[User Browsers] -->|WebSocket| PP
MOBILE[Mobile Apps] -->|WebSocket| PP
BROWSER -->|HTTPS| NX
MOBILE -->|HTTPS| NX
Two options exist for Push & Pull on a self-hosted portal:
- Cloud Push & Pull (1C-Bitrix) - the portal relays real-time events through Bitrix's cloud infrastructure. Simpler to set up but requires outbound internet access and is unsuitable for air-gapped environments.
- Local Bitrix Push Server 2.0 - a Node.js-based server installed on-premise. Required for closed-network (air-gapped) deployments. Runs as a pub/sub service proxied through Nginx via WebSocket. This is the recommended option for data-sovereign deployments.
To switch: in the admin panel go to Settings → Product settings → Module settings → Push and Pull and select your preferred server mode. The legacy Nginx-PushStreamModule (0.3.x/0.4.x) and Bitrix Push Server 1.0 are no longer supported - if you are upgrading an older installation, migrate to Push Server 2.0.
Push & Pull is used by: Messenger/chats, Tasks, Calendars, News Feed, Groups, RPA, mobile app, document generator, Telephony, and the Sales Centre.
Post-Install Security Hardening
Bitrix24 ships with a built-in Proactive Protection module that covers the most critical server-side threats, but it must be activated and configured after installation - alongside three non-negotiable baseline steps: a non-root admin OS account, a least-privilege database user, and automatic security updates.
Key hardening actions immediately after install:
- Non-root OS user - the web server process and deployment scripts should run as a dedicated non-root system user. Never run Apache or Nginx as root.
- Least-privilege DB account - create a dedicated MySQL user for Bitrix24 with only the permissions the application needs (SELECT, INSERT, UPDATE, DELETE, CREATE on the Bitrix schema). Do not use the MySQL root account in
dbconn.php. - Proactive Protection - navigate to Settings → Proactive Protection in the admin panel. Enable Web Application Firewall (WAF), set the security level appropriate for your environment (standard for most, high for regulated industries), and review the activity log.
- Automatic security updates - enable automatic update delivery in Settings → Update system. For air-gapped environments, schedule a manual update workflow - the update system checks PHP version,
mbstringconfiguration, and other prerequisites before applying patches; non-compliant environments will have updates blocked. - SSL/TLS enforcement - disable plain HTTP at the web server level once SSL is confirmed working. Redirect all port 80 traffic to 443.
- Session security - ensure
session.use_trans_sid = 0and that each hosting user has a separate session file directory. mbstring.func_overload = 0- this setting being non-zero is one of the most common blockers for updates on older installations. Verify it is set to 0 inphp.ini(or remove the line entirely).
For a comprehensive 25-point hardening checklist, see the dedicated security hardening guide.
For ongoing update and patch management procedures, refer to the on-premise updates and maintenance guide.
Editions and What Changes Between Them
Bitrix24 on-premise is sold in several editions that differ by maximum user count, available modules, and infrastructure capabilities - the Enterprise edition is the only one that includes the Web Cluster module for horizontal scaling and PostgreSQL support.
Key edition differentiators relevant to infrastructure planning:
| Factor | Standard/Professional editions | Enterprise edition |
|---|---|---|
| User limit | Fixed per licence | Higher tiers available |
| Web Cluster (HA) | Not included | Included |
| PostgreSQL support | Not available | Available (Enterprise for PostgreSQL) |
| Licence copies (test + prod) | Up to 2 | More flexibility for large teams |
| Horizontal scaling | Not native | Supported |
If you are planning a high-availability cluster setup, you need the Enterprise licence before you begin infrastructure design - the Web Cluster module is what enables master-replica database replication and multi-node application server load balancing. See the high-availability cluster setup guide for architecture details.
For a detailed breakdown of all edition features and pricing factors, see Bitrix24 self-hosted editions and licensing explained.
When budgeting the full project, factor in licence cost, server infrastructure, and implementation effort. Based on ACP Group's experience across 1,300+ projects, the implementation cost and timeline data provides a realistic baseline for planning.
ACP Group is a Bitrix24 Gold partner that installs and configures on-premise Bitrix24 portals turnkey - from server provisioning and environment setup through to user onboarding and integration with your existing systems.
Working with a partner on self-hosting. Want the control of self-hosted Bitrix24 without running the server yourself? ACP Group can deploy and operate it for you - see managed self-hosted Bitrix24, support & maintenance plans, or request a turnkey deployment quote.
Frequently asked questions
What is the minimum PHP version required for Bitrix24 on-premise in 2026?
As of March 2024 (and confirmed in 2026 documentation), the minimum supported PHP version is 8.2. Earlier versions will block both installation and the update system. Always use the latest stable PHP 8.2+ release for best security and performance.
Do I have to use BitrixVM, or can I install on a plain Linux server?
BitrixVM is recommended but not mandatory. You can install Bitrix24 on a clean Linux server (CentOS Stream 9 is the most tested) by configuring the LAMP/LEMP stack manually. BitrixVM simply pre-validates the entire stack, reducing misconfiguration risk significantly for teams without deep Bitrix experience.
Which ports need to be open on the server firewall?
At minimum: port 80 (HTTP), port 443 (HTTPS), and port 22 (SSH remote access). If you use VoIP telephony, additional SIP (UDP/TCP 5060) and RTP (dynamic range) ports are required. The Push & Pull local server communicates internally but Nginx proxies its WebSocket traffic through 443.
Is the Push & Pull server mandatory?
Yes - since 2021, the Push & Pull server is required for the Messenger/chat module and is also used by Tasks, Calendars, Telephony, the mobile app, and several other modules. On self-hosted portals you can use either the Bitrix cloud relay or a locally installed Bitrix Push Server 2.0. The legacy Push Server 1.0 and Nginx-PushStreamModule are no longer supported.
What happens if I move the portal to a new server after activation?
Activation records the server environment fingerprint. Migrating to a new server may temporarily block update delivery until the licence is re-registered for the new environment. Register all domains that will serve the portal at activation time to avoid issues with cloud services like Push & Pull.
Can Bitrix24 on-premise use PostgreSQL instead of MySQL?
PostgreSQL (versions 11 and above, including Pro/Enterprise editions) is only supported with the Enterprise for PostgreSQL licence. All other editions require MySQL (8.x Percona Server recommended) or MariaDB 10.x. Oracle and MSSQL are not supported.
Based on real practice
This article is based on 15 internal documents from ACP Group's practice - work plans, specifications and Bitrix24 implementation cases.
Need help with Bitrix24?
ACP Group is a Bitrix24 Gold Partner. We'll review your task, estimate the effort in hours and propose a plan - free of charge.