UniFi controller, Pi-hole a SoftEther VPN na RPi

Nedávno jsem se rozhodl aktualizovat domácí síť a postupně přejít na síťové prvky od Ubiquity. Jako základ jsem se rozhodl pořídit Ubiquiti UniFi Security Gateway. Při bližším prozkoumání produktů od Ubiquity zjistíte, že k Security Gateway budu ještě potřebovat UniFi Controller, který stojí okolo dvou tisíc. Další možností bylo konečně nějak užitečně využít Raspberry Pi, které se mně válelo doma a nainstalovat UniFi controller na něj. Když už jsem s tím začal, tak mě napadlo, že bych si mohl rozjet PI-hole a začít pro celou síť aspoň trochu filtrovat reklamu a podobný neřád. A po nedávném incidentu, kdy jsem se v baru připojil ke kompromitované WiFi jsem se rozhodl zprovoznit vlastní VPNku. Následující postup jsem prováděl na Raspberry Pi 3B+ a všechno šlape jak má.

Aktualizace systému

sudo apt-get update
sudo apt-get upgrade -y
sudo apt-get autoremove
sudo apt-get autoclean

UniFi controller

Instalace balíčků pro UniFi controller

sudo apt-get install haveged -y
sudo apt-get install openjdk-8-jre-headless -y

Úprava rozdělení paměti

sudo raspi-config
# Možnost 7. Advanced Options
#  - A3 Memory Split
#    - Změnit z 64 na 16MB

Přidání repozitářů

echo 'deb http://www.ui.com/downloads/unifi/debian stable ubiquiti' | sudo tee /etc/apt/sources.list.d/100-ubnt-unifi.list
sudo wget -O /etc/apt/trusted.gpg.d/unifi-repo.gpg https://dl.ubnt.com/unifi/unifi-repo.gpg

sudo apt-get update

Instalace UniFi controlleru

sudo apt-get install unifi -y

Zastavení MongoDB

UniFi si jako závislost nainstaluje MongoDB, která zbytečně konzumuje zdroje.

sudo systemctl stop mongodb
sudo systemctl disable mongodb

Připojení do webového rozhrani

https://<rpi_adresa>:8443

PI-hole

Nastavení statické IP

PI-hole potřebuje aby mělo rasberry nastavenou statickou IP adresu.

Otevření souboru pro editaci satické IP adresy

sudo nano /etc/dhcpcd.conf

Nastavení IP

Nastavení adresy se může lišit v závislosti rozsahu lokální sítě. Ukázka je pro síť 192.168.1.0/24.

# název rozhraní na kterém raspberry naslouchá
interface eth0

# samotné nastavení IP adresy rozhraní
static ip_address=192.168.1.250/24

# nastavní adresy brány do internetu, zpravidla lokální adresa routeru
static routers=192.168.1.1

# nastavení DHCP serverů
# jako první je lokální router
# jako druhý CloudFlare DNS server
static domain_name_servers=192.168.1.1 1.1.1.1

Instalace PI-hole

curl -sSL https://install.pi-hole.net | sudo bash

Nastavení hesla do PI-hole

pihole -a -p

SoftEther VPN

Stažení SoftEther VPN

Verze je aktuální k datu vytvořní článku. Aktuální verze se nachází na http://softether-download.com. Pro RPi v následujích nabídkách vyberte:

  • SoftEther VPN Server
  • Linux
  • ARM EABI (32bit)
wget https://github.com/SoftEtherVPN/SoftEtherVPN_Stable/releases/download/v4.29-9680-rtm/softether-vpnserver-v4.29-9680-rtm-2019.02.28-linux-arm_eabi-32bit.tar.gz

Rozbalení stažného archivu

tar zxvf softether-vpnserver-v4.29-9680-rtm-2019.02.28-linux-arm_eabi-32bit.tar.gz

Přesun do složky s VPN serverem

cd vpnserver

Zkompilování VPN serveru

Pro úspěšné zkompilování je nutné na všechny otázky o licencích odpovědět Yes. 🙂

make

Opuštění složky VPN serveru

cd ..

Přesunutí VPN serveru

sudo mv vpnserver /usr/local/

Vytvoření "linku" pro snadný přístup do složky VPN serveru z domovského adresáře

ln -s /usr/local/vpnserver vpnserver

Přesunutí do nového umístění VPN serveru

cd /usr/local/vpnserver

Nastavení práv k souborům

sudo chmod 600 *
sudo chmod 700 vpncmd vpnserver

Základní otestování funkčnosti

./vpncmd

Vpn command line nabídne několik možností. Vyberte možnost 3. Pokud vše proběhne v pořádku a nevyskytne se nějaká chyba, ukončete pomocí příkazu exit.

Nastavení spouštění VPN serveru po restartu systému

Vytvoření konfiguračního souboru

sudo nano /etc/init.d/vpnserver

Obsah konfiguračního souboru

#!/bin/bash
# chkconfig: 2345 99 01
# description: SoftEther VPN Server
DAEMON=/usr/local/vpnserver/vpnserver
LOCK=/var/lock/subsys/vpnserver
test -x $DAEMON || exit 0
case "$1" in
start)
$DAEMON start
touch $LOCK
;;
stop)
$DAEMON stop
rm $LOCK
;;
restart)
$DAEMON stop
sleep 3
$DAEMON start
;;
*)
echo "Usage: $0 {start|stop|restart}"
exit 1
esac
exit 0

Nastavení práv k souboru

sudo chmod 755 /etc/init.d/vpnserver

Spuštění VPN serveru

sudo /etc/init.d/vpnserver start

Registrace startovacího skriptu

sudo update-rc.d vpnserver defaults

Nastavení hesla správce VPN serveru

cd ~/vpnserver
./vpncmd

Po sputění command line nástroje vyberte možnost 1. Všechny následující dotaz pouze "odentrujte".

Nastavení hesla se provede pomocí příkazu:

ServerPasswordSet

Po potvrzení příkazu enterem budete vyzvání k zadání hesla. Po nastavení hesla opustíte rozhraní pomocí příkazu exit.

Porty pro přesměrování

  • 50
  • 51
  • 500
  • 4500

Nastavení

Pokud máte Mac nebo Windows, stáhněte si SoftEther VPN Manager a pomocí něj se připojte na IP adresu vašeho RPi s VPN serverem.

Nastavení VPN v článku SoftEther VPN konfigurace L2TP/IPSec

Napsat komentář

Vaše emailová adresa nebude zveřejněna. Vyžadované informace jsou označeny *