A "Swiss Army proxy-knife" to avoid geoblocking in Video on Demand and censorship in your whole network!
There are many devices in my network, which do not allow to set a proxy manually, I have always had to prepare my router or a computer, which was a lot of time and configuration effort.
With this script, I have the possibility to offer a proxy in my whole network for desired domains. Even if DNS or transparent router. Furthermore I can choose which proxy engine should be used.
It couldn't be easier!
This Script uses a List of (Free)-Proxies and Domains that allows you to set up unrestricted access to streaming content on your smart-TV, Kodi, Emby Mediaserver and other devices to watch your media region-free like:
Zattoo
HULU (US region)
Netflix Originals
Amazon Prime
BBC iPlayer
Youtube
Discovery
Disney Channel Plus
Fox Now / Sports Go / News / Showtime
HBO Now
And many, many many more!
- Router (transparent) Mode (This can be use on a OpenWRT Route or something similar)
- Smart (DNS) Mode (Set this to any device where you can set a DNS Server Setting)
- Tor
- Squid (incl. Certcreator for SSL-Bump Functionality)
- Redsocks
- Proxychains
- Windscribe (Requires an account: https://windscribe.com/signup)
- Socks4, Socks5
- HTTP/S
!!!THIS VERSION IS BETA AND ONLY TESTED ON DEBIAN/UBUNTU SYSTEMS! SO PLEASE WRITE AN ISSUE IF YOU HAVE SOME TROUBLE HERE!!!
sudo apt install iproute2 iptables git sniproxy dnsmasq
# If you wish to use the integrated Web-Server
# apt install php
git clone https://github.com/suuhm/unblock-proxy.sh /opt/unblock-proxy.sh
chmod +x /opt/unblock-proxy.sh/unblock-proxy.sh && ln -s /opt/unblock-proxy.sh/unblock-proxy.sh /usr/bin/
sudo apt install tor
VER=4.13
sudo apt install build-essential openssl libssl-dev pkg-config privoxy
mkdir -p ~/squid4 && cd ~/squid4
wget http://www.squid-cache.org/Versions/v4/squid-$VER.tar.gz
tar -xzvf squid-$VER.tar.gz && cd squid-$VER
echo "Start Compiling:" ; sleep 1
./configure --with-default-user=proxy --with-openssl --enable-ssl-crtd
make && sudo make install
chown proxy:proxy -R /usr/local/squid/
# Initial crt database (For problems use 10M or more)
/usr/local/squid/libexec/security_file_certgen -c -s /usr/local/squid/var/cache/squid/ssl_db -M 4MB
sudo apt install redsocks
sudo apt install libevent-dev build-essential
git clone https://github.com/darkk/redsocks ~/redsocks
cd ~/redsocks && make
sudo ln -s ~/redsocks/redsocks /usr/bin/
sudo apt install proxychains
To install this amazing VPN you need to create an account and follow these instructions here: https://windscribe.com/guides/linux#how-to
or
sudo wget https://windscribe.com/install/desktop/linux_deb_x64 -O /tmp/ws.deb
sudo apt install --no-install-recommends /tmp/ws.deb
Usage: unblock-proxy.sh main-mode proxy-engine [options]>
main-mode:
transparent Activates the transparent routing-gw.
dns Activates the DNS Smart-Proxy.
proxy engines:
-t, --tor Activates the TOR Engine.
-s, --squid Activates the Squid Engine.
-r, --redsocks Activates the RedSocks Engine.
-p, --proxychains Activates the proxychains Engine.
-w, --windscribe= Activates the windscribe Engine.
(Optional set Country: --windscribe=US or -w US or without arguments!)
options:
-i, --in-if= Sets the in-interface Device.
-o, --out-if= Sets the out-interface Device.
-S, --ssh-socks Set own Server as Parent Socks-Proxy over SSH-tunnel.
(Can't be use with tor-Engine!)
-w, --web-admin Starts a small Webserver-Backend at Port 8383
(Requires php framework >=5.4!)
-R, --reset Resets all the IPTABLES and MASQ Entries.
-C, --proxycheck Just scans/checks the Proxies in (/opt/unblock-proxy/proxies.lst).
-d, --debug Show debug-verbose messages into the system log.
-v, --version Prints script-version.
-h, --help Print this help message.
unblock-proxy.sh transparent --tor
unblock-proxy.sh transparent --redsocks --debug
Using Transparent Router-Mode with Redsocks Engine and pull off Debug-infos (Same but: Short Parameters)
unblock-proxy.sh transparent -r -d
unblock-proxy.sh dns --squid --debug --web-admin
unblock-proxy.sh dns -s --ssh-socks --debug
unblock-proxy.sh dns --windscribe=TH --debug
unblock-proxy.sh dns --proxychains --in-if=eth2 -o wlan0 -d
unblock-proxy.sh -R
unblock-proxy.sh -C
This Version is a pure beta version! When you find bugs, please let me know.
Thanks.
This program is free software; you can redistribute it and/or modify it under
the terms of the GNU General Public License as published by the Free Software
Foundation
This program is distributed in the hope that it will be useful, but WITHOUT
ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS
FOR A PARTICULAR PURPOSE. See the GNU General Public License for more
details.