Advertisements

Docker Pritunl OpenVPN, Shadowsocks, Squid, and More…

Advertisements

Mga mamser, ito ang aking project na pinangalanan kong Underpass – A Docker-based Personal Tunneling Server.

Advertisements

Compilation ito ng mga Docker apps na related sa VPN, proxy, atbp. Na-bundle ko lang into an All-In-One deployment. Ito ang mga kasamang apps sa Underpass:

Core Services:

  • Pritunl VPN with IPv6 support (from goofball222)
  • Wireguard (from linuxserver)
  • Shadowsocks (from gists)
  • Dante SOCKS (from wernight)
  • Squid (from b4tman)
  • OpenSSH-Server (from yuriyvlasov)
  • Portainer-CE
  • Netdata
  • MongoDB

Optional Services *:

  • Heimdall (from linuxserver)
  • Nginx Proxy Manager (from jlesage)
  • Droppy (from silverwind)
  • mongo-express
  • rdesktop (from linuxserver)
  • SoftEther (from cenk1cenk2)

Requirements:

  • Ubuntu 18.04 or CentOS 7 only, x64, fresh install
  • 2GB RAM, 1 vCPU VPS

Unfortunately, di kakayanin ng Underpass ang 1GB RAM na server. Ang minimum system requirements ay 2GB RAM, 1vCPU VPS. Na-test ko na sa Hetzner Cloud, Digital Ocean, tsaka Google Cloud. Nag-out of memory ang Squid proxy sa 1GB VPS.

Since Docker-based itong Underpass, pwede ninyong i-deploy sa existing system na supported ng Docker. Just make sure na naintindihan ninyo ang networking and firewall aspects ng Docker.

Installation:

CentOS 7, as root:
bash <(curl -s https://raw.githubusercontent.com/gabotronix/underpass/master/install_centos7.sh)

Ubuntu 18.04, as root:
bash <(curl -s https://raw.githubusercontent.com/gabotronix/underpass/master/install_ubuntu.sh)

Estimated Install Time:
CentOS 7, 2GB = ~11 minutes
Ubuntu 18.04, 2GB = ~6 minutes

Advertisements

Configuration:
Since medyo marami ang Docker apps na kasama sa Underpass, kung pwede po mga mamser, basahin niyo nalang ang configuration steps sa repository ko:

https://github.com/gabotronix/underpass#initial-configuration

Features:

  • Web UI for OpenVPN server via Pritunl
  • Pritunl VPN supports IPv6, TCP, UDP (Wireguard not supported)
  • Web UI for Docker containers via Portainer
  • Web UI for server load via Netdata
  • Centralized and less complex configuration
  • Customizable port assignments via a text file
  • Clean, easy, and repeatable installation
  • No worries on app dependencies
  • Only fail2ban is running on the Docker host, the rest are Docker-based
  • Open ang lahat ng code para pwede niyong busisiin at pag-aralan

Maganda ito for personal use mga mamser kasi bukod sa mga web panels, madaling i-edit at nasa iisang folder location lang ang mga configuration files. Minimal effort sa pag-configure ng mga services.

————————————————-

Preview of Web UI’s:

Advertisements

Pritunl OpenVPN server creation:

pritunl_servers_tcp_udp.png

Portainer – stop, restart, stop, delete containers, install other containers, check logs in realtime, check container disk, RAM, CPU usage, access container console, and more

portainer_container_list.png

Netdata – check server load, memory usage, network load, other server stats

netdata.png

————————————————-

* Optional Services Description
Kung malakas ang VPS specs niyo mga mamser, marami pa kayong pwede i-install.

Heimdall
Ang Heimdall ay isang application dashboard. Para hindi kayo mahirapang mag-memorize ng IP and port URL combination, ilagay niyo lang sa kanya ang mga access URLs ninyo para isang page nalang ang bisitahin niyo next time.

Nginx Proxy Manager
Ito ay isang Web panel para sa reverse proxy with built-in SSL via Let’s Encrypt. Kung may sarili kayong domain name, pwede niyong i-set ang mga access URL’s ninyo para mas malinis at para walang browser privacy warning.

Droppy
Ito ay isang file hosting application. Kung gusto niyong i-share ang mga ovpn o kung ano pang configuration files, pwede niyong i-upload sa Droppy at i-share ang link.

mongo-express
Ito ay isang web UI para sa MongoDB, ang database na ginagamit ng Pritunl VPN.

rdesktop
Pwede niyong i-access directly ang VPS ninyo via Remote Desktop. Kumbaga lalagyan niya ng desktop environment ang VPS. Di masyado useful, pero pwede kayong mag-browse.

Softether L2TP VPN
Kung di kayo kuntento sa OpenVPN, pwede niyong i-install ito. Di ako masyadong familiar sa configuration nito.

————————————————-

Testing
Na-test ko na itong Underpass deployment ko mga mamser, pero di ko kabisado lahat. Hopefully, ma-test niyo rin at ma-share ang mga configs and experiences ninyo.

Apps Tested:

  • HTTP Proxy Injector on Windows 10 (via SSH – HTTP proxy – Payload – CONNECT method)
  • HTTP Proxy Injector on Android (via Shadowsocks)
  • HTTP Proxy Injector on Android (via SSH – HTTP proxy – Payload – CONNECT method)
  • Shadowsocks client for Windows
  • Wireguard client for Windows
  • Wireguard client for Android
  • Squid HTTPS authenticated proxy via Proxifier for Windows
  • Dante SOCKS5 authenticated proxy via Proxifier for Windows
  • OpenVPN client with http-proxy, http-proxy-user-pass config
  • OpenVPN client with socks-proxy, username and password via text file
  • Pritunl client with http-proxy, http-proxy-user-pass config
  • Pritunl client with socks-proxy, username and password via text file

Not working:

  • OpenVPN config containing http-proxy-option CUSTOM-HEADER

Advertisements

76 thoughts on “Docker Pritunl OpenVPN, Shadowsocks, Squid, and More…

  1. Hello! I’ve been following your blog for a long time now and finally got the courage to go ahead and give you a shout out from Lubbock Tx! Just wanted to say keep up the good job!

Leave a Reply

Your email address will not be published. Required fields are marked *

Advertisements