1
0
Fork 0
mirror of https://github.com/YunoHost-Apps/wireguard_ynh.git synced 2024-09-03 20:35:58 +02:00

Merge pull request #40 from YunoHost-Apps/enh

Enhancements
This commit is contained in:
tituspijean 2021-12-22 15:33:48 +01:00 committed by GitHub
commit bdae85a4d9
No known key found for this signature in database
GPG key ID: 4AEE18F83AFDEB23
5 changed files with 14 additions and 18 deletions

View file

@ -1,8 +1,9 @@
{
"addresses": [
"10.10.10.0/24"
"10.10.10.0/24",
"fd42::/112"
],
"listen_port": "__PORT_WG__",
"post_up": "",
"post_down": ""
"post_up": "iptables -A FORWARD -i %i -j ACCEPT; iptables -A FORWARD -o %i -j ACCEPT; iptables -t nat -A POSTROUTING -o __INTERFACE__ -j MASQUERADE; ip6tables -A FORWARD -i %i -j ACCEPT; ip6tables -A FORWARD -o %i -j ACCEPT; ip6tables -t nat -A POSTROUTING -o __INTERFACE__ -j MASQUERADE; ip link set multicast on dev %i",
"post_down": "iptables -D FORWARD -i %i -j ACCEPT; iptables -D FORWARD -o %i -j ACCEPT; iptables -t nat -D POSTROUTING -o __INTERFACE__ -j MASQUERADE; ip6tables -D FORWARD -i %i -j ACCEPT; ip6tables -D FORWARD -o %i -j ACCEPT; ip6tables -t nat -D POSTROUTING -o __INTERFACE__ -j MASQUERADE"
}

View file

@ -4,9 +4,9 @@
# Address updated at:
# Private Key updated at:
[Interface]
Address = 10.10.10.0/24
Address = 10.10.10.0/24,fd42::/112
ListenPort = __PORT_WG__
PrivateKey = __PRIVATE_KEY__
MTU = 1450
PostUp =
PostDown =
PostUp = iptables -A FORWARD -i %i -j ACCEPT; iptables -A FORWARD -o %i -j ACCEPT; iptables -t nat -A POSTROUTING -o __INTERFACE__ -j MASQUERADE; ip6tables -A FORWARD -i %i -j ACCEPT; ip6tables -A FORWARD -o %i -j ACCEPT; ip6tables -t nat -A POSTROUTING -o __INTERFACE__ -j MASQUERADE; ip link set multicast on dev %i
PostDown = iptables -D FORWARD -i %i -j ACCEPT; iptables -D FORWARD -o %i -j ACCEPT; iptables -t nat -D POSTROUTING -o __INTERFACE__ -j MASQUERADE; ip6tables -D FORWARD -i %i -j ACCEPT; ip6tables -D FORWARD -o %i -j ACCEPT; ip6tables -t nat -D POSTROUTING -o __INTERFACE__ -j MASQUERADE

View file

@ -15,6 +15,8 @@ fi
# dependencies used by the app
pkg_dependencies="$pkg_headers wireguard-dkms wireguard"
interface=$(ip route | awk '/default/ { print $5 }')
#=================================================
# PERSONAL HELPERS
#=================================================

View file

@ -50,6 +50,7 @@ ynh_script_progression --message="Storing installation settings..." --weight=1
ynh_app_setting_set --app=$app --key=domain --value=$domain
ynh_app_setting_set --app=$app --key=path --value=$path_url
ynh_app_setting_set --app=$app --key=admin --value=$admin
ynh_app_setting_set --app=$app --key=interface --value=$interface
#=================================================
# STANDARD MODIFICATIONS
@ -127,16 +128,15 @@ ynh_system_user_create --username=$app
mkdir -p $final_path/db/server
# Add interface configuration file for the Web UI
cp ../conf/interfaces.json $final_path/db/server/interfaces.json
ynh_replace_string --match_string="__PORT_WG__" --replace_string="$port_wg" --target_file="$final_path/db/server/interfaces.json"
ynh_add_config --template="../conf/interfaces.json" --destination="$final_path/db/server/interfaces.json"
ynh_delete_file_checksum --file="$final_path/db/server/interfaces.json"
# Create WireGuard configuration directory
mkdir -p /etc/wireguard
# Add interface configuration file for WireGuard
cp ../conf/wg0.conf /etc/wireguard/wg0.conf
ynh_replace_string --match_string="__PORT_WG__" --replace_string="$port_wg" --target_file="/etc/wireguard/wg0.conf"
ynh_replace_string --match_string="__PRIVATE_KEY__" --replace_string="$(wg genkey)" --target_file="/etc/wireguard/wg0.conf"
ynh_add_config --template="../conf/wg0.conf" --destination="/etc/wireguard/wg0.conf"
ynh_delete_file_checksum --file="/etc/wireguard/wg0.conf"
#=================================================
# SETUP SYSTEMD

View file

@ -190,13 +190,6 @@ systemctl enable --quiet wireguard@wg0.service
# CONFIGURING WIREGUARD
#=================================================
# Create db directory for securing it later
mkdir -p $final_path/db/server
# Add interface configuration file
cp ../conf/interfaces.json $final_path/db/server/interfaces.json
ynh_replace_string --match_string="__PORT_WG__" --replace_string="$port_wg" --target_file="$final_path/db/server/interfaces.json"
#=================================================
# GENERIC FINALIZATION
#=================================================