How To Install HAproxy on Debian 12

In this tutorial, we will show you how to install HAproxy on Debian 12. HAProxy, an acronym for High Availability Proxy, is a popular open-source load balancer and proxy server for TCP and HTTP-based applications. It’s particularly suited for high-traffic websites and is often deployed by default in cloud platforms.
This article assumes you have at least basic knowledge of Linux, know how to use the shell, and most importantly, you host your site on your own VPS. The installation is quite simple and assumes you are running in the root account, if not you may need to add ‘sudo‘ to the commands to get root privileges. I will show you the step-by-step installation of HAproxy TCP/HTTP load balancer on a Debian 12 (Bookworm).
Prerequisites
- A server running one of the following operating systems: Debian 12 (Bookworm).
- It’s recommended that you use a fresh OS install to prevent any potential issues.
- SSH access to the server (or just open Terminal if you’re on a desktop).
- An active internet connection. You’ll need an internet connection to download the necessary packages and dependencies for HAproxy.
- A user account with sudo privileges to execute administrative commands.
Install HAproxy on Debian 12 Bookworm
Step 1. Start by updating your system’s package list to ensure you have the latest versions of the required software. Run the following command:
sudo apt update sudo apt upgrade
Step 2. Installing HAproxy on Debian 12.
Debian’s default repositories include HAProxy, allowing for straightforward installation. Use the following command to install HAProxy:
sudo apt install haproxy
Confirm that HAProxy is installed correctly by checking its version with the following command:
haproxy -v
Step 3. Configuration HAProxy.
After installing HAProxy, the next step is to configure it to suit your specific load balancing or proxying needs.
- Basic Configuration
Edit the HAProxy configuration file located at /etc/haproxy/haproxy.cfg using your preferred text editor. This file guides the behavior of your HAProxy load balancer and defines how client requests are received and routed to your backend servers.
Here’s a basic configuration example:
global
log /dev/log local0
log /dev/log local1 notice
chroot /var/lib/haproxy
stats socket /run/haproxy/admin.sock mode 660 level admin expose-fd listeners
stats timeout 30s
user haproxy
group haproxy
daemon
defaults
log global
mode http
option httplog
option dontlognull
timeout connect 5000
timeout client 50000
timeout server 50000
errorfile 400 /etc/haproxy/errors/400.http
errorfile 403 /etc/haproxy/errors/403.http
errorfile 408 /etc/haproxy/errors/408.http
errorfile 500 /etc/haproxy/errors/500.http
errorfile 502 /etc/haproxy/errors/502.http
errorfile 503 /etc/haproxy/errors/503.http
errorfile 504 /etc/haproxy/errors/504.http
frontend http_front
bind *:80
stats uri /haproxy?stats
default_backend http_back
backend http_back
balance roundrobin
server server1 backend1.example.com:80 check
server server2 backend2.example.com:80 check
This configuration directs traffic on port 80 to the backend servers in a round-robin fashion. The stats uri line enables HAProxy statistics to report at the given URI.
After configuring HAProxy, start the service and enable it to run on boot with the following commands:
sudo systemctl start haproxy sudo systemctl enable haproxy
Step 4. Access the HAProxy Statistics Page.
Now, you can access the HAProxy statistics page by navigating to http://your_server_ip:9000/haproxy?stats in your web browser. Replace your_server_ip with the IP address of your HAProxy server.

Step 5. Troubleshooting.
If you encounter issues with HAProxy, there are several tools at your disposal. To troubleshoot HAProxy configuration issues, use the haproxy -c command. This tool will parse your HAProxy files and detect any errors or missing settings before attempting to start the service:
haproxy -c -f /etc/haproxy/haproxy.cfg
For in-depth troubleshooting, examining HAProxy’s log files will usually indicate a specific error, with helpful diagnostic messages and error codes.
Congratulations! You have successfully installed HAproxy. Thanks for using this tutorial for installing the latest version of HAproxy on Debian 12 Bookworm. For additional help or useful information, we recommend you check the official HAproxy website.