Pozdrav, ideja je da preko pfsensa ide sav sadrzaj kroz VPN. Imam nalog za expressvpn.
Ajde da rešimo prvo VPN.
Uloguj se na expressvpn sa tvojim kredencijalima i nađi konfiguracioni fajl za OpenVPN za Srbiju. Konfiguracioni fajl ima .ovpn ekstenziju. Sačuvaj ga u neki direktorijum i otvori ga u nekom text editoru i minimizuj ga. Text editor ne zatvaraj dok sve ne podesimo.
Uloguj se u pfSense a onda idi na System / Certificates i u tabu Authorities klikni na dugme Add. Otvoriće ti se prozor koji treba da popuniš na sledeći način.
Descriptive name: EVPN_Cert.
Method: Import an existing Certificate Authority.
Sad se vrati u text editor u kojem imaš otvoren .OVPN fajl koji si skinuo sa expressvpn sajta i lociraj liniju koja počinje sa <ca> i selektuj ceo string od linije BEGIN CERTIFICATE do linije END CERTIFICATE kao što je prikazano na slici ispod.
Iskopiraj selektovani saržaj, vrati se nazad u prozor sa pfSense-om (nemoj zatvarati editor!!!) i u polje Certificate Data paste-uj ključ. Zatim, skroluj dole i ostala polja podesi ovako.
Certificate Private Key (optional): Ostavi prazno.
Next Certificate Serial: Ostavi prazno.
Ako si sve odradio kako treba, to treba da izgleda ovako:
Klikni na Save i to je to. Sertifikat je kreiran.
Nakon toga klikni na tab Certificates pa dole na zeleno dugme + Add/Sign i ponuđena polja podesi ovako:
Method: Import an existing Certificate.
Descriptive name: EVPN_Certificate.
Vrati se opet u text editor i lociraj liniju koja počinje sa <cert> i selektuj kompletan sadržaj od linije BEGIN CERTIFICATE do END CERTIFICATE kao što je prikazano na slici ispod i kopiraj sadržaj.
Opet se vrati nazad u pfSense i paste-uj sadržaj u polje Certificate data. Sad se opet vrati u text editor i lociraj liniju koja počinje sa <key> i selektuj sve od linije BEGIN RSA PRIVATE KEY do linije END RSA PRIVATE KEY kao što je prikazano na slici ispod i iskopiraj sadržaj.
Vrati se u pfSense i paste-uj sadržaj u polje Private key data. Ako si sve odradio kako treba, to treba da izgleda ovako.

Klikni na save i to je to što se tiče RSA ključeva.
Sada idi u meni VPN i odaberi OpenVPN. Klikni na polje Clients pa na zeleno dugme +Add i otvoriće ti se podešavanje klijenta. Parametre podesi ovako:
Description: ExpressVPN_RS.
Disabled: Ova opcija mora biti isključena.
Server mode: Peer to Peer (SSL/TLS).
Device mode: tun - Layer 3 Tunnel Mode
Protocol: UDP on IPv4 only.
Interface: WAN
Local port: Ostavi prazno
Server host or address: Ovde treba da upišeš server koji se nalazi u editoru u polju remote. Ide samo host name bez porta.
Server port: Ovde upisuješ broj porta koji se nalazi iza adrese od gore.
Proxy host or address: Ostavi prazno.
Proxy port: Ostavi prazno.
Proxy Authentication: None.
Username: tvoje express vpn korisničko ime.
Password: tvoj express vpn password.
Authentication Retry: Ostavi isključeno.
Skroluj dole i sekciju Cryptographic Settings podesi ovako:
TLS Configuration: Uključi.
Automatically generate a TLS key: Isključi.
Vrati se nazad u editor i lociraj liniju koja počinje sa <tls-auth> i selektuj sve od linije BEGIN OpenVPN Static Key V1 do linije END OpenVPN Static Key V1 i iskopiraj sadržaj kao što je prikazano na slici ispod.
I paste-uj to sve u polje TLS Key. Preostale opcije podesi ovako:
TLS Key Usage Mode: TLS Authentication.
TLS keydir direction: Use default direction.
Peer Certificate Authority: Ovde odaberi EVPN_Cert
Client Certificate: I ovde odaberi EVPN_Cert
Data Encryption Algorithms. Ovde imaš dva box-a. U levom boxu su dostupni algoritmi a u desnom trenutno odabrani algoritmi. Ukloni sve algoritme iz desnog polja tako što ćeš uraditi desni klik na svaki. Box mora biti prazan. A onda u levom boxu nađi algoritam AES-256-GCM i klikni jednom na njega da se pojavi u levom boxu. Ako si sve odradio kako treba, to treba da izlgeda ovako:
Ostale opcije podesi ovako:
Fallback Data Encryption Algorithm: Takođe stavi AES-256-GCM
Auth digest algorithm: Vrati se nazad u editor i nađi polje "auth". Šta god da piše iza te linije, to izaberi ovde. Na primer SHA512.
Hardware Crypto: No hardware crypto.
Server Certificate Key Usage Validation: Ostavi uključeno.
Skroluj još dole do sekcije Tunnel Settings i parametre podesi ovako.
IPv4 Tunnel Network: Ostavi prazno.
IPv6 Tunnel Network: Ostavi prazno.
IPv4 Remote network(s): Ostavi prazno.
IPv6 Remote network(s): Ostavi prazno.
Limit outgoing bandwidth: Ostavi prazno.
Allow Compression: Decompress Incoming, do not compress outgoing (Asymteric)
Compression: Asaptive LZO Compression [Legacy Style, comp-lzo adaptive]
Topology: Ostavi default.
Type-of-Service: Ostavi default.
Don't pull routes: Uključi.
Don't add/remove routes: Ostavi isključeno.
Pull DNS: Ostavi isključeno.
Skroluj dole do sekcije Ping settings i ostavi sve kako jeste.
Opet skroluj dole do sekcije Advanced Configuration i podesi ovako:
U polje Custom options ubaci ovo:
Kod:
fast-io;persist-key;persist-tun;remote-random;pull;comp-lzo;tls-client;verify-x509-name Server name-prefix;remote-cert-tls server;key-direction 1;route-method exe;route-delay 2;tun-mtu 1500;fragment 1300;mssfix 1450;verb 3;sndbuf 524288;rcvbuf 524288
UDP Fast I/O: Uključi.
Exit Notify: Retry 1x.
Send/Receive Buffer: 512 KiB
Gateway creation: IPv4 only.
Verbosity level: 3 (recommended).
Skroluj dole i klikni na dugme Save. Ako si sve podesio kako treba, klijent bi trebao automatski da se nakači na server. Da bi to proverio, idi na Status / OpenVPN. Ako se klijent povezao, to treba da izgleda ovako.
U slučaju da se klijent nije povezao, idi u Status / System Logs i klikni na tab OpenVPN. Iskopiraj sadržaj celog loga ovde i ja ću ti reći u čemu je problem.
Na ovaj način smo povezali samo OpenVPN klijent na ExpressVPN server. Saobraćaj i dalje ne ide kroz VPN jer ne postoji VPN interface a ni VPN gateway. Da bi to rešili, idi na Interfaces / Assignments i u delu Available network ports odaberi OVPNC interface i klikni na Add a onda na Save kao na slici ispod.

Nemoj da te zbuni ovo što na slici piše ExpressVPN NY. To je generička slika sa express vpn sajta. Tebi je bitno da dodaš OVPNC interfejs koji će se u tvom slučaju imati naziv koji si dodelio klijentu.
Nakon toga idi na Interfaces i odaberi novokreirani interface. Obično se zove OPT1 ili OPT2 u zavisnosti od redosleda. Otvoriće ti se interface konfiguracija. Podesi sve ovako.
Enable: Uključi
Description: OVPN_RS
MTU: Ostavi prazno.
MSS: Ostavi prazno.
Block private networks and loopback addresses: Ostavi isključeno.
Block bogon networks: Ostavi isključeno.
I klikni na Save i ne zaboravi da klikneš na Apply Changes u gornjem delu ekrana.
Sad treba napraviti NAT rule koji će omogućiti da lokalne adrese iz privatnog opsega mogu da komuniciraju sa adresama iz public VPN opsega. Da bi to uradio, idi na Firewall / NAT i klikni na tab Outbound. U sekciji Outbound NAT Mode selektuj Manual Outbound NAT rule generation. (AON - Advanced Outbound NAT).
Trebalo bi da vidiš default NAT rule koji NAT-uje sav lokalni saobraćaj iz lokane mreže na WAN interface. To pravilo ćeš iskopirati tako što ćeš kliknuti na dugme copy koje je označeno na slici dole.
Nakon toga će ti se otvoriti podešavanje za odabrani NAT rule. Ovde samo treba u polju interface umesto WAN odabrati expressvpn interface odnosno OVPN_RS. Skroluj dole i klikni na save. I to je to što se tiče natovanja.
Sada možemo da routiramo kompletan LAN saobraćaj tako da sve ide preko VPN-a. Da bi to uradio, idi na Firewall / Rules i klikni na tab LAN. Možeš da edituješ postojeći firewall rule klikom na olovčicu, skroluj skroz dole, i klikni na dugme Display Advanced i opet skroluj dole do polja gateway. Tu odaberi OVPN_RS, klikni save i to je to. Sada sav saobraćaj na LAN interface-u ide kroz express vpn.
Ono sto bih zakacio jesu dva smart tv-a preko wifi, desktop preko kabla, Qnap Nas , RPi4 i uz to nekoliko mobilnih telefona putem wifi-ja. Valjda sam sve popisao...
Pored toga, imam Yetelovu optiku i placenu staticku adresu i volje da naucim nesto novo...
Da bi ti pomogao dalje, reci mi koliko portova imaš na mini PC-u, koji je CPU, koliko RAM-a i šta koristiš za virtualizaciju?