https://github.com/wg-easy/wg-easy
The easiest way to run WireGuard VPN + Web-based Admin UI.
https://github.com/wg-easy/wg-easy
Last synced: 7 days ago
JSON representation
The easiest way to run WireGuard VPN + Web-based Admin UI.
- Host: GitHub
- URL: https://github.com/wg-easy/wg-easy
- Owner: wg-easy
- License: other
- Created: 2021-05-22T09:12:05.000Z (almost 4 years ago)
- Default Branch: master
- Last Pushed: 2024-10-21T05:02:30.000Z (6 months ago)
- Last Synced: 2024-10-29T10:56:03.505Z (6 months ago)
- Language: JavaScript
- Homepage:
- Size: 3.3 MB
- Stars: 14,913
- Watchers: 104
- Forks: 1,468
- Open Issues: 25
-
Metadata Files:
- Readme: README.md
- Contributing: contributing.md
- Funding: .github/FUNDING.yml
- License: LICENSE
- Codeowners: .github/CODEOWNERS
Awesome Lists containing this project
- RAWR - wg-easy - The easiest way to run WireGuard VPN + Web-based Admin UI. (Other / Webapps)
- awesome-starred - wg-easy/wg-easy - The easiest way to run WireGuard VPN + Web-based Admin UI. (others)
- awesome-wireguard - wg-easy/wg-easy - The easiest way to run WireGuard VPN + Web-based Admin UI. (Projects / User Interface)
- StarryDivineSky - wg-easy/wg-easy - easy项目提供了一种简便的方式来运行 WireGuard VPN,并提供基于 Web 的管理用户界面。它旨在简化 WireGuard VPN 的设置和管理过程,无需复杂的命令行操作。该项目的主要特色是易于使用,用户可以通过 Web UI 轻松配置和管理 VPN 连接。wg-easy 简化了 WireGuard 的密钥生成、客户端配置和连接管理等任务。通过 Docker 容器化部署,可以快速启动和运行 VPN 服务。Web UI 提供了直观的操作界面,方便用户添加、删除和管理 VPN 客户端。该项目适用于希望快速搭建和管理 WireGuard VPN,但又不想深入研究底层配置的用户。总而言之,wg-easy 提供了一个用户友好的 WireGuard VPN 解决方案,降低了 VPN 部署和管理的门槛。 (网络信息服务 / 网络代理)
README
# WireGuard Easy
[](https://github.com/wg-easy/wg-easy/actions/workflows/deploy.yml)
[](https://github.com/wg-easy/wg-easy/actions/workflows/lint.yml)
[](https://github.com/wg-easy/wg-easy/stargazers)
[](LICENSE)
[](https://github.com/wg-easy/wg-easy/releases/latest)
[](https://github.com/wg-easy/wg-easy/pkgs/container/wg-easy)> [!WARNING]
> You are viewing the README of the pre-release of v15.
> If you want to setup wg-easy right now. Read the README in the production branch here: [README](https://github.com/wg-easy/wg-easy/tree/production) or here for the last nightly: [README](https://github.com/wg-easy/wg-easy/tree/c6dce0f6fb2e28e7e40ddac1498bd67e9bb17cba)You have found the easiest way to install & manage WireGuard on any Linux host!
![]()
## Features
- All-in-one: WireGuard + Web UI.
- Easy installation, simple to use.
- List, create, edit, delete, enable & disable clients.
- Show a client's QR code.
- Download a client's configuration file.
- Statistics for which clients are connected.
- Tx/Rx charts for each connected client.
- Gravatar support.
- Automatic Light / Dark Mode
- Multilanguage Support
- One Time Links
- Client Expiration
- Prometheus metrics support
- IPv6 support
- CIDR support
- 2FA support> [!NOTE]
> To better manage documentation for this project, it has its own site here: [https://wg-easy.github.io/wg-easy/latest](https://wg-easy.github.io/wg-easy/latest)> [!WARNING]
> As the Docs are still in Pre-release, you can access them here [https://wg-easy.github.io/wg-easy/Pre-release](https://wg-easy.github.io/wg-easy/Pre-release)- [Getting Started](https://wg-easy.github.io/wg-easy/latest/getting-started/)
- [Basic Installation](https://wg-easy.github.io/wg-easy/latest/examples/tutorials/basic-installation/)
- [Caddy](https://wg-easy.github.io/wg-easy/latest/examples/tutorials/caddy/)
- [Nginx](https://wg-easy.github.io/wg-easy/latest/examples/tutorials/nginx/)
- [Traefik](https://wg-easy.github.io/wg-easy/latest/examples/tutorials/traefik/)
- [Podman](https://wg-easy.github.io/wg-easy/latest/examples/tutorials/podman/)
- [AdGuard Home](https://wg-easy.github.io/wg-easy/latest/examples/tutorials/adguard/)> [!NOTE]
> If you want to migrate from the old version to the new version, you can find the migration guide here: [Migration Guide](https://wg-easy.github.io/wg-easy/latest/advanced/migrate/)## Requirements
- A host with a kernel that supports WireGuard (all modern kernels).
- A host with Docker installed.## Versions
> 💡 We follow semantic versioning (semver)
We offer multiple Docker image tags to suit your needs. The table below is in a particular order, with the first tag being the most recommended:
| tag | Branch | Example | Description |
| ------------- | ---------------------------------------------------------- | ------------------------------------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------ |
| `15` | latest minor for that major tag | `ghcr.io/wg-easy/wg-easy:15` | latest features for specific major versions, no breaking changes |
| `latest` | latest tag | `ghcr.io/wg-easy/wg-easy:latest` or `ghcr.io/wg-easy/wg-easy` | stable as possible get bug fixes quickly when needed, see Releases for more information. |
| `15.0` | latest patch for that minor tag | `ghcr.io/wg-easy/wg-easy:15.0` | latest patches for specific minor version |
| `15.0.0` | specific tag | `ghcr.io/wg-easy/wg-easy:15.0.0` | specific release, don't use this as this will not get updated |
| `nightly` | [`master`](https://github.com/wg-easy/wg-easy/tree/master) | `ghcr.io/wg-easy/wg-easy:nightly` | mostly unstable gets frequent package and code updates, deployed against [`master`](https://github.com/wg-easy/wg-easy/tree/master). |
| `development` | pull requests | `ghcr.io/wg-easy/wg-easy:development` | used for development, testing code from PRs before landing into [`master`](https://github.com/wg-easy/wg-easy/tree/master). |## Installation
### 1. Install Docker
If you haven't installed Docker yet, install it by running as root:
```shell
curl -sSL https://get.docker.com | sh
exit
```And log in again.
### 2. Run WireGuard Easy
The easiest way to run WireGuard Easy is with Docker Compose.
Just download [`docker-compose.yml`](docker-compose.yml), make necessary adjustments and
execute `sudo docker compose up -d`.Now setup a reverse proxy to be able to access the Web UI from the internet.
If you want to access the Web UI over HTTP, change the env var `INSECURE` to `true`. This is not recommended. Only use this for testing
### Donate
Are you enjoying this project? Consider donating.
Founder: [Buy Emile a beer!](https://github.com/sponsors/WeeJeWel) 🍻
Maintainer: [Buy kaaax0815 a coffee!](https://github.com/sponsors/kaaax0815) ☕
## Development
### Prerequisites
- Docker
- Node LTS & corepack enabled
- Visual Studio Code### Dev Server
This starts the development server with docker
```shell
pnpm dev
```### Update Auto Imports
If you add something that should be auto-importable and VSCode complains, run:
```shell
cd src
pnpm install
```## License
This project is licensed under the AGPL-3.0-only License - see the [LICENSE](LICENSE) file for details
This project is not affiliated, associated, authorized, endorsed by, or in any way officially connected with Jason A. Donenfeld, ZX2C4 or Edge Security
"WireGuard" and the "WireGuard" logo are registered trademarks of Jason A. Donenfeld