NetGuard ist ein gebührenfreier und hocheffektiver Open-Source (GPLv3) Android Türsteher (Firewall), der den ansonst ungebremsten und unkontrollierten Datenverkehr der beheimateten Apps zu zügeln weiß. Das Scharfe dabei ist, dass man sein Smartphone nicht einmal rooten muss, um in den Genuss einer Firewall zu kommen. Netguard erstell hierfür extra einen lokalen VPN-Tunnel (Virtual Private Network) und prügelt den ganzen Datenverkehr geschnitten schön und kontrolliert durch den VPN-Tunnel in die weite Welt.
In der Pro-Edition, die man für einen kleinen Obolus (7€) spendiert bekommt, mutiert NetGuard auch zu einem genialen Werbe- und Trackingblocker, der nicht nur die Scheiße aus dem Webbrowser, sondern auch gleich den ganzen Rotz mit aus den installierten Apps entlaust. !!Achtung – Die Pro-Edition kann dank Google-Richtlinien nicht aus dem App-Store gezogen werden!!
Ein paar leckere Features:
- Tethering Support
- NetGuard versendet keine Telemetriedaten
- Blockiert den Zugriff auf bestimmte Domains
- Support von IPv4/IPv6 TCP/UDP Verbindungen
- Unterstützt die Benutzung von Multi-Devices (Phone, Tablet)
- Optionalen Zugriff erlauben, wenn Bildschirm eingeschaltet ist
- Material-Design mit verschiedenen Farbeinstellungsmöglichkeiten
- Benachrichtigung, wenn eine Anwendung versucht aufs Internet zuzugreifen
- Aufzeichnung der Netzwerknutzung pro Anwendung inklusive Export-Funktion (Pro-Edition)
- Durch den Werbe- und Trackingblocker spart man hart Batterie/Datenvolumen (Pro-Edition)
- Funktion zum Sperren bei Roaming, sperren von Systemanwendungen und Verbindung erlauben, wenn Bildschirm eingeschaltet ist
- Traffic-Logs – Ermöglicht das Anzeigen und Exportieren detaillierten ausgehenden IP-Verkehrsprotokolls für alle Anwendungen (Pro-Edition)
Ansicht – Netguard Einstellungen:
Bonüs – NetGuard Autodownload Filterlist Skript:
Für die Werbe- und Konsumterror-Trackingblocker-Funktion habe ich ein Bash-Skript zusammengeschustert, welches 1x pro Woche per Cronjob automatisch mehrere verlesene Blocklisten downloaded, hart filtert, in eine einzelne Datei koppelt, vorhandene Duplikate dezimiert und dann zum fröhlichen Download in den Webspace verschiebt.
#!/usr/bin/env bash
#==========================================================
# Autor: Hackspoiler
# URL: https://hackspoiler.de
# Scriptname: sec-netguard-blocklist.sh
# Scriptpath: /root/server-scripts/
# Usage: sec-netguard-blocklist.sh
# Version: 1.0
# Date: 19.02.2020
# Shellcheck: True
# Package: curl
# Modification: 06.04.2023
# Descritpion: Download multiple Blocklist-Files, combine sem in one File (netguard.txt) to rule dem all
#==========================================================
# Set Bash-Defaults
set -o errexit # Beenden, falls ein Befehl fehlschlägt
set -o nounset # Beenden, falls ein ungesetzter Variablenname verwendet wird
set -o pipefail # Beenden, falls eine Pipeline fehlschlägt
# Les Variablés
readonly DOMAIN_NAME="hackspoiler.de"
readonly NETGUARD_FINAL_FILE="netguard.txt"
readonly FL_LIST_DL_DIR="/tmp"
readonly FL_LIST_UL_DIR="/srv/${DOMAIN_NAME}/live/pub"
# Funktion - Download und Filter handverlesener Open-Source Blocklists
dl_and_fl_bl_list() {
local BLOCKLIST_URL="${1}"
local BLOCKLIST_FILE_NAME="${2}"
curl --silent "${BLOCKLIST_URL}" | sed -e '/^#/d' -e '/^$/d' -e '/^::1/d' -e '/^ff/d' -e '/fe80/d' > "${BLOCKLIST_FILE_NAME}"
}
# Download der Open-Source Blocklists
dl_and_fl_bl_list "https://blocklistproject.github.io/Lists/ads.txt" "${FL_LIST_DL_DIR}/netguard_blocklist.txt"
dl_and_fl_bl_list "https://raw.githubusercontent.com/badmojr/1Hosts/master/Pro/hosts.txt" "${FL_LIST_DL_DIR}/netguard_1Hosts.txt"
dl_and_fl_bl_list "https://raw.githubusercontent.com/StevenBlack/hosts/master/alternates/fakenews-gambling-porn-social/hosts" "${FL_LIST_DL_DIR}/netguard_stevenblack.txt"
# Blocklisten zusammenführen
cat "${FL_LIST_DL_DIR}/netguard_blocklist.txt" "${FL_LIST_DL_DIR}/netguard_1Hosts.txt" "${FL_LIST_DL_DIR}/netguard_stevenblack.txt" > "${FL_LIST_DL_DIR}/netguard_main.txt"
# Doubletten aus Blockliste rausballern
sort --unique "${FL_LIST_DL_DIR}/netguard_main.txt" > "${FL_LIST_DL_DIR}/${NETGUARD_FINAL_FILE}"
# Blockliste auf Webspace (DocumentRoot) schieben
cp "${FL_LIST_DL_DIR}/${NETGUARD_FINAL_FILE}" "${FILTERLIST_UL_DIR}"
# Berechtigung auf Nur lesen anpassen
chmod 444 "${FILTERLIST_UL_DIR}/${NETGUARD_FINAL_FILE}"