EasyNGINX
Beginner-friendly nginx setup and virtual host manager for Linux. One installer, one easynginx command. Reverse proxies, SSL via Let's Encrypt, security hardening, backups and rollback — all distros, no surprises.
A beginner-friendly command-line tool that sets up and manages nginx web servers, including SSL certificates, security audits, and automatic rollback.
EasyNGINX is a command-line tool for Linux that simplifies setting up and managing nginx, a popular web server. Configuring nginx from scratch typically involves writing configuration files by hand, running a separate tool to get SSL certificates, adjusting firewall rules, and knowing where each Linux distribution stores its config files. EasyNGINX wraps all of that into a single command called easynginx.
When you create a new site, the tool asks four questions: the domain name, the site type, the backend address if it is a reverse proxy, and whether to get an HTTPS certificate. It then checks that DNS points to your server, writes the configuration file, validates that nginx accepts it, reloads the server, and issues a certificate from Let's Encrypt. If anything fails at any step, it rolls back automatically so nginx is never left in a broken state.
The tool supports several types of sites: reverse proxies that forward traffic to an app running on the same server, static file hosting, PHP applications, WebSocket apps, redirects, and load balancers. It also includes presets for common setups like WordPress, Laravel, Node.js, Hugo, and Next.js.
Beyond site creation, easynginx includes an audit command that scans all your configured sites for missing security headers, weak TLS settings, and expiring certificates. There are backup and restore commands that produce tarballs with checksums. A cluster mode can deploy a site configuration to multiple servers from a single YAML inventory file. A lightweight read-only web dashboard is available locally for status checks.
The tool supports Ubuntu, Debian, Fedora, RHEL, Rocky Linux, AlmaLinux, Arch Linux, Manjaro, and EndeavourOS. It is written in Python with some Bash, requires no daemon or container of its own, and wraps the standard certbot tool for certificate issuance and renewal.
Where it fits
- Set up a reverse proxy, static site, or PHP application on nginx by answering four prompts instead of writing config files by hand.
- Issue and renew HTTPS certificates automatically through Let's Encrypt as part of site creation.
- Run a security audit across all configured sites to catch missing headers, weak TLS settings, or expiring certificates.