From 0f0c73de0f98f39557e842a436efb78ef88674a6 Mon Sep 17 00:00:00 2001 From: Bill Zimmerman Date: Mon, 8 Mar 2021 09:08:59 +0100 Subject: [PATCH 01/50] Update BACKERS.md --- BACKERS.md | 2 ++ 1 file changed, 2 insertions(+) diff --git a/BACKERS.md b/BACKERS.md index 8ea2c184..fda9b737 100644 --- a/BACKERS.md +++ b/BACKERS.md @@ -21,6 +21,7 @@ When backers were asked which feature they'd most like to see added to RaspAP, t ✅ OpenVPN service logging ✅ Night mode toggle ✅ Restrict network to static clients +✅ WireGuard support ⚙️ Traffic shaping (in progress) Look for the list above to grow as we add more exclusive features. @@ -33,6 +34,7 @@ Below is a list of funding targets. When a funding target is reached, the featur ✅ OpenVPN service logging ✅ Night mode toggle ✅ Restrict network to static clients +✅ WireGuard support ⚙️ Traffic shaping (in progress) ### Frequently asked questions From c62d99aab9d29cf1b3b7951f8cc34a54a7d65ffd Mon Sep 17 00:00:00 2001 From: billz Date: Tue, 9 Mar 2021 11:38:40 +0000 Subject: [PATCH 02/50] Adds @zbchristian's token option, fix private repo handling --- installers/common.sh | 60 +++++++++++++++++++++++++++++++++++++++--- installers/raspbian.sh | 36 ++++++++++++++++--------- 2 files changed, 80 insertions(+), 16 deletions(-) diff --git a/installers/common.sh b/installers/common.sh index dba8a0b9..8b532be3 100755 --- a/installers/common.sh +++ b/installers/common.sh @@ -28,7 +28,12 @@ readonly raspap_network="$raspap_dir/networking/" readonly rulesv4="/etc/iptables/rules.v4" readonly notracking_url="https://raw.githubusercontent.com/notracking/hosts-blocklists/master/" webroot_dir="/var/www/html" -git_source_url="https://github.com/$repo" # $repo from install.raspap.com + +if [ "$insiders" == 1 ]; then + repo="RaspAP/raspap-insiders" + branch=${RASPAP_INSIDERS_LATEST} +fi +git_source_url="https://github.com/$repo" # NOTE: all the below functions are overloadable for system-specific installs function _install_raspap() { @@ -50,6 +55,7 @@ function _install_raspap() { _configure_networking _prompt_install_adblock _prompt_install_openvpn + _prompt_install_wireguard _patch_system_files _install_complete } @@ -77,7 +83,7 @@ function _config_installation() { fi echo "${opt[1]} lighttpd directory: ${webroot_dir}" if [ "$upgrade" == 1 ]; then - echo "This will upgrade your existing install to version ${RASPAP_LATEST}" + echo "This will upgrade your existing install to version ${RASPAP_RELEASE}" echo "Your configuration will NOT be changed" fi echo -n "Complete ${opt[2]} with these values? [Y/n]: " @@ -170,6 +176,8 @@ function _create_raspap_directories() { # Create a directory to store networking configs echo "Creating $raspap_dir/networking" sudo mkdir -p "$raspap_dir/networking" + echo "Changing file ownership of $raspap_dir" + sudo chown -R $raspap_user:$raspap_user "$raspap_dir" || _install_status 1 "Unable to change file ownership for '$raspap_dir'" } # Generate hostapd logging and service control scripts @@ -313,6 +321,49 @@ function _prompt_install_openvpn() { fi } +# Prompt to install WireGuard +function _prompt_install_wireguard() { + if [ "$insiders" == 1 ]; then + _install_log "Configure WireGuard support" + echo -n "Install WireGuard and enable VPN tunnel configuration? [Y/n]: " + if [ "$assume_yes" == 0 ]; then + read answer < /dev/tty + if [ "$answer" != "${answer#[Nn]}" ]; then + echo -e + else + _install_wireguard + fi + elif [ "$wg_option" == 1 ]; then + _install_wireguard + else + echo "(Skipped)" + fi + fi +} + +# Install Wireguard from the Debian unstable distro +function _install_wireguard() { + _install_log "Configure WireGuard support" + if [ "$OS" == "Raspbian" ]; then + echo "Installing raspberrypi-kernel-headers" + sudo apt-get install $apt_option raspberrypi-kernel-headers || _install_status 1 "Unable to install raspberrypi-kernel-headers" + fi + echo "Installing WireGuard from Debian unstable distro" + echo "Adding Debian distro" + echo "deb http://deb.debian.org/debian/ unstable main" | sudo tee --append /etc/apt/sources.list.d/unstable.list || _install_status 1 "Unable to append to sources.list" + sudo apt-get install dirmngr || _install_status 1 "Unable to install dirmngr" + echo "Adding Debian distro keys" + sudo wget -q -O - https://ftp-master.debian.org/keys/archive-key-$(lsb_release -sr).asc | sudo apt-key add - || _install_status 1 "Unable to add keys" + printf 'Package: *\nPin: release a=unstable\nPin-Priority: 150\n' | sudo tee --append /etc/apt/preferences.d/limit-unstable || _install_status 1 "Unable to append to preferences.d" + echo "Installing WireGuard" + sudo apt-get update && sudo apt-get install $apt_option wireguard || _install_status 1 "Unable to install wireguard" + echo "Enabling wg-quick@wg0" + sudo systemctl enable wg-quick@wg0 || _install_status 1 "Failed to enable wg-quick service" + echo "Enabling WireGuard management option" + sudo sed -i "s/\('RASPI_WIREGUARD_ENABLED', \)false/\1true/g" "$webroot_dir/includes/config.php" || _install_status 1 "Unable to modify config.php" + _install_status 0 +} + # Install openvpn and enable client configuration option function _install_openvpn() { _install_log "Installing OpenVPN and enabling client configuration" @@ -329,9 +380,10 @@ function _create_openvpn_scripts() { _install_log "Creating OpenVPN control scripts" sudo mkdir $raspap_dir/openvpn || _install_status 1 "Unable to create directory '$raspap_dir/openvpn'" - # Move service auth control shell scripts + # Move service auth control & logging shell scripts sudo cp "$webroot_dir/installers/"configauth.sh "$raspap_dir/openvpn" || _install_status 1 "Unable to move auth control script" - # Make configauth.sh writable by www-data group + sudo cp "$webroot_dir/installers/"openvpnlog.sh "$raspap_dir/openvpn" || _install_status 1 "Unable to move logging script" + # Make scripts executable by www-data group sudo chown -c root:"$raspap_user" "$raspap_dir/openvpn/"*.sh || _install_status 1 "Unable change owner and/or group" sudo chmod 750 "$raspap_dir/openvpn/"*.sh || _install_status 1 "Unable to change file permissions" _install_status 0 diff --git a/installers/raspbian.sh b/installers/raspbian.sh index 469fff7f..fed9b619 100755 --- a/installers/raspbian.sh +++ b/installers/raspbian.sh @@ -17,6 +17,7 @@ # -a, --adblock Used with -y, --yes, sets Adblock install option (0=no install) # -r, --repo, --repository Overrides the default GitHub repo (raspap/raspap-webgui) # -b, --branch Overrides the default git branch (master) +# -t, --token Token to access a private repository # -u, --upgrade Upgrades an existing installation to the latest release version # -i, --insiders Installs from the Insiders Edition (raspap/raspap-insiders) # -v, --version Outputs release info and exits @@ -36,8 +37,7 @@ set -eo pipefail function _main() { # set defaults - repo="raspap/raspap-webgui" # override with -r, --repo option - + repo="RaspAP/raspap-webgui" # override with -r, --repo option _parse_params "$@" _setup_colors _log_output @@ -50,6 +50,8 @@ function _parse_params() { upgrade=0 ovpn_option=1 adblock_option=1 + insiders=0 + acctoken="" while :; do case "${1-}" in @@ -83,7 +85,10 @@ function _parse_params() { upgrade=1 ;; -i|--insiders) - repo="raspap/raspap-insiders" + insiders=1 + ;; + -t|--token) + acctoken="$2" ;; -v|--version) _version @@ -129,6 +134,7 @@ OPTIONS: -a, --adblock Used with -y, --yes, sets Adblock install option (0=no install) -r, --repo, --repository Overrides the default GitHub repo (raspap/raspap-webgui) -b, --branch Overrides the default git branch (latest release) +-t, --token Token to access a private repository -u, --upgrade Upgrades an existing installation to the latest release version -i, --insiders Installs from the Insiders Edition (raspap/raspap-insiders) -v, --version Outputs release info and exits @@ -153,7 +159,7 @@ EOF function _version() { _get_release - echo -e "RaspAP v${RASPAP_LATEST} - Simple wireless AP setup & management for Debian-based devices" + echo -e "RaspAP v${RASPAP_RELEASE} - Simple wireless AP setup & management for Debian-based devices" exit } @@ -167,18 +173,19 @@ function _display_welcome() { echo -e " 88 88 88. .88 88 88. .88 88 88 88" echo -e " dP dP 88888P8 88888P 88Y888P 88 88 dP" echo -e " 88" - echo -e " dP version ${RASPAP_LATEST}" + echo -e " dP version ${RASPAP_RELEASE}" echo -e "${ANSI_GREEN}" echo -e "The Quick Installer will guide you through a few easy steps${ANSI_RESET}\n\n" } -# Fetch latest release from GitHub API +# Fetch latest release from GitHub or RaspAP Installer API function _get_release() { - if [ "$repo" == "raspap/raspap-insiders" ]; then - readonly RASPAP_LATEST="Insiders" - branch="master" + readonly RASPAP_LATEST=$(curl -s "https://api.github.com/repos/$repo/releases/latest" | grep -Po '"tag_name": "\K.*?(?=")' ) + if [ "$insiders" == 1 ]; then + RASPAP_INSIDERS_LATEST=$(curl -s "https://install.raspap.com/repos/RaspAP/raspap-insiders/releases/latest/" | grep -Po '"tag_name": "\K.*?(?=")' ) + RASPAP_RELEASE="${RASPAP_INSIDERS_LATEST} Insiders" else - readonly RASPAP_LATEST=$(curl -s "https://api.github.com/repos/$repo/releases/latest" | grep -Po '"tag_name": "\K.*?(?=")' ) + RASPAP_RELEASE="${RASPAP_LATEST}" fi } @@ -214,6 +221,7 @@ function _update_system_packages() { # Fetch required installer functions function _load_installer() { + # fetch latest release tag _get_release @@ -223,14 +231,18 @@ function _load_installer() { fi UPDATE_URL="https://raw.githubusercontent.com/$repo/$branch/" + header=() + if [[ ! -z "$acctoken" ]]; then + header=(--header "Authorization: token $acctoken") + fi if [ "${install_cert:-}" = 1 ]; then source="mkcert" - wget -q ${UPDATE_URL}installers/${source}.sh -O /tmp/raspap_${source}.sh + wget "${header[@]}" -q ${UPDATE_URL}installers/${source}.sh -O /tmp/raspap_${source}.sh source /tmp/raspap_${source}.sh && rm -f /tmp/raspap_${source}.sh _install_certificate || _install_status 1 "Unable to install certificate" else source="common" - wget -q ${UPDATE_URL}installers/${source}.sh -O /tmp/raspap_${source}.sh + wget "${header[@]}" -q ${UPDATE_URL}installers/${source}.sh -O /tmp/raspap_${source}.sh source /tmp/raspap_${source}.sh && rm -f /tmp/raspap_${source}.sh _install_raspap || _install_status 1 "Unable to install RaspAP" fi From 45965c4ae0d5954eeca0a6dee6c1ee7fe27a9404 Mon Sep 17 00:00:00 2001 From: billz Date: Tue, 9 Mar 2021 11:43:22 +0000 Subject: [PATCH 03/50] Add openvpnlog.sh --- installers/openvpnlog.sh | 3 +++ 1 file changed, 3 insertions(+) create mode 100755 installers/openvpnlog.sh diff --git a/installers/openvpnlog.sh b/installers/openvpnlog.sh new file mode 100755 index 00000000..96e79e2d --- /dev/null +++ b/installers/openvpnlog.sh @@ -0,0 +1,3 @@ +#!/bin/bash +touch /tmp/openvpn.log +grep -m 100 openvpn /var/log/syslog | sudo tee /tmp/openvpn.log From 13997d57a98122a8abcc83400b6c8d4fb4b276f1 Mon Sep 17 00:00:00 2001 From: billz Date: Tue, 9 Mar 2021 12:12:11 +0000 Subject: [PATCH 04/50] Minor: cleanup + comments --- installers/raspbian.sh | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/installers/raspbian.sh b/installers/raspbian.sh index fed9b619..ab1dabf9 100755 --- a/installers/raspbian.sh +++ b/installers/raspbian.sh @@ -221,7 +221,6 @@ function _update_system_packages() { # Fetch required installer functions function _load_installer() { - # fetch latest release tag _get_release @@ -230,11 +229,13 @@ function _load_installer() { branch=$RASPAP_LATEST fi - UPDATE_URL="https://raw.githubusercontent.com/$repo/$branch/" + # add optional auth token header if defined with -t, --token option header=() if [[ ! -z "$acctoken" ]]; then header=(--header "Authorization: token $acctoken") fi + + UPDATE_URL="https://raw.githubusercontent.com/$repo/$branch/" if [ "${install_cert:-}" = 1 ]; then source="mkcert" wget "${header[@]}" -q ${UPDATE_URL}installers/${source}.sh -O /tmp/raspap_${source}.sh From 113ffa2d800163c16fd1106342d1af21651d82a1 Mon Sep 17 00:00:00 2001 From: billz Date: Tue, 9 Mar 2021 12:21:34 +0000 Subject: [PATCH 05/50] Minor: comments + whitespace --- installers/raspbian.sh | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/installers/raspbian.sh b/installers/raspbian.sh index ab1dabf9..f0e2eb4a 100755 --- a/installers/raspbian.sh +++ b/installers/raspbian.sh @@ -17,7 +17,7 @@ # -a, --adblock Used with -y, --yes, sets Adblock install option (0=no install) # -r, --repo, --repository Overrides the default GitHub repo (raspap/raspap-webgui) # -b, --branch Overrides the default git branch (master) -# -t, --token Token to access a private repository +# -t, --token Specify a GitHub token to access a private repository # -u, --upgrade Upgrades an existing installation to the latest release version # -i, --insiders Installs from the Insiders Edition (raspap/raspap-insiders) # -v, --version Outputs release info and exits @@ -134,7 +134,7 @@ OPTIONS: -a, --adblock Used with -y, --yes, sets Adblock install option (0=no install) -r, --repo, --repository Overrides the default GitHub repo (raspap/raspap-webgui) -b, --branch Overrides the default git branch (latest release) --t, --token Token to access a private repository +-t, --token Specify a GitHub token to access a private repository -u, --upgrade Upgrades an existing installation to the latest release version -i, --insiders Installs from the Insiders Edition (raspap/raspap-insiders) -v, --version Outputs release info and exits @@ -243,7 +243,7 @@ function _load_installer() { _install_certificate || _install_status 1 "Unable to install certificate" else source="common" - wget "${header[@]}" -q ${UPDATE_URL}installers/${source}.sh -O /tmp/raspap_${source}.sh + wget "${header[@]}" -q ${UPDATE_URL}installers/${source}.sh -O /tmp/raspap_${source}.sh source /tmp/raspap_${source}.sh && rm -f /tmp/raspap_${source}.sh _install_raspap || _install_status 1 "Unable to install RaspAP" fi From dd46f6d4832d1c161fcdda50633fbd6216bc35bb Mon Sep 17 00:00:00 2001 From: billz Date: Tue, 9 Mar 2021 13:26:30 +0000 Subject: [PATCH 06/50] Update release version --- README.md | 2 +- includes/defaults.php | 2 +- index.php | 2 +- 3 files changed, 3 insertions(+), 3 deletions(-) diff --git a/README.md b/README.md index 4ceebd7a..7386f445 100644 --- a/README.md +++ b/README.md @@ -1,5 +1,5 @@ ![](https://i.imgur.com/xeKD93p.png) -[![Release 2.6.2](https://img.shields.io/badge/release-v2.6.2-green)](https://github.com/raspap/raspap-webgui/releases) [![Awesome](https://awesome.re/badge.svg)](https://github.com/thibmaek/awesome-raspberry-pi) [![Financial Contributors on Open Collective](https://opencollective.com/raspap/all/badge.svg?label=financial+contributors)](https://opencollective.com/raspap) ![https://travis-ci.com/github/raspap/raspap-webgui/](https://api.travis-ci.org/RaspAP/raspap-webgui.svg) [![Crowdin](https://badges.crowdin.net/raspap/localized.svg)](https://crowdin.com/project/raspap) [![Twitter URL](https://img.shields.io/twitter/url?label=%40RaspAP&logoColor=%23d8224c&url=https%3A%2F%2Ftwitter.com%2Frasp_ap)](https://twitter.com/rasp_ap) [![Subreddit subscribers](https://img.shields.io/reddit/subreddit-subscribers/RaspAP?style=social)](https://www.reddit.com/r/RaspAP/) +[![Release 2.6.3](https://img.shields.io/badge/release-v2.6.3-green)](https://github.com/raspap/raspap-webgui/releases) [![Awesome](https://awesome.re/badge.svg)](https://github.com/thibmaek/awesome-raspberry-pi) [![Financial Contributors on Open Collective](https://opencollective.com/raspap/all/badge.svg?label=financial+contributors)](https://opencollective.com/raspap) ![https://travis-ci.com/github/raspap/raspap-webgui/](https://api.travis-ci.org/RaspAP/raspap-webgui.svg) [![Crowdin](https://badges.crowdin.net/raspap/localized.svg)](https://crowdin.com/project/raspap) [![Twitter URL](https://img.shields.io/twitter/url?label=%40RaspAP&logoColor=%23d8224c&url=https%3A%2F%2Ftwitter.com%2Frasp_ap)](https://twitter.com/rasp_ap) [![Subreddit subscribers](https://img.shields.io/reddit/subreddit-subscribers/RaspAP?style=social)](https://www.reddit.com/r/RaspAP/) RaspAP lets you quickly get a wireless access point up and running to share the connectivity of many popular [Debian-based devices](#supported-operating-systems), including the Raspberry Pi. Our popular [Quick installer](#quick-installer) creates a known-good default configuration that "just works" on all current Raspberry Pis with onboard wireless. A responsive interface gives you control over the relevant services and networking options. Advanced DHCP settings, OpenVPN client support, SSL, security audits, themes and multilingual options are included. diff --git a/includes/defaults.php b/includes/defaults.php index dfdb7ccb..81803f14 100755 --- a/includes/defaults.php +++ b/includes/defaults.php @@ -6,7 +6,7 @@ if (!defined('RASPI_CONFIG')) { $defaults = [ 'RASPI_BRAND_TEXT' => 'RaspAP', - 'RASPI_VERSION' => '2.6.2', + 'RASPI_VERSION' => '2.6.3', 'RASPI_CONFIG_NETWORK' => RASPI_CONFIG.'/networking/defaults.json', 'RASPI_ADMIN_DETAILS' => RASPI_CONFIG.'/raspap.auth', 'RASPI_WIFI_AP_INTERFACE' => 'wlan0', diff --git a/index.php b/index.php index b69f89b9..3b7a78dd 100755 --- a/index.php +++ b/index.php @@ -14,7 +14,7 @@ * @author Lawrence Yau * @author Bill Zimmerman * @license GNU General Public License, version 3 (GPL-3.0) - * @version 2.6.2 + * @version 2.6.3 * @link https://github.com/raspap/raspap-webgui/ * @link https://raspap.com/ * @see http://sirlagz.net/2013/02/08/raspap-webgui/ From 860a5d21d8c77aae358c0382fc045926dd9d038a Mon Sep 17 00:00:00 2001 From: Bill Zimmerman Date: Tue, 9 Mar 2021 23:27:24 +0100 Subject: [PATCH 07/50] Update README.md --- README.md | 17 +++++++++++++---- 1 file changed, 13 insertions(+), 4 deletions(-) diff --git a/README.md b/README.md index 7386f445..8ae3d81d 100644 --- a/README.md +++ b/README.md @@ -16,6 +16,7 @@ We hope you enjoy using RaspAP as much as we do creating it. Tell us how you use - [Prerequisites](#prerequisites) - [Quick installer](#quick-installer) + - [WireGuard support](#wireguard-support) - [Ad Blocking](#ad-blocking) - [Bridged AP](#bridged-ap) - [Simultaneous AP and Wifi client](#simultaneous-ap-and-wifi-client) @@ -65,6 +66,16 @@ configured as an access point as follows: Please [read this](https://docs.raspap.com/issues/) before reporting an issue. +## WireGuard support + +![](https://i.imgur.com/5YDv37e.png) + +WireGuard® is an extremely simple yet fast and modern VPN that utilizes state-of-the-art cryptography. It aims to be considerably more performant than OpenVPN, and is generally regarded as the most secure, easiest to use, and simplest VPN solution for modern Linux distributions. + +WireGuard may be optionally installed by the [Quick Installer](https://docs.raspap.com/quick/). Once this is done, you can manage local (server) settings, create a peer configuration and control the `wg-quick` service with RaspAP. + +Details are [provided here](https://docs.raspap.com/wireguard/). + ## Ad Blocking This feature uses DNS blacklisting to block requests for ads, trackers and other undesirable hosts. To enable ad blocking, simply respond to the prompt during the installation. As a beta release, we encourage testing and feedback from users of RaspAP. @@ -73,8 +84,6 @@ Details are [provided here](https://docs.raspap.com/adblock/). ## Bridged AP By default RaspAP configures a routed AP for your clients to connect to. A bridged AP configuration is also possible. Slide the **Bridged AP mode** toggle under the **Advanced** tab of **Configure hotspot**, then save and restart the hotspot. -![](https://i.imgur.com/J5VKSay.png) - **Note:** In bridged mode, all routing capabilities are handled by your upstream router. Because your router assigns IP addresses to your device's hotspot and its clients, you might not be able to reach the RaspAP web interface from the default `10.3.141.1` address. Instead use your RPi's hostname followed by `.local` to access the RaspAP web interface. With Raspbian default settings, this should look like `raspberrypi.local`. Alternate methods are [discussed here](https://www.raspberrypi.org/documentation/remote-access/ip-address.md). More information on Bridged AP mode is provided [in our documentation](https://docs.raspap.com/bridged/). @@ -85,7 +94,7 @@ RaspAP lets you create an AP with a Wifi client configuration, often called [AP- **Note:** This option is disabled until you configure your system as a wireless client. For a device operating in [managed mode](https://docs.raspap.com/faq/#headless) without an `eth0` connection, this configuration must be enabled [_before_ a reboot](https://docs.raspap.com/ap-sta/). ## Support us -RaspAP is free software, but powered by your support. If you find RaspAP useful for your personal or commercial projects, [become a GitHub sponsor](https://github.com/sponsors/RaspAP/) and get access to exclusive features in the [Insiders Edition](https://github.com/sponsors/RaspAP/). +RaspAP is free software, but powered by _your_ support. If you find RaspAP useful for your personal or commercial projects, [become an Insider](https://github.com/sponsors/RaspAP/) and get early access to exclusive features in the [Insiders Edition](https://docs.raspap.com/insiders/). ## Manual installation Detailed manual setup instructions are provided [on our documentation site](https://docs.raspap.com/manual/). @@ -155,7 +164,7 @@ Development of RaspAP is made possible thanks to a sponsorware release model. Th [![](https://i.imgur.com/azMTmuP.png)](https://github.com/sponsors/RaspAP/) -Learn more about [how sponsorship works](https://github.com/sponsors/RaspAP), and how easy it is to get access to Insiders. +Learn more about [how sponsorship works](https://docs.raspap.com/insiders/#how-sponsorship-works), and how easy it is to get access to Insiders. ## License See the [LICENSE](./LICENSE) file. From f905434b0b6494c41dbd2e46cebe3f2699554b64 Mon Sep 17 00:00:00 2001 From: billz Date: Wed, 10 Mar 2021 06:27:29 +0000 Subject: [PATCH 08/50] Minor: comments + get_release() --- installers/common.sh | 5 +++-- installers/raspbian.sh | 20 ++++++++++---------- 2 files changed, 13 insertions(+), 12 deletions(-) diff --git a/installers/common.sh b/installers/common.sh index 8b532be3..986822d3 100755 --- a/installers/common.sh +++ b/installers/common.sh @@ -640,9 +640,10 @@ function _optimize_php() { function _install_complete() { _install_log "Installation completed" - echo "Join RaspAP Insiders for access to exclusive features:" + echo "Join RaspAP Insiders for early access to exclusive features!" echo -e "${ANSI_RASPBERRY}" - echo "> https://github.com/sponsors/RaspAP" + echo "> https://docs.raspap.com/insiders/" + echo "> https://github.com/sponsors/RaspAP/" echo -e "${ANSI_RESET}" if [ "$assume_yes" == 0 ]; then # Prompt to reboot if wired ethernet (eth0) is connected. diff --git a/installers/raspbian.sh b/installers/raspbian.sh index f0e2eb4a..031f6d56 100755 --- a/installers/raspbian.sh +++ b/installers/raspbian.sh @@ -15,11 +15,11 @@ # -c, --cert, --certficate Installs mkcert and generates an SSL certificate for lighttpd # -o, --openvpn Used with -y, --yes, sets OpenVPN install option (0=no install) # -a, --adblock Used with -y, --yes, sets Adblock install option (0=no install) -# -r, --repo, --repository Overrides the default GitHub repo (raspap/raspap-webgui) +# -r, --repo, --repository Overrides the default GitHub repo (RaspAP/raspap-webgui) # -b, --branch Overrides the default git branch (master) # -t, --token Specify a GitHub token to access a private repository # -u, --upgrade Upgrades an existing installation to the latest release version -# -i, --insiders Installs from the Insiders Edition (raspap/raspap-insiders) +# -i, --insiders Installs from the Insiders Edition (RaspAP/raspap-insiders) # -v, --version Outputs release info and exits # -h, --help Outputs usage notes and exits # @@ -45,7 +45,7 @@ function _main() { } function _parse_params() { - # default flag values + # default option values assume_yes=0 upgrade=0 ovpn_option=1 @@ -132,11 +132,11 @@ OPTIONS: -c, --cert, --certificate Installs an SSL certificate for lighttpd -o, --openvpn Used with -y, --yes, sets OpenVPN install option (0=no install) -a, --adblock Used with -y, --yes, sets Adblock install option (0=no install) --r, --repo, --repository Overrides the default GitHub repo (raspap/raspap-webgui) +-r, --repo, --repository Overrides the default GitHub repo (RaspAP/raspap-webgui) -b, --branch Overrides the default git branch (latest release) -t, --token Specify a GitHub token to access a private repository -u, --upgrade Upgrades an existing installation to the latest release version --i, --insiders Installs from the Insiders Edition (raspap/raspap-insiders) +-i, --insiders Installs from the Insiders Edition (RaspAP/raspap-insiders) -v, --version Outputs release info and exits -h, --help Outputs usage notes and exits @@ -173,19 +173,19 @@ function _display_welcome() { echo -e " 88 88 88. .88 88 88. .88 88 88 88" echo -e " dP dP 88888P8 88888P 88Y888P 88 88 dP" echo -e " 88" - echo -e " dP version ${RASPAP_RELEASE}" + echo -e " dP version ${RASPAP_RELEASE}" echo -e "${ANSI_GREEN}" echo -e "The Quick Installer will guide you through a few easy steps${ANSI_RESET}\n\n" } # Fetch latest release from GitHub or RaspAP Installer API function _get_release() { - readonly RASPAP_LATEST=$(curl -s "https://api.github.com/repos/$repo/releases/latest" | grep -Po '"tag_name": "\K.*?(?=")' ) if [ "$insiders" == 1 ]; then - RASPAP_INSIDERS_LATEST=$(curl -s "https://install.raspap.com/repos/RaspAP/raspap-insiders/releases/latest/" | grep -Po '"tag_name": "\K.*?(?=")' ) - RASPAP_RELEASE="${RASPAP_INSIDERS_LATEST} Insiders" + readonly RASPAP_INSIDERS_LATEST=$(curl -s "https://install.raspap.com/repos/RaspAP/raspap-insiders/releases/latest/" | grep -Po '"tag_name": "\K.*?(?=")' ) + readonly RASPAP_RELEASE="${RASPAP_INSIDERS_LATEST} Insiders" else - RASPAP_RELEASE="${RASPAP_LATEST}" + readonly RASPAP_LATEST=$(curl -s "https://api.github.com/repos/$repo/releases/latest" | grep -Po '"tag_name": "\K.*?(?=")' ) + readonly RASPAP_RELEASE="${RASPAP_LATEST}" fi } From 4777da48e6f19e4e60fa21dd01345422b302004d Mon Sep 17 00:00:00 2001 From: billz Date: Wed, 10 Mar 2021 06:29:11 +0000 Subject: [PATCH 09/50] Update get_release() --- installers/raspbian.sh | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/installers/raspbian.sh b/installers/raspbian.sh index 031f6d56..e61be385 100755 --- a/installers/raspbian.sh +++ b/installers/raspbian.sh @@ -181,11 +181,11 @@ function _display_welcome() { # Fetch latest release from GitHub or RaspAP Installer API function _get_release() { if [ "$insiders" == 1 ]; then - readonly RASPAP_INSIDERS_LATEST=$(curl -s "https://install.raspap.com/repos/RaspAP/raspap-insiders/releases/latest/" | grep -Po '"tag_name": "\K.*?(?=")' ) - readonly RASPAP_RELEASE="${RASPAP_INSIDERS_LATEST} Insiders" + RASPAP_INSIDERS_LATEST=$(curl -s "https://install.raspap.com/repos/RaspAP/raspap-insiders/releases/latest/" | grep -Po '"tag_name": "\K.*?(?=")' ) + RASPAP_RELEASE="${RASPAP_INSIDERS_LATEST} Insiders" else - readonly RASPAP_LATEST=$(curl -s "https://api.github.com/repos/$repo/releases/latest" | grep -Po '"tag_name": "\K.*?(?=")' ) - readonly RASPAP_RELEASE="${RASPAP_LATEST}" + RASPAP_LATEST=$(curl -s "https://api.github.com/repos/$repo/releases/latest" | grep -Po '"tag_name": "\K.*?(?=")' ) + RASPAP_RELEASE="${RASPAP_LATEST}" fi } From b6e308351fa0e19e869dd540e6823f83ed38d22a Mon Sep 17 00:00:00 2001 From: billz Date: Wed, 10 Mar 2021 06:37:12 +0000 Subject: [PATCH 10/50] Update get_release() --- installers/raspbian.sh | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/installers/raspbian.sh b/installers/raspbian.sh index e61be385..63a43a11 100755 --- a/installers/raspbian.sh +++ b/installers/raspbian.sh @@ -180,11 +180,11 @@ function _display_welcome() { # Fetch latest release from GitHub or RaspAP Installer API function _get_release() { + RASPAP_LATEST=$(curl -s "https://api.github.com/repos/$repo/releases/latest" | grep -Po '"tag_name": "\K.*?(?=")' ) if [ "$insiders" == 1 ]; then RASPAP_INSIDERS_LATEST=$(curl -s "https://install.raspap.com/repos/RaspAP/raspap-insiders/releases/latest/" | grep -Po '"tag_name": "\K.*?(?=")' ) RASPAP_RELEASE="${RASPAP_INSIDERS_LATEST} Insiders" else - RASPAP_LATEST=$(curl -s "https://api.github.com/repos/$repo/releases/latest" | grep -Po '"tag_name": "\K.*?(?=")' ) RASPAP_RELEASE="${RASPAP_LATEST}" fi } From 18bcc3032a683d0a34c6257412fc212c261872aa Mon Sep 17 00:00:00 2001 From: Bill Zimmerman Date: Thu, 11 Mar 2021 11:32:48 +0100 Subject: [PATCH 11/50] Update README.md --- README.md | 17 +++++++++-------- 1 file changed, 9 insertions(+), 8 deletions(-) diff --git a/README.md b/README.md index 8ae3d81d..b912008c 100644 --- a/README.md +++ b/README.md @@ -17,6 +17,7 @@ We hope you enjoy using RaspAP as much as we do creating it. Tell us how you use - [Prerequisites](#prerequisites) - [Quick installer](#quick-installer) - [WireGuard support](#wireguard-support) + - [OpenVPN support](#openvpn-support) - [Ad Blocking](#ad-blocking) - [Bridged AP](#bridged-ap) - [Simultaneous AP and Wifi client](#simultaneous-ap-and-wifi-client) @@ -26,7 +27,6 @@ We hope you enjoy using RaspAP as much as we do creating it. Tell us how you use - [Supported operating systems](#supported-operating-systems) - [Multilingual support](#multilingual-support) - [HTTPS support](#https-support) - - [OpenVPN support](#openvpn-support) - [How to contribute](#how-to-contribute) - [Reporting issues](#reporting-issues) - [License](#license) @@ -76,6 +76,14 @@ WireGuard may be optionally installed by the [Quick Installer](https://docs.rasp Details are [provided here](https://docs.raspap.com/wireguard/). +## OpenVPN support +OpenVPN may be optionally installed by the Quick Installer. Once this is done, you can [manage client configurations](https://docs.raspap.com/openvpn/) and the `openvpn-client` service with RaspAP. + +To configure an OpenVPN client, upload a valid .ovpn file and, optionally, specify your login credentials. RaspAP will store your client configuration and add firewall rules to forward traffic from OpenVPN's `tun0` interface to your configured wireless interface. + +See our [OpenVPN documentation](https://docs.raspap.com/openvpn/) for more information. + + ## Ad Blocking This feature uses DNS blacklisting to block requests for ads, trackers and other undesirable hosts. To enable ad blocking, simply respond to the prompt during the installation. As a beta release, we encourage testing and feedback from users of RaspAP. @@ -134,13 +142,6 @@ curl -sL https://install.raspap.com | bash -s -- --cert More information on SSL certificates and HTTPS support is available [in our documentation](https://docs.raspap.com/ssl-quick/). -## OpenVPN support -OpenVPN may be optionally installed by the Quick Installer. Once this is done, you can manage client configuration and the `openvpn-client` service with RaspAP. - -To configure an OpenVPN client, upload a valid .ovpn file and, optionally, specify your login credentials. RaspAP will store your client configuration and add firewall rules to forward traffic from OpenVPN's `tun0` interface to your configured wireless interface. - -**Note**: this feature is currently in beta. Please [read this](https://docs.raspap.com/faq/#openvpn-fails) before reporting an issue. - ## How to contribute 1. Fork the project in your account and create a new branch: `your-great-feature`. 2. Open an issue in the repository describing the feature contribution you'd like to make. From 3e5ac1e2672cc8f78637abf69377b0b26ce68875 Mon Sep 17 00:00:00 2001 From: Bill Zimmerman Date: Thu, 11 Mar 2021 13:00:59 +0100 Subject: [PATCH 12/50] Update README.md --- README.md | 3 +++ 1 file changed, 3 insertions(+) diff --git a/README.md b/README.md index b912008c..f08be583 100644 --- a/README.md +++ b/README.md @@ -77,6 +77,9 @@ WireGuard may be optionally installed by the [Quick Installer](https://docs.rasp Details are [provided here](https://docs.raspap.com/wireguard/). ## OpenVPN support + +![](https://i.imgur.com/ta7tCon.png) + OpenVPN may be optionally installed by the Quick Installer. Once this is done, you can [manage client configurations](https://docs.raspap.com/openvpn/) and the `openvpn-client` service with RaspAP. To configure an OpenVPN client, upload a valid .ovpn file and, optionally, specify your login credentials. RaspAP will store your client configuration and add firewall rules to forward traffic from OpenVPN's `tun0` interface to your configured wireless interface. From 3a3f577a996cf32021556bc1e203274878de93a8 Mon Sep 17 00:00:00 2001 From: billz Date: Sun, 14 Mar 2021 17:03:11 +0000 Subject: [PATCH 13/50] Fix for -t,--token option --- installers/raspbian.sh | 1 + 1 file changed, 1 insertion(+) diff --git a/installers/raspbian.sh b/installers/raspbian.sh index 63a43a11..e76adbe0 100755 --- a/installers/raspbian.sh +++ b/installers/raspbian.sh @@ -89,6 +89,7 @@ function _parse_params() { ;; -t|--token) acctoken="$2" + shift ;; -v|--version) _version From af1fab30ed367cfa6eefd20f88226bb88f8f7524 Mon Sep 17 00:00:00 2001 From: Bill Zimmerman Date: Mon, 15 Mar 2021 16:48:51 +0100 Subject: [PATCH 14/50] Update issue templates --- .github/ISSUE_TEMPLATE/bug_report.md | 66 +++++++++++++++------------- 1 file changed, 36 insertions(+), 30 deletions(-) diff --git a/.github/ISSUE_TEMPLATE/bug_report.md b/.github/ISSUE_TEMPLATE/bug_report.md index a2fbbfc2..b76d8f30 100644 --- a/.github/ISSUE_TEMPLATE/bug_report.md +++ b/.github/ISSUE_TEMPLATE/bug_report.md @@ -7,43 +7,49 @@ assignees: '' --- -**Before submitting an issue** + + + -**Your environment** -* Raspberry Pi hardware (examples: Pi 3 Model B+, Pi Zero W) -* Raspbian version (examples: RPi OS Lite, Armbian) -* RaspAP version (reported by the Quick Installer) -* Followed the project prerequisites? (Y/N) -* Checked the project FAQ? (Y/N) -* RaspAP Quick Install or Manual setup? -* Using default configuration? (Y/N) -* Simultaneous AP and managed mode? (Y/N) -* Onboard wireless chipset or external adapter? -* Other software or services running with RaspAP? +## Checklist + +- [ ] This is a bug report +- [ ] I have searched this repository for existing issues and pull requests +- [ ] I checked the FAQ and official documentation before creating this issue +- [ ] I have read and understand the issue reporting guidelines -**Steps to reproduce** -Tell us how to reproduce this issue. Provide as much detailed information as possible. +## Bug description + -**Expected behavior** -A clear and concise description of what you expected to happen. +## Your environment +1. Operating System: **ENTER HERE** +2. Hardware and version: +3. RaspAP version (reported by the Quick Installer or About page): +4. Followed the project prerequisites? +5. RaspAP Quick Install or Manual setup? +6. Using default configuration? +7. Simultaneous AP and managed mode? +8. Onboard wireless chipset or external adapter? +9. Other software or services running with RaspAP? -**Actual behavior** -Tell us what you observed instead. +## Steps to Reproduce + -**Screenshots** -If applicable, add screenshots to help explain your problem. +## Screenshots + -**Additional context** -Add any other context about the problem here. +## Additional context + From 04376dd3a1483c3ca7a728089296045e3b03b647 Mon Sep 17 00:00:00 2001 From: Bill Zimmerman Date: Mon, 15 Mar 2021 16:52:30 +0100 Subject: [PATCH 15/50] Update bug_report.md --- .github/ISSUE_TEMPLATE/bug_report.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/.github/ISSUE_TEMPLATE/bug_report.md b/.github/ISSUE_TEMPLATE/bug_report.md index b76d8f30..9379209c 100644 --- a/.github/ISSUE_TEMPLATE/bug_report.md +++ b/.github/ISSUE_TEMPLATE/bug_report.md @@ -20,14 +20,14 @@ https://docs.raspap.com/faq/ Do you have a question or want to suggest a new feature? Start a Discussion here: https://github.com/RaspAP/raspap-docker/discussions -Be sure that there are no issues similar to yours already open. You can check this by searching the issues this repository. If there is a duplicate issue, please close this one and add a comment to the existing issue instead. +Be sure there are no issues similar to yours that are already open. You can check this by searching the issues in this repository. If there is a duplicate issue, please close this one and add a comment to the existing issue instead. --> ## Checklist - [ ] This is a bug report -- [ ] I have searched this repository for existing issues and pull requests +- [ ] I have searched this repository for existing issues - [ ] I checked the FAQ and official documentation before creating this issue - [ ] I have read and understand the issue reporting guidelines From b467e5b324b58d6ac8ce1ea7e8861d9c085e930b Mon Sep 17 00:00:00 2001 From: Bill Zimmerman Date: Mon, 15 Mar 2021 16:55:14 +0100 Subject: [PATCH 16/50] Update bug_report.md --- .github/ISSUE_TEMPLATE/bug_report.md | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/.github/ISSUE_TEMPLATE/bug_report.md b/.github/ISSUE_TEMPLATE/bug_report.md index 9379209c..6c8e00f2 100644 --- a/.github/ISSUE_TEMPLATE/bug_report.md +++ b/.github/ISSUE_TEMPLATE/bug_report.md @@ -18,7 +18,7 @@ Refer to the frequently asked questions (FAQ) and official documentation here: https://docs.raspap.com/faq/ Do you have a question or want to suggest a new feature? Start a Discussion here: -https://github.com/RaspAP/raspap-docker/discussions +https://github.com/RaspAP/raspap-webgui/discussions Be sure there are no issues similar to yours that are already open. You can check this by searching the issues in this repository. If there is a duplicate issue, please close this one and add a comment to the existing issue instead. --> @@ -37,7 +37,7 @@ Be sure there are no issues similar to yours that are already open. You can chec ## Your environment 1. Operating System: **ENTER HERE** 2. Hardware and version: -3. RaspAP version (reported by the Quick Installer or About page): +3. RaspAP version: 4. Followed the project prerequisites? 5. RaspAP Quick Install or Manual setup? 6. Using default configuration? @@ -45,7 +45,7 @@ Be sure there are no issues similar to yours that are already open. You can chec 8. Onboard wireless chipset or external adapter? 9. Other software or services running with RaspAP? -## Steps to Reproduce +## Steps to reproduce ## Screenshots From 728a875eed3c55e815a60e3a2ece6c56fe588db9 Mon Sep 17 00:00:00 2001 From: Bill Zimmerman Date: Thu, 18 Mar 2021 14:50:34 +0100 Subject: [PATCH 17/50] Delete CNAME --- CNAME | 1 - 1 file changed, 1 deletion(-) delete mode 100644 CNAME diff --git a/CNAME b/CNAME deleted file mode 100644 index 0949dd03..00000000 --- a/CNAME +++ /dev/null @@ -1 +0,0 @@ -raspap.com \ No newline at end of file From bac9eaaeae3940aa6eae42d9208caf4125fc2347 Mon Sep 17 00:00:00 2001 From: Bill Zimmerman Date: Sat, 20 Mar 2021 10:31:05 +0100 Subject: [PATCH 18/50] Update README.md --- README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/README.md b/README.md index f08be583..89004fb8 100644 --- a/README.md +++ b/README.md @@ -1,4 +1,4 @@ -![](https://i.imgur.com/xeKD93p.png) +![](https://i.imgur.com/uhBFoOB.png) [![Release 2.6.3](https://img.shields.io/badge/release-v2.6.3-green)](https://github.com/raspap/raspap-webgui/releases) [![Awesome](https://awesome.re/badge.svg)](https://github.com/thibmaek/awesome-raspberry-pi) [![Financial Contributors on Open Collective](https://opencollective.com/raspap/all/badge.svg?label=financial+contributors)](https://opencollective.com/raspap) ![https://travis-ci.com/github/raspap/raspap-webgui/](https://api.travis-ci.org/RaspAP/raspap-webgui.svg) [![Crowdin](https://badges.crowdin.net/raspap/localized.svg)](https://crowdin.com/project/raspap) [![Twitter URL](https://img.shields.io/twitter/url?label=%40RaspAP&logoColor=%23d8224c&url=https%3A%2F%2Ftwitter.com%2Frasp_ap)](https://twitter.com/rasp_ap) [![Subreddit subscribers](https://img.shields.io/reddit/subreddit-subscribers/RaspAP?style=social)](https://www.reddit.com/r/RaspAP/) RaspAP lets you quickly get a wireless access point up and running to share the connectivity of many popular [Debian-based devices](#supported-operating-systems), including the Raspberry Pi. Our popular [Quick installer](#quick-installer) creates a known-good default configuration that "just works" on all current Raspberry Pis with onboard wireless. A responsive interface gives you control over the relevant services and networking options. Advanced DHCP settings, OpenVPN client support, SSL, security audits, themes and multilingual options are included. From fbe1688b2aed4c9968a12e56c34801bbb4ec08bb Mon Sep 17 00:00:00 2001 From: Bill Zimmerman Date: Sat, 20 Mar 2021 10:33:51 +0100 Subject: [PATCH 19/50] Update README.md --- README.md | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/README.md b/README.md index 89004fb8..b7e79b3a 100644 --- a/README.md +++ b/README.md @@ -1,4 +1,4 @@ -![](https://i.imgur.com/uhBFoOB.png) +![](https://i.imgur.com/xeKD93p.png) [![Release 2.6.3](https://img.shields.io/badge/release-v2.6.3-green)](https://github.com/raspap/raspap-webgui/releases) [![Awesome](https://awesome.re/badge.svg)](https://github.com/thibmaek/awesome-raspberry-pi) [![Financial Contributors on Open Collective](https://opencollective.com/raspap/all/badge.svg?label=financial+contributors)](https://opencollective.com/raspap) ![https://travis-ci.com/github/raspap/raspap-webgui/](https://api.travis-ci.org/RaspAP/raspap-webgui.svg) [![Crowdin](https://badges.crowdin.net/raspap/localized.svg)](https://crowdin.com/project/raspap) [![Twitter URL](https://img.shields.io/twitter/url?label=%40RaspAP&logoColor=%23d8224c&url=https%3A%2F%2Ftwitter.com%2Frasp_ap)](https://twitter.com/rasp_ap) [![Subreddit subscribers](https://img.shields.io/reddit/subreddit-subscribers/RaspAP?style=social)](https://www.reddit.com/r/RaspAP/) RaspAP lets you quickly get a wireless access point up and running to share the connectivity of many popular [Debian-based devices](#supported-operating-systems), including the Raspberry Pi. Our popular [Quick installer](#quick-installer) creates a known-good default configuration that "just works" on all current Raspberry Pis with onboard wireless. A responsive interface gives you control over the relevant services and networking options. Advanced DHCP settings, OpenVPN client support, SSL, security audits, themes and multilingual options are included. @@ -7,7 +7,7 @@ RaspAP has been featured on sites such as [Instructables](http://www.instructabl We hope you enjoy using RaspAP as much as we do creating it. Tell us how you use this with [your own projects](https://github.com/raspap/raspap-awesome). -![](https://i.imgur.com/ikWvsMG.gif) +![](https://i.imgur.com/uhBFoOB.png) ![](https://i.imgur.com/EiIpdOS.gif) ![](https://i.imgur.com/eCjUS1H.gif) ![](https://i.imgur.com/5FT2BcS.gif) From 9d00d503137544b5568215903db7270fda5634c1 Mon Sep 17 00:00:00 2001 From: billz Date: Sat, 20 Mar 2021 14:57:20 +0000 Subject: [PATCH 20/50] Update it_IT locale, thx Ioma Taani --- locale/it_IT/LC_MESSAGES/messages.mo | Bin 18771 -> 23425 bytes locale/it_IT/LC_MESSAGES/messages.po | 136 ++++++++++++++++++++++++++- 2 files changed, 134 insertions(+), 2 deletions(-) diff --git a/locale/it_IT/LC_MESSAGES/messages.mo b/locale/it_IT/LC_MESSAGES/messages.mo index b5846ff2943291add9219750e361d479886eea0c..b894df8cefc28249c15f80a7f87b6f693a892c6b 100644 GIT binary patch delta 9693 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 C7$5Qg delta 5937 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 XGIREn>E)%SxT2!8vWk(L%9-XbNJp@Y diff --git a/locale/it_IT/LC_MESSAGES/messages.po b/locale/it_IT/LC_MESSAGES/messages.po index 328f5ea7..63163cf1 100644 --- a/locale/it_IT/LC_MESSAGES/messages.po +++ b/locale/it_IT/LC_MESSAGES/messages.po @@ -3,8 +3,8 @@ msgstr "" "Project-Id-Version: raspap\n" "Report-Msgid-Bugs-To: Bill Zimmerman \n" "POT-Creation-Date: 2017-10-19 08:56+0000\n" -"PO-Revision-Date: 2021-01-21 10:40\n" -"Last-Translator: Luca Sasdelli\n" +"PO-Revision-Date: 2021-03-20 14:38\n" +"Last-Translator: Ioma Taani (iomataani)\n" "Language-Team: Italian\n" "Language: it_IT\n" "MIME-Version: 1.0\n" @@ -361,6 +361,24 @@ msgstr "Registra le richieste DHCP" msgid "Log DNS queries" msgstr "Registra query DNS" +msgid "Restrict access" +msgstr "Limita l'accesso" + +msgid "Limit network access to static clients" +msgstr "Limita l'accesso di rete ai client statici" + +msgid "Enable this option if you want RaspAP to ignore any clients which are not specified in the static leases list." +msgstr "Abilita questa opzione se vuoi che RaspAP ignori qualsiasi client non sono specificato nell'elenco dei lease statici." + +msgid "This option adds dhcp-ignore to the dnsmasq configuration." +msgstr "Questa opzione aggiunge dhcp-ignore alla configurazione di dnsmasq." + +msgid "Clients with a particular hardware MAC address can always be allocated the same IP address." +msgstr "I client con un particolare indirizzo MAC possono essere assegnati sempre allo stesso indirizzo IP." + +msgid "This option adds dhcp-host entries to the dnsmasq configuration." +msgstr "Questa opzione aggiunge dhcp-host alla configurazione dnsmasq." + #: includes/hostapd.php msgid "Basic" msgstr "Base" @@ -676,6 +694,36 @@ msgstr "Tentativo di avviare openvpn in corso" msgid "Attempting to stop openvpn" msgstr "Tentativo di arrestare openvpn in corso" +msgid "Configurations" +msgstr "Configurazioni" + +msgid "Currently available OpenVPN client configurations are displayed below." +msgstr "Le configurazioni client OpenVPN attualmente disponibili sono visualizzate di seguito." + +msgid "Activating a configuraton will restart the openvpn-client service." +msgstr "Attivando la configurazione si riavvierà il servizio openvpn-client." + +msgid "Delete OpenVPN client" +msgstr "Elimina client OpenVPN" + +msgid "Delete client configuration? This cannot be undone." +msgstr "Eliminare la configurazione del client? Questa operazione non può essere annullata." + +msgid "Activate OpenVPN client" +msgstr "Attiva client OpenVPN" + +msgid "Activate client configuration? This will restart the openvpn-client service." +msgstr "Attivare la configurazione del client? Questo riavvierà il servizio openvpn-client." + +msgid "Activate" +msgstr "Attiva" + +msgid "Cancel" +msgstr "Annulla" + +msgid "Enable this option to log openvpn activity." +msgstr "Abilita questa opzione per registrare l'attività di openvpn." + #: includes/torproxy.php msgid "TOR is not running" msgstr "TOR non è in esecuzione" @@ -799,3 +847,87 @@ msgstr "Host personalizzato non valido trovato sulla riga " msgid "Invalid custom host found on line " msgstr "Host personalizzato non valido trovato sulla riga " +msgid "Tunnel settings" +msgstr "Impostazioni del tunnel" + +msgid "Enable server" +msgstr "Abilita il server" + +msgid "Enable this option to encrypt traffic by creating a tunnel between RaspAP and configured peers." +msgstr "Abilita questa opzione per cifrare il traffico creando un tunnel tra RaspAP e peer configurati." + +msgid "This option adds wg0.conf to the WireGuard configuration." +msgstr "Questa opzione aggiunge wg0.conf alla configurazione di WireGuard." + +msgid "Local public key" +msgstr "Chiave pubblica locale" + +msgid "Local Port" +msgstr "Porta locale" + +msgid "IP Address" +msgstr "Indirizzo IP" + +msgid "DNS" +msgstr "DNS" + +msgid "Peer" +msgstr "Peer" + +msgid "Enable peer" +msgstr "Abilita peer" + +msgid "Enable this option to encrypt traffic by creating a tunnel between RaspAP and this peer." +msgstr "Abilita questa opzione per cifrare il traffico creando un tunnel tra RaspAP e questo peer." + +msgid "This option adds client.conf to the WireGuard configuration." +msgstr "Questa opzione aggiunge client.conf alla configurazione di WireGuard." + +msgid "Peer public key" +msgstr "Chiave pubblica del peer" + +msgid "Endpoint address" +msgstr "Indirizzo di endpoint" + +msgid "Allowed IPs" +msgstr "IP consentiti" + +msgid "Persistent keepalive" +msgstr "Keepalive permanente" + +msgid "Display WireGuard status" +msgstr "Mostra lo stato di WireGuard" + +msgid "Enable this option to display an updated WireGuard status." +msgstr "Abilita questa opzione per visualizzare lo stato aggiornato di WireGuard." + +msgid "Scan this QR code with your client to connect to this tunnel" +msgstr "Scansiona questo codice QR con il tuo client per connetterti a questo tunnel" + +msgid "or download the client.conf file to your device." +msgstr "o scarica il file client.conf sul tuo dispositivo." + +msgid "Download" +msgstr "Scarica" + +msgid "Start WireGuard" +msgstr "Avvia WireGuard" + +msgid "Stop WireGuard" +msgstr "Ferma WireGuard" + +msgid "Information provided by wireguard" +msgstr "Informazioni fornite da wireguard" + +msgid "Attempting to start WireGuard" +msgstr "Tentativo di avviare WireGuard in corso" + +msgid "Attempting to stop WireGuard" +msgstr "Tentativo di arrestare WireGuard in corso" + +msgid "WireGuard configuration updated successfully" +msgstr "Configurazione WireGuard aggiornata con successo" + +msgid "WireGuard configuration failed to be updated" +msgstr "Impossibile aggiornare la configurazione di WireGuard" + From b2b19cd1595115f4d0c1daef56024f42fdbcf839 Mon Sep 17 00:00:00 2001 From: billz Date: Sun, 21 Mar 2021 17:32:37 +0000 Subject: [PATCH 21/50] Update w/ api.raspap.com --- installers/raspbian.sh | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/installers/raspbian.sh b/installers/raspbian.sh index f340b638..67a77c96 100755 --- a/installers/raspbian.sh +++ b/installers/raspbian.sh @@ -183,7 +183,7 @@ function _display_welcome() { function _get_release() { readonly RASPAP_LATEST=$(curl -s "https://api.github.com/repos/$repo/releases/latest" | grep -Po '"tag_name": "\K.*?(?=")' ) if [ "$insiders" == 1 ]; then - readonly RASPAP_INSIDERS_LATEST=$(curl -s "https://install.raspap.com/repos/RaspAP/raspap-insiders/releases/latest/" | grep -Po '"tag_name": "\K.*?(?=")' ) + readonly RASPAP_INSIDERS_LATEST=$(curl -s "https://api.raspap.com/repos/RaspAP/raspap-insiders/releases/latest/" | grep -Po '"tag_name": "\K.*?(?=")' ) readonly RASPAP_RELEASE="${RASPAP_INSIDERS_LATEST} Insiders" else readonly RASPAP_RELEASE="${RASPAP_LATEST}" From 0c056b3833036030982f64562b1a92815895203a Mon Sep 17 00:00:00 2001 From: billz Date: Sun, 21 Mar 2021 17:32:51 +0000 Subject: [PATCH 22/50] Update w/ api.raspap.com --- installers/raspbian.sh | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/installers/raspbian.sh b/installers/raspbian.sh index e76adbe0..2750ff13 100755 --- a/installers/raspbian.sh +++ b/installers/raspbian.sh @@ -183,7 +183,7 @@ function _display_welcome() { function _get_release() { RASPAP_LATEST=$(curl -s "https://api.github.com/repos/$repo/releases/latest" | grep -Po '"tag_name": "\K.*?(?=")' ) if [ "$insiders" == 1 ]; then - RASPAP_INSIDERS_LATEST=$(curl -s "https://install.raspap.com/repos/RaspAP/raspap-insiders/releases/latest/" | grep -Po '"tag_name": "\K.*?(?=")' ) + RASPAP_INSIDERS_LATEST=$(curl -s "https://api.raspap.com/repos/RaspAP/raspap-insiders/releases/latest/" | grep -Po '"tag_name": "\K.*?(?=")' ) RASPAP_RELEASE="${RASPAP_INSIDERS_LATEST} Insiders" else RASPAP_RELEASE="${RASPAP_LATEST}" From 720e6c3e77bf552164dcaac914dc821c0dcb8818 Mon Sep 17 00:00:00 2001 From: Christian Zeitnitz Date: Sat, 27 Mar 2021 10:29:09 +0100 Subject: [PATCH 23/50] Add certificate option to openvpn GUI add JS code to display options and selected ovpn file --- app/js/custom.js | 16 +++++++ includes/openvpn.php | 2 +- templates/openvpn/configs.php | 6 +-- templates/openvpn/general.php | 83 ++++++++++++++++++++++++----------- 4 files changed, 77 insertions(+), 30 deletions(-) diff --git a/app/js/custom.js b/app/js/custom.js index d5047558..cd142a89 100644 --- a/app/js/custom.js +++ b/app/js/custom.js @@ -281,6 +281,22 @@ $('#ovpn-confirm-activate').on('shown.bs.modal', function (e) { $('.btn-activate', this).data('recordId', data.recordId); }); +$('#ovpn-userpw,#ovpn-certs').on('click', function (e) { +// e.stopPropagation(); + if (this.id == 'ovpn-userpw') { + $('#PanelCerts').hide(); + $('#PanelUserPW').show(); + } else if (this.id == 'ovpn-certs') { + $('#PanelUserPW').hide(); + $('#PanelCerts').show(); + } +}); + +// Add the following code if you want the name of the file appear on select +$(".custom-file-input").on("change", function() { + var fileName = $(this).val().split("\\").pop(); + $(this).siblings(".custom-file-label").addClass("selected").html(fileName); +}); /* Sets the wirelss channel select options based on hw_mode and country_code. diff --git a/includes/openvpn.php b/includes/openvpn.php index 810746a2..c5b00d1c 100755 --- a/includes/openvpn.php +++ b/includes/openvpn.php @@ -53,7 +53,7 @@ function DisplayOpenVPNConfig() $authUser = current($auth); $authPassword = next($auth); } - $clients = preg_grep('~\login.(conf)$~', scandir(pathinfo(RASPI_OPENVPN_CLIENT_LOGIN, PATHINFO_DIRNAME))); + $clients = preg_grep('/client.(conf)$/', scandir(pathinfo(RASPI_OPENVPN_CLIENT_CONFIG, PATHINFO_DIRNAME))); $logEnable = 0; if (!empty($_POST) && !isset($_POST['log-openvpn'])) { diff --git a/templates/openvpn/configs.php b/templates/openvpn/configs.php index 6f8056fd..dc624c63 100644 --- a/templates/openvpn/configs.php +++ b/templates/openvpn/configs.php @@ -8,11 +8,11 @@

diff --git a/templates/openvpn/general.php b/templates/openvpn/general.php index f8f2052c..9494bf0c 100644 --- a/templates/openvpn/general.php +++ b/templates/openvpn/general.php @@ -1,35 +1,66 @@

-
-
-
-
-
-
+
+
+
+
+
+
-
-
- - -
+
+
+
+ +
-
-
- - -
+
+ +
-
-
-
- - -
-
-
-
-
+
+
+
+
+
Enter username and password
+
+
+
+ + +
+
+ + +
+
+
+
+
+
Certificates in the configuration file
+

RaspAP does not support the import of the required cerficates. Please paste them into the configuration file +

    +
  • Signing certification authority (CA) certificate (e.g. ca.crt): enclosed in <ca> ... </ca> tags
  • +
  • Client certificate (public key) (e.g. client.crt): enclosed in <cert> ... </cert> tags
  • +
  • Private key of the client certificate (e.g. client.key): enclosed in <key> ... </key> tags
  • +
+

+
+
+
+
+
+
+
Configuration File
+
+ + +
+
+
+ +
+
From 72ae09461de61546e2b1d1f8bc3ebdc24b881296 Mon Sep 17 00:00:00 2001 From: Christian Zeitnitz Date: Sat, 27 Mar 2021 11:22:26 +0100 Subject: [PATCH 24/50] Fix form --- templates/openvpn/general.php | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) diff --git a/templates/openvpn/general.php b/templates/openvpn/general.php index 9494bf0c..7a33163d 100644 --- a/templates/openvpn/general.php +++ b/templates/openvpn/general.php @@ -8,7 +8,6 @@
-
@@ -37,6 +36,9 @@
+
+
Enter username and password
+
Certificates in the configuration file

RaspAP does not support the import of the required cerficates. Please paste them into the configuration file

    @@ -58,7 +60,6 @@
-
From 4f168dca46f988a3868371e507658f56f809e69c Mon Sep 17 00:00:00 2001 From: billz Date: Sat, 27 Mar 2021 13:10:33 +0000 Subject: [PATCH 25/50] Set repo with --insiders option --- installers/raspbian.sh | 1 + 1 file changed, 1 insertion(+) diff --git a/installers/raspbian.sh b/installers/raspbian.sh index 67a77c96..d056062c 100755 --- a/installers/raspbian.sh +++ b/installers/raspbian.sh @@ -183,6 +183,7 @@ function _display_welcome() { function _get_release() { readonly RASPAP_LATEST=$(curl -s "https://api.github.com/repos/$repo/releases/latest" | grep -Po '"tag_name": "\K.*?(?=")' ) if [ "$insiders" == 1 ]; then + repo="RaspAP/raspap-insiders" readonly RASPAP_INSIDERS_LATEST=$(curl -s "https://api.raspap.com/repos/RaspAP/raspap-insiders/releases/latest/" | grep -Po '"tag_name": "\K.*?(?=")' ) readonly RASPAP_RELEASE="${RASPAP_INSIDERS_LATEST} Insiders" else From 1485d4509e75927bee022ff799af2e60d57cc396 Mon Sep 17 00:00:00 2001 From: billz Date: Sat, 27 Mar 2021 13:11:44 +0000 Subject: [PATCH 26/50] Set repo with --insiders option --- installers/raspbian.sh | 9 +++++---- 1 file changed, 5 insertions(+), 4 deletions(-) diff --git a/installers/raspbian.sh b/installers/raspbian.sh index 2750ff13..d056062c 100755 --- a/installers/raspbian.sh +++ b/installers/raspbian.sh @@ -181,12 +181,13 @@ function _display_welcome() { # Fetch latest release from GitHub or RaspAP Installer API function _get_release() { - RASPAP_LATEST=$(curl -s "https://api.github.com/repos/$repo/releases/latest" | grep -Po '"tag_name": "\K.*?(?=")' ) + readonly RASPAP_LATEST=$(curl -s "https://api.github.com/repos/$repo/releases/latest" | grep -Po '"tag_name": "\K.*?(?=")' ) if [ "$insiders" == 1 ]; then - RASPAP_INSIDERS_LATEST=$(curl -s "https://api.raspap.com/repos/RaspAP/raspap-insiders/releases/latest/" | grep -Po '"tag_name": "\K.*?(?=")' ) - RASPAP_RELEASE="${RASPAP_INSIDERS_LATEST} Insiders" + repo="RaspAP/raspap-insiders" + readonly RASPAP_INSIDERS_LATEST=$(curl -s "https://api.raspap.com/repos/RaspAP/raspap-insiders/releases/latest/" | grep -Po '"tag_name": "\K.*?(?=")' ) + readonly RASPAP_RELEASE="${RASPAP_INSIDERS_LATEST} Insiders" else - RASPAP_RELEASE="${RASPAP_LATEST}" + readonly RASPAP_RELEASE="${RASPAP_LATEST}" fi } From 77170a9a7b9587d470fcea44932ab14ddfd6762f Mon Sep 17 00:00:00 2001 From: "dependabot[bot]" <49699333+dependabot[bot]@users.noreply.github.com> Date: Wed, 31 Mar 2021 02:31:36 +0000 Subject: [PATCH 27/50] Bump y18n from 3.2.1 to 3.2.2 Bumps [y18n](https://github.com/yargs/y18n) from 3.2.1 to 3.2.2. - [Release notes](https://github.com/yargs/y18n/releases) - [Changelog](https://github.com/yargs/y18n/blob/master/CHANGELOG.md) - [Commits](https://github.com/yargs/y18n/commits) Signed-off-by: dependabot[bot] --- yarn.lock | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/yarn.lock b/yarn.lock index 2b445d7f..0da79a7c 100644 --- a/yarn.lock +++ b/yarn.lock @@ -4717,9 +4717,9 @@ xtend@~4.0.0, xtend@~4.0.1: integrity sha512-LKYU1iAXJXUgAXn9URjiu+MWhyUXHsvfp7mcuYm9dSUKK0/CjtrUwFAxD82/mCWbtLsGjFIad0wIsod4zrTAEQ== y18n@^3.2.1: - version "3.2.1" - resolved "https://registry.yarnpkg.com/y18n/-/y18n-3.2.1.tgz#6d15fba884c08679c0d77e88e7759e811e07fa41" - integrity sha1-bRX7qITAhnnA136I53WegR4H+kE= + version "3.2.2" + resolved "https://registry.yarnpkg.com/y18n/-/y18n-3.2.2.tgz#85c901bd6470ce71fc4bb723ad209b70f7f28696" + integrity sha512-uGZHXkHnhF0XeeAPgnKfPv1bgKAYyVvmNL1xlKsPYZPaIHxGti2hHqvOCQv71XMsLxu1QjergkqogUnms5D3YQ== y18n@^4.0.0: version "4.0.0" From 20d2443468aea115a35d9bd5ccf13a8bf1212308 Mon Sep 17 00:00:00 2001 From: Christian Zeitnitz Date: Wed, 31 Mar 2021 12:48:31 +0200 Subject: [PATCH 28/50] Fix panel title for certificate option --- templates/openvpn/general.php | 3 +-- 1 file changed, 1 insertion(+), 2 deletions(-) diff --git a/templates/openvpn/general.php b/templates/openvpn/general.php index 7a33163d..21262db1 100644 --- a/templates/openvpn/general.php +++ b/templates/openvpn/general.php @@ -37,9 +37,8 @@
-
Enter username and password
+
Certificates in the configuration file
-
Certificates in the configuration file

RaspAP does not support the import of the required cerficates. Please paste them into the configuration file

  • Signing certification authority (CA) certificate (e.g. ca.crt): enclosed in <ca> ... </ca> tags
  • From fc83727408d9948c244954edea1fe9d04f17eb45 Mon Sep 17 00:00:00 2001 From: Christian Zeitnitz Date: Wed, 31 Mar 2021 12:54:43 +0200 Subject: [PATCH 29/50] Use client.conf to get path and name of configuration --- ajax/openvpn/activate_ovpncfg.php | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/ajax/openvpn/activate_ovpncfg.php b/ajax/openvpn/activate_ovpncfg.php index b8f822c2..2a8542a9 100644 --- a/ajax/openvpn/activate_ovpncfg.php +++ b/ajax/openvpn/activate_ovpncfg.php @@ -5,11 +5,11 @@ require_once '../../includes/functions.php'; if (isset($_POST['cfg_id'])) { $ovpncfg_id = $_POST['cfg_id']; - $ovpncfg_path = pathinfo(RASPI_OPENVPN_CLIENT_LOGIN, PATHINFO_DIRNAME).'/'; + $ovpncfg_path = pathinfo(RASPI_OPENVPN_CLIENT_CONFIG, PATHINFO_DIRNAME).'/'; $ovpncfg_files = $ovpncfg_path .$ovpncfg_id.'_*.conf'; // move currently active profile - $meta = file_get_meta(RASPI_OPENVPN_CLIENT_LOGIN,'#\sfilename\s(.*)'); + $meta = file_get_meta(RASPI_OPENVPN_CLIENT_CONFIG,'#\sfilename\s(.*)'); $ovpncfg_client = $ovpncfg_path .$meta.'_client.conf'; $ovpncfg_login = $ovpncfg_path .$meta.'_login.conf'; exec("sudo mv ".RASPI_OPENVPN_CLIENT_CONFIG." $ovpncfg_client", $return); From 8d4cf1c96d9085c5b3af335cc636ec323c83e168 Mon Sep 17 00:00:00 2001 From: billz Date: Wed, 31 Mar 2021 19:48:34 +0100 Subject: [PATCH 30/50] Update country_code optionv values --- templates/hostapd/advanced.php | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/templates/hostapd/advanced.php b/templates/hostapd/advanced.php index d0559cfe..f7c9ee93 100644 --- a/templates/hostapd/advanced.php +++ b/templates/hostapd/advanced.php @@ -233,7 +233,7 @@ - + @@ -281,7 +281,7 @@ - + From b08373a72fc2e6a01f4aae5bb5232acd01d9117d Mon Sep 17 00:00:00 2001 From: Bill Zimmerman Date: Thu, 1 Apr 2021 06:56:59 +0200 Subject: [PATCH 31/50] Update README.md --- README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/README.md b/README.md index b7e79b3a..b16ae839 100644 --- a/README.md +++ b/README.md @@ -1,5 +1,5 @@ ![](https://i.imgur.com/xeKD93p.png) -[![Release 2.6.3](https://img.shields.io/badge/release-v2.6.3-green)](https://github.com/raspap/raspap-webgui/releases) [![Awesome](https://awesome.re/badge.svg)](https://github.com/thibmaek/awesome-raspberry-pi) [![Financial Contributors on Open Collective](https://opencollective.com/raspap/all/badge.svg?label=financial+contributors)](https://opencollective.com/raspap) ![https://travis-ci.com/github/raspap/raspap-webgui/](https://api.travis-ci.org/RaspAP/raspap-webgui.svg) [![Crowdin](https://badges.crowdin.net/raspap/localized.svg)](https://crowdin.com/project/raspap) [![Twitter URL](https://img.shields.io/twitter/url?label=%40RaspAP&logoColor=%23d8224c&url=https%3A%2F%2Ftwitter.com%2Frasp_ap)](https://twitter.com/rasp_ap) [![Subreddit subscribers](https://img.shields.io/reddit/subreddit-subscribers/RaspAP?style=social)](https://www.reddit.com/r/RaspAP/) +[![Release 2.6.3](https://img.shields.io/badge/release-v2.6.3-green)](https://github.com/raspap/raspap-webgui/releases) [![Awesome](https://awesome.re/badge.svg)](https://github.com/thibmaek/awesome-raspberry-pi) [![Get Insiders](https://img.shields.io/static/v1?label=Get%20Insiders&message=%E2%9D%A4&logo=GitHub&color=ff69b4)](https://github.com/sponsors/RaspAP) ![https://travis-ci.com/github/raspap/raspap-webgui/](https://api.travis-ci.org/RaspAP/raspap-webgui.svg) [![Crowdin](https://badges.crowdin.net/raspap/localized.svg)](https://crowdin.com/project/raspap) [![Twitter URL](https://img.shields.io/twitter/url?label=%40RaspAP&logoColor=%23d8224c&url=https%3A%2F%2Ftwitter.com%2Frasp_ap)](https://twitter.com/rasp_ap) [![Subreddit subscribers](https://img.shields.io/reddit/subreddit-subscribers/RaspAP?style=social)](https://www.reddit.com/r/RaspAP/) RaspAP lets you quickly get a wireless access point up and running to share the connectivity of many popular [Debian-based devices](#supported-operating-systems), including the Raspberry Pi. Our popular [Quick installer](#quick-installer) creates a known-good default configuration that "just works" on all current Raspberry Pis with onboard wireless. A responsive interface gives you control over the relevant services and networking options. Advanced DHCP settings, OpenVPN client support, SSL, security audits, themes and multilingual options are included. From 12d52dfd3ca14d7b01727aea829fc5cc5db1558b Mon Sep 17 00:00:00 2001 From: Bill Zimmerman Date: Thu, 1 Apr 2021 06:58:36 +0200 Subject: [PATCH 32/50] Update README.md --- README.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/README.md b/README.md index df67af3e..9ff0fe56 100644 --- a/README.md +++ b/README.md @@ -1,5 +1,5 @@ ![](https://i.imgur.com/TCJKWT4.png) -[![Release 2.7.2](https://img.shields.io/badge/release-v2.7.2-green)](https://github.com/raspap/raspap-insiders/releases) [![Awesome](https://awesome.re/badge.svg)](https://github.com/thibmaek/awesome-raspberry-pi) [![Financial Contributors on Open Collective](https://opencollective.com/raspap/all/badge.svg?label=financial+contributors)](https://opencollective.com/raspap) ![https://travis-ci.com/github/raspap/raspap-webgui/](https://api.travis-ci.org/RaspAP/raspap-webgui.svg) [![Crowdin](https://badges.crowdin.net/raspap/localized.svg)](https://crowdin.com/project/raspap) [![Twitter URL](https://img.shields.io/twitter/url?label=%40RaspAP&logoColor=%23d8224c&url=https%3A%2F%2Ftwitter.com%2Frasp_ap)](https://twitter.com/rasp_ap) [![Subreddit subscribers](https://img.shields.io/reddit/subreddit-subscribers/RaspAP?style=social)](https://www.reddit.com/r/RaspAP/) +[![Release 2.7.2](https://img.shields.io/badge/release-v2.7.2-green)](https://github.com/raspap/raspap-insiders/releases) [![Awesome](https://awesome.re/badge.svg)](https://github.com/thibmaek/awesome-raspberry-pi) [![Insiders Edition](https://img.shields.io/static/v1?label=Insiders%20Edition&message=%E2%9D%A4&logo=GitHub&color=ff69b4)](https://github.com/sponsors/RaspAP) ![https://travis-ci.com/github/raspap/raspap-webgui/](https://api.travis-ci.org/RaspAP/raspap-webgui.svg) [![Crowdin](https://badges.crowdin.net/raspap/localized.svg)](https://crowdin.com/project/raspap) [![Twitter URL](https://img.shields.io/twitter/url?label=%40RaspAP&logoColor=%23d8224c&url=https%3A%2F%2Ftwitter.com%2Frasp_ap)](https://twitter.com/rasp_ap) [![Subreddit subscribers](https://img.shields.io/reddit/subreddit-subscribers/RaspAP?style=social)](https://www.reddit.com/r/RaspAP/) Welcome to **RaspAP Insiders**. You, the members of the Insiders community, support the sponsorware release model, which means that new features are first exclusively released to sponsors as part of Insiders. Read on for details about how this strategy works—and *thank you* for joining us on this journey. From 98bd74372f00815c9ddc3aa7b45173425bc4764e Mon Sep 17 00:00:00 2001 From: Bill Zimmerman Date: Thu, 1 Apr 2021 12:07:16 +0200 Subject: [PATCH 33/50] Update README.md --- README.md | 16 +++++++++------- 1 file changed, 9 insertions(+), 7 deletions(-) diff --git a/README.md b/README.md index b16ae839..e6672109 100644 --- a/README.md +++ b/README.md @@ -1,7 +1,7 @@ ![](https://i.imgur.com/xeKD93p.png) -[![Release 2.6.3](https://img.shields.io/badge/release-v2.6.3-green)](https://github.com/raspap/raspap-webgui/releases) [![Awesome](https://awesome.re/badge.svg)](https://github.com/thibmaek/awesome-raspberry-pi) [![Get Insiders](https://img.shields.io/static/v1?label=Get%20Insiders&message=%E2%9D%A4&logo=GitHub&color=ff69b4)](https://github.com/sponsors/RaspAP) ![https://travis-ci.com/github/raspap/raspap-webgui/](https://api.travis-ci.org/RaspAP/raspap-webgui.svg) [![Crowdin](https://badges.crowdin.net/raspap/localized.svg)](https://crowdin.com/project/raspap) [![Twitter URL](https://img.shields.io/twitter/url?label=%40RaspAP&logoColor=%23d8224c&url=https%3A%2F%2Ftwitter.com%2Frasp_ap)](https://twitter.com/rasp_ap) [![Subreddit subscribers](https://img.shields.io/reddit/subreddit-subscribers/RaspAP?style=social)](https://www.reddit.com/r/RaspAP/) +[![Release 2.6.3](https://img.shields.io/badge/release-v2.6.3-green)](https://github.com/raspap/raspap-webgui/releases) [![Awesome](https://awesome.re/badge.svg)](https://github.com/thibmaek/awesome-raspberry-pi) [![Join Insiders](https://img.shields.io/static/v1?label=Join%20Insiders&message=%E2%9D%A4&logo=GitHub&color=ff69b4)](https://github.com/sponsors/RaspAP) ![https://travis-ci.com/github/raspap/raspap-webgui/](https://api.travis-ci.org/RaspAP/raspap-webgui.svg) [![Crowdin](https://badges.crowdin.net/raspap/localized.svg)](https://crowdin.com/project/raspap) [![Twitter URL](https://img.shields.io/twitter/url?label=%40RaspAP&logoColor=%23d8224c&url=https%3A%2F%2Ftwitter.com%2Frasp_ap)](https://twitter.com/rasp_ap) [![Subreddit subscribers](https://img.shields.io/reddit/subreddit-subscribers/RaspAP?style=social)](https://www.reddit.com/r/RaspAP/) -RaspAP lets you quickly get a wireless access point up and running to share the connectivity of many popular [Debian-based devices](#supported-operating-systems), including the Raspberry Pi. Our popular [Quick installer](#quick-installer) creates a known-good default configuration that "just works" on all current Raspberry Pis with onboard wireless. A responsive interface gives you control over the relevant services and networking options. Advanced DHCP settings, OpenVPN client support, SSL, security audits, themes and multilingual options are included. +RaspAP is feature-rich wireless router software that _just works_ on many popular [Debian-based devices](#supported-operating-systems), including the Raspberry Pi. Our popular [Quick installer](#quick-installer) creates a known-good default configuration for all current Raspberry Pis with onboard wireless. A fully responsive, mobile-ready interface gives you control over the relevant services and networking options. Advanced DHCP settings, WireGuard and OpenVPN support, [SSL certificates](https://docs.raspap.com/ssl-quick/), security audits, [captive portal integration](https://docs.raspap.com/captive/), themes and [multilingual options](https://docs.raspap.com/translations/) are included. RaspAP has been featured on sites such as [Instructables](http://www.instructables.com/id/Raspberry-Pi-As-Completely-Wireless-Router/), [Adafruit](https://blog.adafruit.com/2016/06/24/raspap-wifi-configuration-portal-piday-raspberrypi-raspberry_pi/), [Raspberry Pi Weekly](https://www.raspberrypi.org/weekly/commander/) and [Awesome Raspberry Pi](https://project-awesome.org/thibmaek/awesome-raspberry-pi) and implemented in countless projects. @@ -16,12 +16,12 @@ We hope you enjoy using RaspAP as much as we do creating it. Tell us how you use - [Prerequisites](#prerequisites) - [Quick installer](#quick-installer) + - [Join Insiders](#join-insiders) - [WireGuard support](#wireguard-support) - [OpenVPN support](#openvpn-support) - [Ad Blocking](#ad-blocking) - [Bridged AP](#bridged-ap) - [Simultaneous AP and Wifi client](#simultaneous-ap-and-wifi-client) - - [Support us](#support-us) - [Manual installation](#manual-installation) - [802.11ac 5GHz support](#80211ac-5ghz-support) - [Supported operating systems](#supported-operating-systems) @@ -58,7 +58,7 @@ configured as an access point as follows: * IP address: 10.3.141.1 * Username: admin * Password: secret -* DHCP range: 10.3.141.50 to 10.3.141.255 +* DHCP range: 10.3.141.50 — 10.3.141.255 * SSID: `raspi-webgui` * Password: ChangeMe @@ -66,6 +66,11 @@ configured as an access point as follows: Please [read this](https://docs.raspap.com/issues/) before reporting an issue. +## Join Insiders +RaspAP is free software, but powered by _your_ support. If you find RaspAP useful for your personal or commercial projects, [become an Insider](https://github.com/sponsors/RaspAP/) and get early access to exclusive features in the [Insiders Edition](https://docs.raspap.com/insiders/). + +A tangible side benefit of sponsorship is that **Insiders** are able to help _steer future development of RaspAP_. This is done through Insiders' team access to discussions, feature requests, issues and more in the private GitHub repository. + ## WireGuard support ![](https://i.imgur.com/5YDv37e.png) @@ -104,9 +109,6 @@ RaspAP lets you create an AP with a Wifi client configuration, often called [AP- **Note:** This option is disabled until you configure your system as a wireless client. For a device operating in [managed mode](https://docs.raspap.com/faq/#headless) without an `eth0` connection, this configuration must be enabled [_before_ a reboot](https://docs.raspap.com/ap-sta/). -## Support us -RaspAP is free software, but powered by _your_ support. If you find RaspAP useful for your personal or commercial projects, [become an Insider](https://github.com/sponsors/RaspAP/) and get early access to exclusive features in the [Insiders Edition](https://docs.raspap.com/insiders/). - ## Manual installation Detailed manual setup instructions are provided [on our documentation site](https://docs.raspap.com/manual/). From 41cb105b2ab86a75a59776751b86a8853ec6b268 Mon Sep 17 00:00:00 2001 From: billz Date: Thu, 1 Apr 2021 16:46:07 +0100 Subject: [PATCH 34/50] Unlink existing 50-raspap-router in conf-enabled --- installers/common.sh | 16 +++++++++++----- 1 file changed, 11 insertions(+), 5 deletions(-) diff --git a/installers/common.sh b/installers/common.sh index 986822d3..26f3e92f 100755 --- a/installers/common.sh +++ b/installers/common.sh @@ -25,6 +25,7 @@ readonly raspap_wlan0="/etc/dnsmasq.d/090_wlan0.conf" readonly raspap_adblock="/etc/dnsmasq.d/090_adblock.conf" readonly raspap_sysctl="/etc/sysctl.d/90_raspap.conf" readonly raspap_network="$raspap_dir/networking/" +readonly raspap_router="/etc/lighttpd/conf-available/50-raspap-router.conf" readonly rulesv4="/etc/iptables/rules.v4" readonly notracking_url="https://raw.githubusercontent.com/notracking/hosts-blocklists/master/" webroot_dir="/var/www/html" @@ -220,20 +221,25 @@ function _install_lighttpd_configs() { CONFSRC="$webroot_dir/config/50-raspap-router.conf" LTROOT=$(grep "server.document-root" /etc/lighttpd/lighttpd.conf | awk -F '=' '{print $2}' | tr -d " \"") - # compare values and get difference + # Compare values and get difference HTROOT=${webroot_dir/$LTROOT} - # remove trailing slash if present + # Remove trailing slash if present HTROOT=$(echo "$HTROOT" | sed -e 's/\/$//') - # substitute values + # Substitute values awk "{gsub(\"/REPLACE_ME\",\"$HTROOT\")}1" $CONFSRC > /tmp/50-raspap-router.conf - # copy into place + # Copy into place sudo cp /tmp/50-raspap-router.conf /etc/lighttpd/conf-available/ || _install_status 1 "Unable to copy lighttpd config file into place." - # link into conf-enabled + # Link into conf-enabled echo "Creating link to /etc/lighttpd/conf-enabled" + if ! [ -L $raspap_router ]; then + echo "Existing 50-raspap-router.conf found. Unlinking." + sudo unlink "/etc/lighttpd/conf-enabled/50-raspap-router.conf" + fi + echo "Linking 50-raspap-router.conf to /etc/lighttpd/conf-enabled/" sudo ln -s "/etc/lighttpd/conf-available/50-raspap-router.conf" "/etc/lighttpd/conf-enabled/50-raspap-router.conf" || _install_status 1 "Unable to symlink lighttpd config file (this is normal if the link already exists)." sudo systemctl restart lighttpd.service || _install_status 1 "Unable to restart lighttpd" _install_status 0 From a1097988033b1deb52ef53ed7b75fccde2f0ea80 Mon Sep 17 00:00:00 2001 From: Bill Zimmerman Date: Thu, 1 Apr 2021 20:05:54 +0200 Subject: [PATCH 35/50] Update README.md --- README.md | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/README.md b/README.md index e6672109..47c5dba5 100644 --- a/README.md +++ b/README.md @@ -67,7 +67,9 @@ configured as an access point as follows: Please [read this](https://docs.raspap.com/issues/) before reporting an issue. ## Join Insiders -RaspAP is free software, but powered by _your_ support. If you find RaspAP useful for your personal or commercial projects, [become an Insider](https://github.com/sponsors/RaspAP/) and get early access to exclusive features in the [Insiders Edition](https://docs.raspap.com/insiders/). +[![](https://i.imgur.com/eml7k0b.png)](https://github.com/sponsors/RaspAP/) + +RaspAP is free software, but powered by _your_ support. If you find RaspAP useful for your personal or commercial projects, [become an Insider](https://github.com/sponsors/RaspAP/) and get early access to [exclusive features](https://docs.raspap.com/insiders/#exclusive-features) in the [Insiders Edition](https://docs.raspap.com/insiders/). A tangible side benefit of sponsorship is that **Insiders** are able to help _steer future development of RaspAP_. This is done through Insiders' team access to discussions, feature requests, issues and more in the private GitHub repository. @@ -168,8 +170,6 @@ This project exists thanks to all the awesome people who [contribute](CONTRIBUTI ### Financial Contributors Development of RaspAP is made possible thanks to a sponsorware release model. This means that new features are first exclusively released to sponsors as part of [**Insiders**](https://github.com/sponsors/RaspAP). -[![](https://i.imgur.com/azMTmuP.png)](https://github.com/sponsors/RaspAP/) - Learn more about [how sponsorship works](https://docs.raspap.com/insiders/#how-sponsorship-works), and how easy it is to get access to Insiders. ## License From b10ee7a98f9620c3c689d1afd435db7a2a55a70a Mon Sep 17 00:00:00 2001 From: root Date: Thu, 1 Apr 2021 23:35:19 +0100 Subject: [PATCH 36/50] sort interface list for hostapd --- includes/hostapd.php | 2 ++ 1 file changed, 2 insertions(+) diff --git a/includes/hostapd.php b/includes/hostapd.php index 43e04bd1..e364dd15 100755 --- a/includes/hostapd.php +++ b/includes/hostapd.php @@ -27,6 +27,8 @@ function DisplayHostAPDConfig() $arrEncType = array('TKIP' => 'TKIP', 'CCMP' => 'CCMP', 'TKIP CCMP' => 'TKIP+CCMP'); $managedModeEnabled = false; exec("ip -o link show | awk -F': ' '{print $2}'", $interfaces); + sort($interfaces); + exec("iw reg get | awk '/country / { sub(/:/,\"\",$2); print $2 }'", $country_code); if (!RASPI_MONITOR_ENABLED) { From ec3fa1002bb6de76a6a96ff59e3486588b16d755 Mon Sep 17 00:00:00 2001 From: root Date: Thu, 1 Apr 2021 23:00:06 +0100 Subject: [PATCH 37/50] improving layout, text and styles of wifi client box --- app/css/custom.php | 5 +++-- templates/dashboard.php | 32 ++++++++++++++++---------------- 2 files changed, 19 insertions(+), 18 deletions(-) diff --git a/app/css/custom.php b/app/css/custom.php index a4f98d72..6726a0a8 100644 --- a/app/css/custom.php +++ b/app/css/custom.php @@ -119,8 +119,9 @@ i.fa.fa-bars:hover{ } .info-item { - width: 10rem; - float: left; + text-transform: uppercase; + font-size: 0.7em; + color: #858796; } .info-item-xs { diff --git a/templates/dashboard.php b/templates/dashboard.php index ab1d3d8f..a1a2fac4 100755 --- a/templates/dashboard.php +++ b/templates/dashboard.php @@ -35,23 +35,23 @@

    -
    -
    -
    -
    -
    -
    -
    -
    -
    -
    - -
    - -
    +
    +

    +
    +

    +

    +

    +

    +

    +
    +
    + +
    + +
    +
    -
    -
    +
From b31c4a024dc7869d1ce2968006d27b7513a28173 Mon Sep 17 00:00:00 2001 From: root Date: Thu, 1 Apr 2021 23:03:33 +0100 Subject: [PATCH 38/50] add missing card-title class to headings --- templates/dashboard.php | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/templates/dashboard.php b/templates/dashboard.php index a1a2fac4..b487edd8 100755 --- a/templates/dashboard.php +++ b/templates/dashboard.php @@ -21,7 +21,7 @@
-

+

@@ -33,7 +33,7 @@
-

+

@@ -57,7 +57,7 @@
-

+

From 1503d8131758c65d21fe34f85211f4e90b1d9f1c Mon Sep 17 00:00:00 2001 From: billz Date: Fri, 2 Apr 2021 17:03:35 +0100 Subject: [PATCH 39/50] Apply styles to themes css --- app/css/hackernews.css | 5 +++-- app/css/lightsout.css | 5 +++-- 2 files changed, 6 insertions(+), 4 deletions(-) diff --git a/app/css/hackernews.css b/app/css/hackernews.css index 1dbb2e97..37c12272 100644 --- a/app/css/hackernews.css +++ b/app/css/hackernews.css @@ -147,8 +147,9 @@ ul.nav-tabs, .nav-tabs .nav-link { } .info-item { - width: 10rem; - float: left; + text-transform: uppercase; + font-size: 0.7em; + color: #858796; } .info-item-xs { diff --git a/app/css/lightsout.css b/app/css/lightsout.css index c6fb580b..7f38035a 100644 --- a/app/css/lightsout.css +++ b/app/css/lightsout.css @@ -250,8 +250,9 @@ hr { } .info-item { - width: 12rem; - float: left; + text-transform: uppercase; + font-size: 0.7em; + color: #858796; } .info-item-xs { From 41e27cc546d405eabedc07850d266d50ff9de0f6 Mon Sep 17 00:00:00 2001 From: root Date: Thu, 1 Apr 2021 23:00:06 +0100 Subject: [PATCH 40/50] improving layout, text and styles of wifi client box --- app/css/custom.php | 5 +++-- templates/dashboard.php | 32 ++++++++++++++++---------------- 2 files changed, 19 insertions(+), 18 deletions(-) diff --git a/app/css/custom.php b/app/css/custom.php index a4f98d72..6726a0a8 100644 --- a/app/css/custom.php +++ b/app/css/custom.php @@ -119,8 +119,9 @@ i.fa.fa-bars:hover{ } .info-item { - width: 10rem; - float: left; + text-transform: uppercase; + font-size: 0.7em; + color: #858796; } .info-item-xs { diff --git a/templates/dashboard.php b/templates/dashboard.php index ab1d3d8f..a1a2fac4 100755 --- a/templates/dashboard.php +++ b/templates/dashboard.php @@ -35,23 +35,23 @@

-
-
-
-
-
-
-
-
-
-
- -
- -
+
+

+
+

+

+

+

+

+
+
+ +
+ +
+
-
-
+
From f2ec732bf0f3f27347d50a3b9214259879395c4e Mon Sep 17 00:00:00 2001 From: root Date: Thu, 1 Apr 2021 23:03:33 +0100 Subject: [PATCH 41/50] add missing card-title class to headings --- templates/dashboard.php | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/templates/dashboard.php b/templates/dashboard.php index a1a2fac4..b487edd8 100755 --- a/templates/dashboard.php +++ b/templates/dashboard.php @@ -21,7 +21,7 @@
-

+

@@ -33,7 +33,7 @@
-

+

@@ -57,7 +57,7 @@
-

+

From b41821240896d8751c10f1a7fa719b3888ba7488 Mon Sep 17 00:00:00 2001 From: root Date: Fri, 2 Apr 2021 17:18:15 +0100 Subject: [PATCH 42/50] div => p --- templates/dashboard.php | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/templates/dashboard.php b/templates/dashboard.php index b487edd8..47443ee8 100755 --- a/templates/dashboard.php +++ b/templates/dashboard.php @@ -37,7 +37,7 @@

-
+

From 8f0ae3b36aa1020d21477e66010c6b2146e7c222 Mon Sep 17 00:00:00 2001 From: glaszig Date: Fri, 2 Apr 2021 19:33:35 -0300 Subject: [PATCH 43/50] fix url rewriting (\?.+) already captures the question mark so it's not needed in the replaced string. this actually made the `page` GET parameter be `?page` because the url wound up being `??page=foo`. --- config/50-raspap-router.conf | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/config/50-raspap-router.conf b/config/50-raspap-router.conf index c7634436..1c10d26f 100644 --- a/config/50-raspap-router.conf +++ b/config/50-raspap-router.conf @@ -3,7 +3,7 @@ server.modules += ( ) $HTTP["url"] =~ "^/REPLACE_ME/(?!(dist|app|ajax|config)).*" { - url.rewrite-once = ( "^/REPLACE_ME/(.*?)(\?.+)?$"=>"/REPLACE_ME/index.php/$1?$2" ) + url.rewrite-once = ( "^/REPLACE_ME/(.*?)(\?.+)?$"=>"/REPLACE_ME/index.php/$1$2" ) server.error-handler-404 = "/REPLACE_ME/index.php" } From 6196bcd311f1781ebd36fbbc0be918700f251531 Mon Sep 17 00:00:00 2001 From: glaszig Date: Sat, 3 Apr 2021 00:43:42 +0100 Subject: [PATCH 44/50] add 'default route' toggle to network interface configuration ui --- ajax/networking/get_netcfg.php | 2 ++ app/js/custom.js | 1 + includes/dhcp.php | 1 + templates/dhcp/general.php | 12 ++++++++++++ 4 files changed, 16 insertions(+) diff --git a/ajax/networking/get_netcfg.php b/ajax/networking/get_netcfg.php index 2dd330bb..7e7b8fa7 100644 --- a/ajax/networking/get_netcfg.php +++ b/ajax/networking/get_netcfg.php @@ -45,12 +45,14 @@ if (isset($interface)) { preg_match('/static\srouters=(.*)/', $matched[0], $static_routers); preg_match('/static\sdomain_name_server=(.*)/', $matched[0], $static_dns); preg_match('/fallback\sstatic_'.$interface.'/', $matched[0], $fallback); + preg_match('/(?:no)?gateway/', $matched[0], $gateway); $dhcpdata['Metric'] = $metric[1]; $dhcpdata['StaticIP'] = strpos($static_ip[1],'/') ? substr($static_ip[1], 0, strpos($static_ip[1],'/')) : $static_ip[1]; $dhcpdata['SubnetMask'] = cidr2mask($static_ip[1]); $dhcpdata['StaticRouters'] = $static_routers[1]; $dhcpdata['StaticDNS'] = $static_dns[1]; $dhcpdata['FallbackEnabled'] = empty($fallback) ? false: true; + $dhcpdata['DefaultRoute'] = empty($gateway) || $gateway[0] == "gateway"; echo json_encode($dhcpdata); } diff --git a/app/js/custom.js b/app/js/custom.js index 7a885472..13f0db92 100644 --- a/app/js/custom.js +++ b/app/js/custom.js @@ -186,6 +186,7 @@ function loadInterfaceDHCPSelect() { $('#txtsubnetmask').val(jsonData.SubnetMask); $('#txtgateway').val(jsonData.StaticRouters); $('#chkfallback')[0].checked = jsonData.FallbackEnabled; + $('#default-route').prop('checked', jsonData.DefaultRoute); $('#txtrangestart').val(jsonData.RangeStart); $('#txtrangeend').val(jsonData.RangeEnd); $('#txtrangeleasetime').val(jsonData.leaseTime); diff --git a/includes/dhcp.php b/includes/dhcp.php index bc323200..38d69ea5 100755 --- a/includes/dhcp.php +++ b/includes/dhcp.php @@ -244,6 +244,7 @@ function updateDHCPConfig($iface,$status) $cfg[] = 'profile static_'.$iface; $cfg[] = 'fallback static_'.$iface; } + $cfg[] = $_POST['DefaultRoute'] == '1' ? 'gateway' : 'nogateway'; $dhcp_cfg = file_get_contents(RASPI_DHCPCD_CONFIG); if (!preg_match('/^interface\s'.$iface.'$/m', $dhcp_cfg)) { $cfg[] = PHP_EOL; diff --git a/templates/dhcp/general.php b/templates/dhcp/general.php index 49758696..83bc3504 100644 --- a/templates/dhcp/general.php +++ b/templates/dhcp/general.php @@ -55,6 +55,18 @@
+
+
+
+ + +
+

+ gateway/nogateway option for this interface in the DHCPCD configuration.") ?> +

+
+
+
DHCP options
From 16098c0e96f967905e2a21ede208234e1b91494a Mon Sep 17 00:00:00 2001 From: billz Date: Mon, 5 Apr 2021 08:20:41 +0100 Subject: [PATCH 45/50] Update en_US msgstr --- locale/en_US/LC_MESSAGES/messages.po | 3 +++ 1 file changed, 3 insertions(+) diff --git a/locale/en_US/LC_MESSAGES/messages.po b/locale/en_US/LC_MESSAGES/messages.po index 8c4d5f97..8ce1cf38 100644 --- a/locale/en_US/LC_MESSAGES/messages.po +++ b/locale/en_US/LC_MESSAGES/messages.po @@ -362,6 +362,9 @@ msgstr "Log DHCP requests" msgid "Log DNS queries" msgstr "Log DNS queries" +msgid "This toggles the gateway/nogateway option for this interface in the DHCPCD configuration." +msgstr "This toggles the gateway/nogateway option for this interface in the DHCPCD configuration." + #: includes/hostapd.php msgid "Basic" msgstr "Basic" From d3c830d69f6b4bfd3b3713f72667db1e500cbd66 Mon Sep 17 00:00:00 2001 From: billz Date: Tue, 6 Apr 2021 10:34:39 +0100 Subject: [PATCH 46/50] Wrap strings w/ php gettext, update en_US locale + compile --- locale/en_US/LC_MESSAGES/messages.mo | Bin 21775 -> 23191 bytes locale/en_US/LC_MESSAGES/messages.po | 30 ++++++++++++++++++++++ templates/openvpn/general.php | 36 ++++++++++++++------------- 3 files changed, 49 insertions(+), 17 deletions(-) diff --git a/locale/en_US/LC_MESSAGES/messages.mo b/locale/en_US/LC_MESSAGES/messages.mo index d9fec98abcf58d48890136d8e32d629fd951ac0e..1a789dd42f68697f65c8d0205e7e508441d06a02 100644 GIT binary patch literal 23191 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 S;v~B2Pn<-@-v8rC^#1~zV$K}^ diff --git a/locale/en_US/LC_MESSAGES/messages.po b/locale/en_US/LC_MESSAGES/messages.po index 74627378..e715a5be 100644 --- a/locale/en_US/LC_MESSAGES/messages.po +++ b/locale/en_US/LC_MESSAGES/messages.po @@ -725,6 +725,36 @@ msgstr "Cancel" msgid "Enable this option to log openvpn activity." msgstr "Enable this option to log openvpn activity." +msgid "Authentification Method" +msgstr "Authentification Method" + +msgid "Username and password" +msgstr "Username and password" + +msgid "Certificates" +msgstr "Certificates" + +msgid "Enter username and password" +msgstr "Enter username and password" + +msgid "Certificates in the configuration file" +msgstr "Certificates in the configuration file" + +msgid "RaspAP supports certificates by including them in the configuration file." +msgstr "RaspAP supports certificates by including them in the configuration file." + +msgid "Signing certification authority (CA) certificate (e.g. ca.crt): enclosed in <ca> ... </ca> tags." +msgstr "Signing certification authority (CA) certificate (e.g. ca.crt): enclosed in <ca> ... </ca> tags." + +msgid "Client certificate (public key) (e.g. client.crt): enclosed in <cert> ... </cert> tags." +msgstr "Client certificate (public key) (e.g. client.crt): enclosed in <cert> ... </cert> tags." + +msgid "Private key of the client certificate (e.g. client.key): enclosed in <key> ... </key> tags." +msgstr "Private key of the client certificate (e.g. client.key): enclosed in <key> ... </key> tags." + +msgid "Configuration File" +msgstr "Configuration File" + #: includes/torproxy.php msgid "TOR is not running" msgstr "TOR is not running" diff --git a/templates/openvpn/general.php b/templates/openvpn/general.php index 21262db1..841f4085 100644 --- a/templates/openvpn/general.php +++ b/templates/openvpn/general.php @@ -11,17 +11,17 @@
- +
- +
-
Enter username and password
+
@@ -33,26 +33,28 @@
-
-
-
-
-
Certificates in the configuration file
-
-

RaspAP does not support the import of the required cerficates. Please paste them into the configuration file -

    -
  • Signing certification authority (CA) certificate (e.g. ca.crt): enclosed in <ca> ... </ca> tags
  • -
  • Client certificate (public key) (e.g. client.crt): enclosed in <cert> ... </cert> tags
  • -
  • Private key of the client certificate (e.g. client.key): enclosed in <key> ... </key> tags
  • -
-

+
+
+
+
+
+
+

+

    + +
  • ca.crt): enclosed in <ca> ... </ca> tags."); ?>
  • +
  • client.crt): enclosed in <cert> ... </cert> tags."); ?>
  • +
  • client.key): enclosed in <key> ... </key> tags."); ?>
  • +
    +
+

-
Configuration File
+
From d221c76e32e7ea14f494ba7e00880cda33929908 Mon Sep 17 00:00:00 2001 From: billz Date: Tue, 6 Apr 2021 12:48:27 +0100 Subject: [PATCH 47/50] Spacing + remove extraneous div --- templates/openvpn.php | 3 +-- templates/openvpn/general.php | 2 +- 2 files changed, 2 insertions(+), 3 deletions(-) diff --git a/templates/openvpn.php b/templates/openvpn.php index 4f76d6ec..4e0adaba 100755 --- a/templates/openvpn.php +++ b/templates/openvpn.php @@ -45,8 +45,7 @@
- -
+
diff --git a/templates/openvpn/general.php b/templates/openvpn/general.php index 841f4085..4cacd41a 100644 --- a/templates/openvpn/general.php +++ b/templates/openvpn/general.php @@ -63,7 +63,7 @@
- +
From aa6df37801df13e96ad73693362f7472948a9332 Mon Sep 17 00:00:00 2001 From: Bill Zimmerman Date: Tue, 6 Apr 2021 14:24:36 +0200 Subject: [PATCH 48/50] Update README.md --- README.md | 12 ++++-------- 1 file changed, 4 insertions(+), 8 deletions(-) diff --git a/README.md b/README.md index 9ff0fe56..ba9ff12d 100644 --- a/README.md +++ b/README.md @@ -27,11 +27,12 @@ As part of the initial rollout of Insiders, all previous one-time backers of Ras ## Exclusive features The following features are currently available exclusively to sponsors. A tangible side benefit of sponsorship is that Insiders are able to help steer future development of RaspAP. This is done through your Insiders access to discussions, feature requests, issues and pull requests in the private GitHub repository. -✅ Manage OpenVPN client configs +✅ [Manage OpenVPN client configs](https://docs.raspap.com/openvpn/#multiple-client-configs) +✅ [OpenVPN certificate authentication](https://docs.raspap.com/openvpn/#certificate-authentication) ✅ OpenVPN service logging ✅ Night mode toggle ✅ Restrict network to static clients -✅ WireGuard support +✅ [WireGuard support](https://docs.raspap.com/wireguard/) ⚙️ Traffic shaping (in progress) Look for the list above to grow as we add more exlcusive features. Have an idea or suggestion for a future enhancement? Start or join an [Insiders discussion](https://github.com/RaspAP/raspap-insiders/discussions) and let us know! @@ -40,12 +41,7 @@ Look for the list above to grow as we add more exlcusive features. Have an idea Following is a list of funding targets. When a funding target is reached, the features that are tied to it are merged back into RaspAP and released to the public for general availability. ### $500 -✅ Manage OpenVPN client configs -✅ OpenVPN service logging -✅ Night mode toggle -✅ Restrict network to static clients -✅ WireGuard support -⚙️ Traffic shaping (in progress) +The first **Insiders Edition** includes the exclusive features listed above. ## Frequently asked questions From d3c769b7484536318f7b78b4791b95978c4187fd Mon Sep 17 00:00:00 2001 From: billz Date: Fri, 9 Apr 2021 15:05:40 +0100 Subject: [PATCH 49/50] Layout fix: dashboard client widget + openvpn ipv4 --- app/css/custom.php | 5 +++++ app/css/hackernews.css | 5 +++++ app/css/lightsout.css | 5 +++++ templates/dashboard.php | 34 ++++++++++++++++++++++++---------- templates/openvpn/general.php | 6 ++++-- 5 files changed, 43 insertions(+), 12 deletions(-) diff --git a/app/css/custom.php b/app/css/custom.php index 6726a0a8..273a9629 100644 --- a/app/css/custom.php +++ b/app/css/custom.php @@ -124,6 +124,11 @@ i.fa.fa-bars:hover{ color: #858796; } +.info-value { + font-size: 0.7rem; + margin-left: 0.7rem; +} + .info-item-xs { font-size: 0.7rem; margin-left: 0.3rem; diff --git a/app/css/hackernews.css b/app/css/hackernews.css index 2d76492c..6aef443b 100644 --- a/app/css/hackernews.css +++ b/app/css/hackernews.css @@ -155,6 +155,11 @@ ul.nav-tabs, .nav-tabs .nav-link { color: #858796; } +.info-value { + font-size: 0.7rem; + margin-left: 0.7rem; +} + .info-item-xs { font-size: 0.7rem; margin-left: 0.3rem; diff --git a/app/css/lightsout.css b/app/css/lightsout.css index cc020f22..3e8e6e76 100644 --- a/app/css/lightsout.css +++ b/app/css/lightsout.css @@ -254,6 +254,11 @@ hr { color: #858796; } +.info-value { + font-size: 0.7rem; + margin-left: 0.7rem; +} + .info-item-xs { font-size: 0.7rem; line-height: 1.5em; diff --git a/templates/dashboard.php b/templates/dashboard.php index 47443ee8..597dc6b5 100755 --- a/templates/dashboard.php +++ b/templates/dashboard.php @@ -34,17 +34,31 @@

-
-
-

-

-

-

-

-

-

+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
-
+
diff --git a/templates/openvpn/general.php b/templates/openvpn/general.php index 4cacd41a..39573ce6 100644 --- a/templates/openvpn/general.php +++ b/templates/openvpn/general.php @@ -4,8 +4,10 @@
-
-
+
+
+
+
From ba948d99ddb3c6bc95a35d35eab167cf3ec54928 Mon Sep 17 00:00:00 2001 From: billz Date: Wed, 14 Apr 2021 19:58:34 +0100 Subject: [PATCH 50/50] Update install_wireguard from apt on RPi OS --- installers/common.sh | 14 +++----------- 1 file changed, 3 insertions(+), 11 deletions(-) diff --git a/installers/common.sh b/installers/common.sh index 26f3e92f..fe36303a 100755 --- a/installers/common.sh +++ b/installers/common.sh @@ -350,18 +350,10 @@ function _prompt_install_wireguard() { # Install Wireguard from the Debian unstable distro function _install_wireguard() { _install_log "Configure WireGuard support" - if [ "$OS" == "Raspbian" ]; then - echo "Installing raspberrypi-kernel-headers" - sudo apt-get install $apt_option raspberrypi-kernel-headers || _install_status 1 "Unable to install raspberrypi-kernel-headers" + if [ "$OS" == "Debian" ]; then + echo 'deb http://ftp.debian.org/debian buster-backports main' | sudo tee /etc/apt/sources.list.d/buster-backports.list || _install_status 1 "Unable to add Debian backports repo" fi - echo "Installing WireGuard from Debian unstable distro" - echo "Adding Debian distro" - echo "deb http://deb.debian.org/debian/ unstable main" | sudo tee --append /etc/apt/sources.list.d/unstable.list || _install_status 1 "Unable to append to sources.list" - sudo apt-get install dirmngr || _install_status 1 "Unable to install dirmngr" - echo "Adding Debian distro keys" - sudo wget -q -O - https://ftp-master.debian.org/keys/archive-key-$(lsb_release -sr).asc | sudo apt-key add - || _install_status 1 "Unable to add keys" - printf 'Package: *\nPin: release a=unstable\nPin-Priority: 150\n' | sudo tee --append /etc/apt/preferences.d/limit-unstable || _install_status 1 "Unable to append to preferences.d" - echo "Installing WireGuard" + echo "Installing wireguard from apt" sudo apt-get update && sudo apt-get install $apt_option wireguard || _install_status 1 "Unable to install wireguard" echo "Enabling wg-quick@wg0" sudo systemctl enable wg-quick@wg0 || _install_status 1 "Failed to enable wg-quick service"