From 8919451430d6b807b56946ae338b719bed07e011 Mon Sep 17 00:00:00 2001
From: DerDanilo <DerDanilo@notsharingmymail>
Date: Tue, 15 Jun 2021 17:58:58 +0200
Subject: [PATCH] add WG_ALLOWED_IPS;
 https://github.com/WeeJeWel/wg-easy/issues/19

---
 README.md            | 1 +
 docker-compose.yml   | 1 +
 src/config.js        | 1 +
 src/lib/WireGuard.js | 3 ++-
 4 files changed, 5 insertions(+), 1 deletion(-)

diff --git a/README.md b/README.md
index 02c25170..b59ce335 100644
--- a/README.md
+++ b/README.md
@@ -73,5 +73,6 @@ These options can be configured in `docker-compose.yml` under `environment`.
 | `WG_PORT` | `51820` | `51820` | The public UDP port of your VPN server |
 | `WG_DEFAULT_ADDRESS` | `10.8.0.x` | `10.6.0.x` | Clients IP address range |
 | `WG_DEFAULT_DNS` | `1.1.1.1` | `8.8.8.8, 8.8.4.4` | DNS server clients will use |
+| `WG_ALLOWED_IPS` | `0.0.0.0/0, ::/0` | `192.168.15.0/24, 10.0.1.0/24` | Allowed IPs clients will use |
 
 > If you change `WG_PORT`, make sure to also change the exposed port.
diff --git a/docker-compose.yml b/docker-compose.yml
index 4a49fe0d..601ccf95 100644
--- a/docker-compose.yml
+++ b/docker-compose.yml
@@ -11,6 +11,7 @@ services:
       # - WG_PORT=51820
       # - WG_DEFAULT_ADDRESS=10.8.0.x
       # - WG_DEFAULT_DNS=1.1.1.1
+      # - WG_ALLOWED_IPS=192.168.15.0/24, 10.0.1.0/24
       
     image: weejewel/wg-easy
     container_name: wg-easy
diff --git a/src/config.js b/src/config.js
index 0a7bf430..cade67f9 100644
--- a/src/config.js
+++ b/src/config.js
@@ -7,3 +7,4 @@ module.exports.WG_HOST = process.env.WG_HOST;
 module.exports.WG_PORT = process.env.WG_PORT || 51820;
 module.exports.WG_DEFAULT_ADDRESS = process.env.WG_DEFAULT_ADDRESS || '10.8.0.x';
 module.exports.WG_DEFAULT_DNS = process.env.WG_DEFAULT_DNS || '1.1.1.1';
+module.exports.WG_ALLOWED_IPS = process.env.WG_ALLOWED_IPS || '0.0.0.0/0, ::/0';
diff --git a/src/lib/WireGuard.js b/src/lib/WireGuard.js
index 01ff330a..b6d4f9cf 100644
--- a/src/lib/WireGuard.js
+++ b/src/lib/WireGuard.js
@@ -16,6 +16,7 @@ const {
   WG_PORT,
   WG_DEFAULT_DNS,
   WG_DEFAULT_ADDRESS,
+  WG_ALLOWED_IPS,
 } = require('../config');
 
 module.exports = class WireGuard {
@@ -178,7 +179,7 @@ DNS = ${WG_DEFAULT_DNS}
 [Peer]
 PublicKey = ${config.server.publicKey}
 PresharedKey = ${client.preSharedKey}
-AllowedIPs = 0.0.0.0/0, ::/0
+AllowedIPs = ${WG_ALLOWED_IPS}
 Endpoint = ${WG_HOST}:${WG_PORT}`;
   }