# WireGuard for YunoHost [![Integration level](https://dash.yunohost.org/integration/wireguard.svg)](https://dash.yunohost.org/appci/app/wireguard) ![](https://ci-apps.yunohost.org/ci/badges/wireguard.status.svg) ![](https://ci-apps.yunohost.org/ci/badges/wireguard.maintain.svg) [![Install WireGuard with YunoHost](https://install-app.yunohost.org/install-with-yunohost.svg)](https://install-app.yunohost.org/?app=wireguard) *[Lire ce readme en français.](./README_fr.md)* > *This package allows you to install WireGuard quickly and simply on a YunoHost server. If you don't have YunoHost, please consult [the guide](https://yunohost.org/#/install) to learn how to install it.* ## Overview Virtual Private Networks (VPN) via WireGuard, with a web UI to ease configuration **Shipped version:** 0.2.7~ynh4 ## Screenshots ![](./doc/screenshots/screenshot.png) ![](./doc/screenshots/screenshot.png:Zone.Identifier) ## Disclaimers / important information * WireGuard for YunoHost will add a DMKS module to your Linux kernel. * You may need to reboot your server for WireGuard to be able to start. * The package includes WireGuard and non-official web UI to configure it. * Avoid altering the configuration files via the command line interface, though. * Use YunoHost permissions panel to allow users to access the web UI. * Only one network interface, *wg0*, can be managed with this app at the moment. ### Make your server share its Internet connection #### Enable port forwarding ```bash sudo nano /etc/sysctl.conf # Uncomment the following lines: net.ipv4.ip_forward = 1 net.ipv6.conf.all.forwarding = 1 # Save and quit (CTRL+O, CTRL+X) sudo sysctl -p ``` Add the following commands in `WireGuard Server` menu. Replace `eth0` with the interface connected to the Internet: #### Post Up Script ``` iptables -A FORWARD -i %i -j ACCEPT; iptables -A FORWARD -o %i -j ACCEPT; iptables -t nat -A POSTROUTING -o eth0 -j MASQUERADE ``` #### Post Down Script ``` iptables -D FORWARD -i %i -j ACCEPT; iptables -D FORWARD -o %i -j ACCEPT; iptables -t nat -D POSTROUTING -o eth0 -j MASQUERADE ``` ## Documentation and resources * Official app website: https://www.wireguard.com/ * Upstream app code repository: https://github.com/ngoduykhanh/wireguard-ui * YunoHost documentation for this app: https://yunohost.org/app_wireguard * Report a bug: https://github.com/YunoHost-Apps/wireguard_ynh/issues ## Developer info Please send your pull request to the [testing branch](https://github.com/YunoHost-Apps/wireguard_ynh/tree/testing). To try the testing branch, please proceed like that. ``` sudo yunohost app install https://github.com/YunoHost-Apps/wireguard_ynh/tree/testing --debug or sudo yunohost app upgrade wireguard -u https://github.com/YunoHost-Apps/wireguard_ynh/tree/testing --debug ``` **More info regarding app packaging:** https://yunohost.org/packaging_apps