OpenSource-Hub
D

docker-swag

3.7k stars·System Optimization·SHA-256 checksum verified

SWAG sets up an Nginx reverse proxy with automated SSL certificate management (Let's Encrypt/ZeroSSL) and fail2ban intrusion prevention.

Smart Download

Visit Project Homepage

No installer available yet — head to the source repository

One-click HTTPS reverse proxy with auto SSL renewal and fail2ban.

Core Features

  • Built-in certbot for automatic SSL certificate issuance and renewal
  • Nginx reverse proxy with PHP support
  • Integrated fail2ban for intrusion prevention
  • Weekly base OS updates for security
  • Multi-architecture support (x86-64, arm64) with easy user mapping

What It Can't Do

  • Requires `--cap-add=NET_ADMIN` for fail2ban; DNS must point to your public IP; HTTP validation needs port 80 open; DNS validation needs proper plugin config under /config/dns-conf.

Use Cases

  • Secure self-hosted services (e.g., Nextcloud, Jellyfin) behind a reverse proxy with HTTPS
  • Unified entry point for multiple internal web applications

SWAG (Secure Web Application Gateway) is a Docker container from LinuxServer.io that provides a complete secure web gateway solution. It includes an Nginx web server configured as a reverse proxy with PHP support, and a built-in certbot client that automatically obtains and renews free SSL/TLS certificates from Let's Encrypt or ZeroSSL. The container also integrates fail2ban for intrusion detection and prevention. It supports multiple architectures (x86-64 and arm64) and offers easy user mappings (PUID/PGID). The image is rebuilt weekly with security updates. SWAG is ideal for self-hosters who want a simple, automated way to serve web applications securely behind a reverse proxy with HTTPS.

Tags

nginxreverse-proxysslletsencryptcertbotfail2bandockersecurity

Getting Started

1

Download installer

Click the button above to download the installer for your system

2

Install the software

Double-click the downloaded installer and follow the prompts

3

Step 1: Forward ports 80 and 443 from your router to the Docker host IP

4

Step 2: Run `docker run -d --cap-add=NET_ADMIN -p 443:443 -p 80:80 -e URL=yourdomain.com -e SUBDOMAINS=www, -v /path/to/config:/config lscr.io/linuxserver/swag:latest`

5

Step 3: Wait 2-3 minutes for initialization and certificate issuance, then visit https://yourdomain.com

Install Guide
  1. Step 1: Forward ports 80 and 443 from your router to the Docker host IP
  2. Step 2: Run `docker run -d --cap-add=NET_ADMIN -p 443:443 -p 80:80 -e URL=yourdomain.com -e SUBDOMAINS=www, -v /path/to/config:/config lscr.io/linuxserver/swag:latest`
  3. Step 3: Wait 2-3 minutes for initialization and certificate issuance, then visit https://yourdomain.com
File Integrity

Checksum not available

This project has not published a SHA-256 checksum on its GitHub Release page

SHA256 Checksum

No checksum available

Download directly from GitHub Releases and verify file integrity yourself

All SHA-256 checksums on this platform are extracted from the project's official GitHub Release page, without any modification. You can independently verify them on the GitHub Releases page.

Open Source Transparency

View GitHub Source
Environment Guide

Uninstall Info

Stop and remove the container: `docker stop swag && docker rm swag`, then delete the config directory.

No Extra Dependencies

Ready to use after download. No additional runtime required.

Project Info
LicenseGPL-2.0
Last Updated2026-06-26 09:10:39
GitHub RepositoryOfficial Website

Having issues? Check the FAQ below

3 FAQs

Similar Projects