https://github.com/husarnet/proxy-gui
Nginx Proxy Manager + Husarnet + Ansible: Easy way to share services hosted on your Husarnet devices over public IP.
https://github.com/husarnet/proxy-gui
Last synced: 4 months ago
JSON representation
Nginx Proxy Manager + Husarnet + Ansible: Easy way to share services hosted on your Husarnet devices over public IP.
- Host: GitHub
- URL: https://github.com/husarnet/proxy-gui
- Owner: husarnet
- License: mit
- Created: 2021-10-18T12:49:52.000Z (almost 5 years ago)
- Default Branch: main
- Last Pushed: 2021-10-26T16:14:23.000Z (over 4 years ago)
- Last Synced: 2025-10-30T22:03:03.152Z (9 months ago)
- Size: 9.77 KB
- Stars: 3
- Watchers: 3
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# proxy-gui
**[Nginx Proxy Manager](https://nginxproxymanager.com/) + Husarnet + Ansible**
Easy way to share services hosted on your Husarnet devices over proxy server with nice UI.
## Installation
> This repo is powered by GitHub Actions and Ansible, so after providing proper GitHub secrets, everything needed to run the proxy-gui on your own server will be done automatically.
1. Click **[Use this template](https://github.com/husarnet/proxy-gui/generate)** button and create your own public or private copy of this repo
2. Prepare a new server with public IP address with clear installation of **Ubuntu 20.04**
3. Setup SSH key pair **(with NO passphrase!!!)**:
```bash
ssh-keygen -t ed25519 -C "user@example.com" -f ./ga-ssh-key
```
That command will generate 2 files:
| File | Target location | Procedure |
| - | - | - |
| `ga-ssh-key` | GitHub Secret | (in the GitHub repository) `Settings` > `Secrets` > `New repository secret` and create `SSH_PRIVATE_KEY` secret. Copy the `ga-ssh-key` file content here |
| `ga-ssh-key.pub` | `/root/.ssh/authorized_keys` on your VPS | `cat ga-ssh-key.pub >> /root/.ssh/authorized_keys` |
4. Create `PUBLIC_IP` repository secret and place your server's public IPv4 address here
5. Get your **Husarnet Join Code** from app.husarnet.com, and create a new GitHub repository secret `HUSARNET_JOINCODE`.
6. Go to `Actions` tab and trigger the `Deploy to server` workflow
### GitHub repository secrets summary
| Repository Secret | Description |
| - | - |
| `PUBLIC_IP` | Public IP address of your VPS |
| `SSH_PRIVATE_KEY` | private SSH key (for root at your VPS) |
| `HUSARNET_JOINCODE` | Join Code from https://app.husarnet.com |
## Usage
Info on how to setup domains, issue SSL certificates and define proxy rules are in [this blog post](https://husarnet.com/blog/reverse-proxy-gui).
## Backup
If you want to save / restore settings of your Nginx Proxy Manager, go to `Actions` tab and manually trigger `Save Backup` or `Restore Backup` GitHub workflows. The backup will be stored as `.backup.tgz` in your GitHub repository.