Skip to content

Instantly share code, notes, and snippets.

View enginefeeder101's full-sized avatar

Engine Feeder enginefeeder101

  • The Netherlands
View GitHub Profile
@enginefeeder101
enginefeeder101 / HowTo.md
Last active September 15, 2023 14:40
WireGuard VPN network

WireGuard VPN network

This example shows how to setup a WireGuard VPN network with a Linux server that is publicly accessible and serveral OpenWRT nodes that are not. One of these client nodes is used as network wide 'exit node'. This makes it possible to easily configure network with an exit node which is a network that is not under your control or cannot be (easily) configured to setup port forwarding.

Preparation

Generate private keys for all clients and a pre-shared key (PSK) for every connection pair.

(umask 0377; wg genkey > peerA.key)
wg pubkey < peerA.key > peerA.pub
@enginefeeder101
enginefeeder101 / testports.sh
Created November 17, 2015 21:20
Test outgoing open ports
#!/bin/bash
task(){
LC_ALL=C nc -vzw5 portquiz.net $1 2>&1 | grep -v 'Connection timed out'
}
N=50 # Specify number of ports to check at once
(
for port in {1..65535}; do # Specify port range to check here
((i=i%N)); ((i++==0)) && wait
@enginefeeder101
enginefeeder101 / auth_provider.py
Last active January 1, 2023 22:37 — forked from sidoh/auth_provider.py
Custom HomeAssistant auth provider
import logging
import jwt
from urllib.parse import urlparse
import urllib.request
from collections import OrderedDict
from typing import Any, Dict, Optional, cast
import voluptuous as vol
@enginefeeder101
enginefeeder101 / low-battery-beep.sh
Created December 28, 2022 10:43
Beep on low battery (even when muted)
#!/bin/bash
# Script to detect low battery volume while discharging and beep when so
# Prevent beeps with: `touch /tmp/no-beep'
while true
do
status=$(cat /sys/class/power_supply/BAT0/status)
full=$(cat /sys/class/power_supply/BAT0/energy_full)
now=$(cat /sys/class/power_supply/BAT0/energy_now)
low=$(echo "$now / $full < 0.1" | bc -l)
@enginefeeder101
enginefeeder101 / make-mega-adblock-hostsfile.sh
Last active June 16, 2018 00:23
Create Mega Adblock Hostsfile for use with Dnsmasq (Modified from Pi-hole)
#!/bin/bash
# Modified Pi-hole script to generate a generic hosts file
# for use with dnsmasq's addn-hosts configuration
# original : https://github.com/jacobsalmela/pi-hole/blob/master/gravity-adv.sh
# forked from: https://gist.github.com/chrisvella/5f3a18f1e442153cd685
### Configuration ###
# Server to send ads to
adblock='0.0.0.0'
@enginefeeder101
enginefeeder101 / PKGBUILD-networkmanager.patch
Created May 4, 2016 21:35
No more DNS-leaks for VPN's with NetworkManager and dnsmasq
Author: Engine Feeder <enginefeeder101@users.noreply.github.com>
Date: Wed May 4 21:22:55 2016 +0200
Do not use split DNS for VPN configs and use only the DNS provided by the VPN.
diff --git a/var/abs/extra/networkmanager/PKGBUILD b/PKGBUILD
index 0d6dd20..de8f1ec 100644
--- a/var/abs/extra/networkmanager/PKGBUILD
+++ b/PKGBUILD
@@ -22,10 +22,12 @@ makedepends=(intltool dhclient iptables gobject-introspection gtk-doc