Ubuntu server kao router gateway (i kao VPN klijent za sve uređaje na mreži)
Tema
Konfiguriranje Ubuntu servera da bude ruter umjesto rutera. Po želji: konfiguriranje Ubuntu servera da bude VPN klijent za sve uređaje u LAN-u.
Preduvjeti
Instaliran i konfiguriran Ubuntu server s dvije mrežne kartice:
%ethEXTERNAL%(spojena na ruter ISP providera, IP adresa npr.192.161.1.2/16; interface u stvarnosti ima neki kretenski naziv tipa “eth1s5”)%ethINTERNAL%(spojena na switch u LAN-u na kojega su spojena sva računala u lokalnoj mreži; IP adresa npr.10.100.100.100/8; stvarni naziv NIC-a je kretenski kao i onaj gore)
SysCtl
nano /etc/sysctl.conf
Dodaj ili promijeni:
net.ipv4.ip_forward=1 net.ipv6.conf.all.forwarding=0 # DISABLE IPV6 - Ako želiš net.ipv6.conf.all.disable_ipv6=1 net.ipv6.conf.default.disable_ipv6=1 net.ipv6.conf.lo.disable_ipv6=1
Primijeni pravila:
sysctl -p
IPtables
iptables --table nat --append POSTROUTING --out-interface %ethEXTERNAL% -j MASQUERADEiptables --append FORWARD --in-interface %ethINTERNAL% -j ACCEPTiptables-save
Klijenti
Sada svim računalima i mobitelima u LAN-u rekonfiguriraj postavke mrežne kartice i stavi da im je gateway IP adresa 192.168.1.2
Naravno, to možeš napraviti i DHCP serverom, no to je tema za drugu priču.
Wireguard
Ako želiš da tu Ubuntu bude i VPN klijent putem kojega svi na mreži idu “van”:
apt install wireguard-tools resolvconf net-tools -y
Generiraj konfiguracijski fajl na web stranicama svoga VPN providera i spremi to kao datoteku
/etc/wireguard/wg0.conf. Sadržaj:
[Interface] PrivateKey = blablaserkenjprivatekey= ListenPort = 56396 MTU = 1292 DNS = 1.1.1.1 Address = 10.11.12.13/24 [Peer] PublicKey = +blablaserkenjpublickey= AllowedIPs = 0.0.0.0/0 Endpoint = 123.234.123.234:1443 PersistentKeepalive = 25
IPtables za Wireguard
iptables -t nat -A POSTROUTING -o wg0 -j MASQUERADEiptables-save
Rute
Dodaj neke rute za koje želiš da idu putem tvog ISP-a, a ne putem VPN-a (dodaj u ovo banke i sl.):
ip route add to 85.209.12.20 via 192.168.1.1 # gov.hrip route add to 89.249.109.24 via 192.168.1.1 # e-predmet.pravosudje.hrip route add to 185.20.29.73 via 192.168.1.1 # e-porezna.porezna-uprava.hrip route add to 91.194.242.66 via 192.168.1.1 # mycheckout.eway2pay.comip route add to 66.254.114.41 via 192.168.1.1 # golematorebabe.hr
Napomena:192.168.1.1 je adresa routera kojega ti je poklonio tvoj dragi ISP.
Razno
Ovo NEĆE raditi automatski nakon boota, pa se neke radnje mora provesti ručno nakon restarta. Detalje za taj dio ću staviti naknadno.
Ovo NIJE killswitch konfiguracija. Ako padne Wireguard – komunikacija će se nastaviti “normalnim” kanalom. Trenutačno nemam blagog pojma kako napraviti killswitch – dopisat ću kad pokradem s Neta.
Nakon svega ovoga za svaki slučaj na Windows mašinama napravi netsh winhttp reset proxy jer postoji mogućnost (vjerojatnost, čak) da moroni iz multibilijunske firme nisu bili u stanju detektirati promjenu i nastupanje novog rutera umjesto rutera, nego će prdit da nemaš internet u jednoj Office applikaciji, a uredno biti prijavljeni na Microsoft account u drugoj ili čak u istoj.
ubuntu server router vpn client xubuntu xserver xrouter xvpn xclient gateway xgateway