← Retour au blog
tech 28 July 2026

Setup a Simple, Self-Hosted Web Server with OpenBSD

Learn how to turn your mini PC into a robust web server with OpenBSD. Follow our step-by-step guide to set up a secure, self-hosted environment.

Article inspired by the original source
Setup a Simple, Self-Hosted Web Server with OpenBSD ↗ btxx.org

Introduction

In the world of web hosting, simplicity and security often stand in contrast. However, OpenBSD, known for its rigorous security protocols, offers an elegant solution for hosting websites on local hardware. Whether you're a developer looking for a solution to host personal projects or an entrepreneur wanting full control over your infrastructure, setting up a web server with OpenBSD is a viable option.

Why OpenBSD?

OpenBSD is renowned for being one of the most secure operating systems. With built-in encryption and a robust firewall, it provides a solid foundation for a web server. Additionally, its clear and comprehensive documentation makes it accessible even for novice users.

Required Hardware

To get started, ensure you have a mini PC or a thin client capable of running OpenBSD. A model like the HP T630 is ideal. Additionally, a low-cost VPS will allow you to mask your personal IP and enhance overall security.

Installing Wireguard

Wireguard is a modern VPN that is simple to configure, ensuring a secure connection between your local server and your VPS. Install it using the command:

``bash pkg_add wireguard-tools ``

Then generate private and public keys on each machine:

``bash umask 077 wg genkey > private.key wg pubkey < private.key > public.key ``

Configuring the VPS

On your VPS, create the file /etc/hostname.wg0 and configure it as follows:

``bash wgkey <VPS_PRIVATE_KEY> wgport 51820 wgpeer <HOME_PUBLIC_KEY> wgaip 10.10.0.2/32 inet 10.10.0.1/24 ``

Enable IP forwarding:

``bash echo 'net.inet.ip.forwarding=1' | doas tee -a /etc/sysctl.conf && doas sysctl net.inet.ip.forwarding=1 ``

Configuring the Local Server

On your local server, also create a /etc/hostname.wg0 file with the following settings:

``bash wgkey <HOME_PRIVATE_KEY> wgpeer <VPS_PUBLIC_KEY> wgendpoint <VPS-IP> 51820 wgaip 10.10.0.1/32 wgpka 25 inet 10.10.0.2/24 ``

Setting up the Web Server

Use httpd, OpenBSD's lightweight web server, to host your sites. Configure it in /etc/httpd.conf:

``bash server "default" { listen on * port 80 root "/var/www/htdocs" } ``

Start the server with httpd -f /etc/httpd.conf.

Conclusion

In just a few steps, you now have a secure, self-hosted web server with OpenBSD. This solution allows you to maintain full control of your infrastructure while benefiting from the robustness of a proven platform.

Let's discuss your project in 15 minutes.

OpenBSD Web Server Self-Hosted Wireguard Security
Deepthix newsletter · 100% AI · every Monday 8am

An AI agent reads tech for you.

Our AI agent scans ~200 sources per week and ships the best articles to your inbox Monday 8am. Free. One click to unsubscribe.

Visit the newsletter page →

Want to automate your operations?

Let's talk about your project in 15 minutes.

Book a call