🤔 Šta ćeš dobiti?
Postavićeš WireGuard VPN server kod kuće (npr. u Srbiji) i WireGuard klijent tamo gdje si trenutno (npr. u Nemačkoj). Tvoj TV u Nemačkoj će se povezati na server u Srbiji preko VPN tunela, pa će Netflix misliti da si u Srbiji.
Arhitektura Sistema
(Srbija)
(Nemačka)
Prednosti ovog pristupa:
- ✅ Besplatno - Nema mesečnih troškova
- ✅ Brzo - WireGuard je najbrži VPN protokol
- ✅ Privatno - Samo ti imaš pristup
- ✅ Skalabilno - Možeš dodati više uređaja
📋 Šta ti treba
Jedan za server (kuća), drugi za klijent (trenutna lokacija)
Za Raspberry Pi OS instalaciju
Za instaliranje OS-a na kartice sa računara
Za napajanje oba Raspberry Pi Zero 2 W uređaja
Za povezivanje Ethernet adaptera (stabilnija veza od Wi-Fi)
Za stabilniju mrežnu konekciju umesto Wi-Fi
Ako ne koristiš Ethernet adaptere
Za port forwarding (UDP port 51820)
Sa mogućnošću manuelne network konfiguracije
Za inicijalni setup oba uređaja
Korišćenje VPN-a za pristup sadržaju van tvoje geografske zone može kršiti Netflix Terms of Service. Ovo je edukativni vodič. Koristi na sopstvenu odgovornost.
Priprema Raspberry Pi OS
Instaliraj Raspberry Pi OS na obe microSD kartice.
Preuzimanje Raspberry Pi Imager
- Preuzmi sa: raspberrypi.com/software
- Instaliraj i pokreni
Konfiguracija za SERVER Pi (kod kuće)
- Ubaci prvu microSD karticu u računar
- U Imager-u izaberi Raspberry Pi OS Lite (64-bit)
- Klikni na ⚙️ (Advanced Options)
| Opcija | Vrednost |
|---|---|
| Hostname | vpn-server |
| Enable SSH | ✅ (Use password authentication) |
| Username | admin |
| Password | Tvoja lozinka |
| Configure Wi-Fi | ✅ (Unesi SSID i lozinku) |
| Locale | Europe/Belgrade |
- Klikni WRITE i sačekaj
Konfiguracija za CLIENT Pi (tamo gde si)
Ponovite isti proces sa drugom microSD karticom, ali sa sledećim razlikama:
| Opcija | Vrednost |
|---|---|
| Hostname | vpn-client |
| Configure Wi-Fi | ✅ (Wi-Fi na trenutnoj lokaciji) |
Prvo Pokretanje i SSH
Pokreni SERVER Pi
- Ubaci microSD karticu u SERVER Pi
- Uključi napajanje
- Sačekaj 2-3 minuta da se pokrene i poveže na Wi-Fi
Nađi IP Adresu
Na svom računaru (na istoj mreži kao SERVER Pi), pronađi njegovu IP:
ping vpn-server.local
Ili koristi Angry IP Scanner ako .local ne radi.
SSH Login
ssh admin@vpn-server.local
Unesi lozinku koju si podešavao u Imager-u.
Ažuriraj Sistem
sudo apt update && sudo apt upgrade -y
Ponovite isti proces za CLIENT Pi nakon što završite sa SERVER Pi konfiguracijom.
Instalacija WireGuard na SERVER Pi
SSH-uj se na SERVER Pi i instaliraj WireGuard:
sudo apt install wireguard -y
Generiši Server Ključeve
cd /etc/wireguard
sudo wg genkey | sudo tee privatekey | sudo wg pubkey | sudo tee publickey
Sačuvaj Ključeve
sudo cat privatekey
sudo cat publickey
Kopiraj oba ključa u notepad - trebaju ti kasnije!
Nikada ga ne deli sa drugima. Public key možeš slobodno deliti.
Konfiguracija WireGuard Server-a
Napravi Config Fajl
sudo nano /etc/wireguard/wg0.conf
Server Konfiguracija
[Interface]
Address = 10.0.0.1/24
ListenPort = 51820
PrivateKey = SERVER_PRIVATE_KEY_OVDE
# IP Forwarding
PostUp = sysctl -w net.ipv4.ip_forward=1
PostUp = iptables -A FORWARD -i wg0 -j ACCEPT
PostUp = iptables -t nat -A POSTROUTING -o wlan0 -j MASQUERADE
PostDown = iptables -D FORWARD -i wg0 -j ACCEPT
PostDown = iptables -t nat -D POSTROUTING -o wlan0 -j MASQUERADE
# Klijent (CLIENT Pi)
[Peer]
PublicKey = CLIENT_PUBLIC_KEY_OVDE
AllowedIPs = 10.0.0.2/32
Zameni:
- SERVER_PRIVATE_KEY_OVDE - sa privatnim ključem SERVER Pi-a
- CLIENT_PUBLIC_KEY_OVDE - ostaviš prazno za sada (dodaćeš kasnije)
Sačuvaj fajl: CTRL + O, zatim ENTER, pa CTRL + X.
Postavi Dozvole
sudo chmod 600 /etc/wireguard/wg0.conf
sudo chmod 600 /etc/wireguard/privatekey
Port Forwarding na Ruteru
Potrebno je da omogućiš da WireGuard server bude dostupan sa interneta.
Pronađi Javnu IP Adresu
curl ifconfig.me
Zapiši ovu IP adresu - biće ti potrebna kasnije.
Podesi Port Forwarding
- Uloguj se na svoj ruter (obično 192.168.1.1 ili 192.168.0.1)
- Nađi sekciju Port Forwarding ili Virtual Server
- Dodaj novi rule:
| Parametar | Vrednost |
|---|---|
| Protocol | UDP |
| External Port | 51820 |
| Internal IP | IP adresa SERVER Pi-a |
| Internal Port | 51820 |
- Sačuvaj izmene
Poželjno je da SERVER Pi ima statičnu lokalnu IP adresu (npr. uvek 192.168.1.100). Podesi to u ruteru pod DHCP Reservation.
Startovanje WireGuard Server-a
sudo systemctl enable wg-quick@wg0
sudo systemctl start wg-quick@wg0
Provera Statusa
sudo systemctl status wg-quick@wg0
Ako vidiš "active (exited)" - server radi!
sudo wg show
Trebalo bi da vidiš wg0 interfejs sa listom peer-ova.
Sada prelazimo na CLIENT Pi.
Instalacija WireGuard na CLIENT Pi
Uzmi CLIENT Pi, uključi ga na svojoj trenutnoj lokaciji (npr. u Nemačkoj), i SSH-uj se na njega:
ssh admin@vpn-client.local
Instaliraj WireGuard
sudo apt install wireguard -y
Generiši CLIENT Ključeve
cd /etc/wireguard
sudo wg genkey | sudo tee privatekey | sudo wg pubkey | sudo tee publickey
Sačuvaj CLIENT Ključeve
sudo cat privatekey
sudo cat publickey
Zapiši CLIENT public key - dodaćeš ga u SERVER config.
Ažuriraj SERVER Config sa CLIENT Public Key-om
Vrati se na SERVER Pi SSH sesiju i edituj config:
sudo nano /etc/wireguard/wg0.conf
U [Peer] sekciji, dodaj CLIENT public key:
[Peer]
PublicKey = PASTE_CLIENT_PUBLIC_KEY_HERE
AllowedIPs = 10.0.0.2/32
Sačuvaj i restartuj server:
sudo systemctl restart wg-quick@wg0
Konfiguracija CLIENT Pi-a
Vrati se na CLIENT Pi SSH sesiju:
sudo nano /etc/wireguard/wg0.conf
CLIENT Konfiguracija
[Interface]
Address = 10.0.0.2/24
PrivateKey = CLIENT_PRIVATE_KEY_OVDE
DNS = 8.8.8.8
[Peer]
PublicKey = SERVER_PUBLIC_KEY_OVDE
Endpoint = SERVER_PUBLIC_IP:51820
AllowedIPs = 0.0.0.0/0
PersistentKeepalive = 25
Zameni:
- CLIENT_PRIVATE_KEY_OVDE - sa privatnim ključem CLIENT Pi-a
- SERVER_PUBLIC_KEY_OVDE - sa javnim ključem SERVER Pi-a
- SERVER_PUBLIC_IP - sa javnom IP adresom tvoje kuće (korak 5)
Ovo znači da će sav internet saobraćaj ići preko VPN-a. Ako želiš da samo Netflix ide preko VPN-a, to je kompleksnije (split tunneling).
Dozvole
sudo chmod 600 /etc/wireguard/wg0.conf
sudo chmod 600 /etc/wireguard/privatekey
Startuj CLIENT
sudo systemctl enable wg-quick@wg0
sudo systemctl start wg-quick@wg0
Testiranje Veze
ping 10.0.0.1
Ako ping radi - VPN tunel je uspostavljen! 🎉
sudo wg show
Trebalo bi da vidiš "latest handshake" timestamp.
Povezivanje TV-a na CLIENT Pi
CLIENT Pi će sada biti gateway za tvoj TV - sav internet saobraćaj će ići preko VPN tunela.
Podesi Statičnu IP za CLIENT Pi
sudo nano /etc/dhcpcd.conf
Dodaj na kraj fajla:
interface wlan0
static ip_address=192.168.100.1/24
static routers=TRENUTNI_GATEWAY
static domain_name_servers=8.8.8.8
Zameni TRENUTNI_GATEWAY sa IP adresom tvog trenutnog rutera (npr. 192.168.1.1).
Restartuj dhcpcd
sudo systemctl restart dhcpcd
Podesi TV Network Manuelno
Na svom TV-u, idi u Settings → Network → Manual Configuration:
| Parametar | Vrednost |
|---|---|
| IP Address | 192.168.100.10 |
| Subnet Mask | 255.255.255.0 |
| Gateway | 192.168.100.1 |
| DNS | 8.8.8.8 |
Testiranje
Na CLIENT Pi-u, proveri da li vidiš TV:
ping 192.168.100.10
Ako ping radi, TV sada koristi VPN za pristup internetu.
Testiranje Netflix-a
Provera VPN Lokacije
- Na TV-u, otvori browser (ako ima)
- Poseti whatismyip.com
- Trebalo bi da vidiš IP adresu tvog doma (SERVER lokacija)
Netflix Test
- Otvori Netflix aplikaciju na TV-u
- Uloguj se
- Trebalo bi da vidiš katalog iz SERVER lokacije
Praćenje Saobraćaja
Na serveru, možeš pratiti VPN saobraćaj:
sudo wg show
Pod transfer videćeš koliko podataka prolazi kroz VPN.
Ako Netflix detektuje VPN, možda će blokirati sadržaj. U tom slučaju, postoje dodatne tehnike (obfuscation), ali to prelazi ovaj vodič.
Održavanje i Troubleshooting
Redovno Ažuriranje
Jednom mesečno SSH-uj se na oba Pi-a i updatuj:
sudo apt update && sudo apt upgrade -y
Restart WireGuard Servisa
Ako nešto ne radi:
sudo systemctl restart wg-quick@wg0
Provera Handshake-a
Na oba uređaja:
sudo wg show
Ako nema "latest handshake" - konekcija nije uspostavljena. Proveri port forwarding i firewall.
Problem: TV nema internet
- Proveri da li Pi ima internet (ping 8.8.8.8)
- Proveri da li WireGuard radi (sudo wg show)
- Proveri IP forwarding (cat /proc/sys/net/ipv4/ip_forward - mora biti 1)
- Proveri iptables pravila (sudo iptables -t nat -L POSTROUTING -v -n)
Problem: Nema WireGuard Handshake-a
Najčešća greška - u klijent config-u, u [Peer] sekciji mora biti SERVER public key, NE klijent public key!
Dodatne provere:
- Port forwarding: Proveri da li router forwarding-uje UDP port 51820 na server
- Firewall: sudo ufw status - mora dozvoliti port 51820/udp
- Javna IP: Proveri da li je Endpoint IP tačan (curl ifconfig.me na serveru)
Problem: Netflix Blokira
Netflix povremeno detektuje i blokira VPN-ove. Ako se to desi:
- Proveri da li običan internet sa TV-a radi (isključi VPN privremeno)
- Razmisli o dodatnim tehnikama (izvan ovog vodiča)
- Prihvati rizik - ovo krši Netflix ToS
4K streaming treba ~25 Mbps upload brzine kod kuće. Proveri svoju brzinu na speedtest.net.
🎉 Završetak projekta
Uspešno si postavio WireGuard VPN sistem sa Raspberry Pi Zero 2 W uređajima! Naučio si:
- Kako instalirati i konfigurisati WireGuard server i klijent
- Podešavanje NAT-a i IP forwarding-a
- Povezivanje uređaja preko VPN tunela
- Router konfiguraciju i port forwarding
Sledeći koraci:
- Eksperimentiši sa dodatnim klijentima (laptop, telefon)
- Postavi monitoring (Grafana, Prometheus)
Imaš problema ili pitanja? Pogledaj druge vodiče ili pridruži se zajednici.