LocalSubnet u SMB pravilu vatrozida ne pokriva VPN klijente
Pravilo dopuštanja s LocalSubnet pokriva vlastite podmreže poslužitelja, ne usmjereni VPN bazen. Usporedite izvornu adresu koju poslužitelj vidi prije proširenja opsega.
Uredska računala dolaze do dijeljenog resursa, VPN korisnici dobivaju istek vremena, a isti račun radi s mobilnog hotspota. Dopuštenja dijeljenja rijetko su razlika; adresa koja stigne na datotečni poslužitelj obično jest. Pravilo ograničeno na LocalSubnet propušta vlastite priključene podmreže poslužitelja, a zasebno usmjereni VPN bazen nije jedna od njih. Dva dizajna zatvaraju tu prazninu i ostavljaju vrlo različite zapise.
Dva dizajna, jedan simptom
Prvi dizajn dodaje VPN bazen u uvjet udaljene adrese pravila. Poslužitelj tada vidi tunelsku adresu svakog klijenta, pa njegovi zapisi mogu razdvojiti jednog udaljenog korisnika od drugoga. Drugi dizajn usmjerava VPN promet kroz pristupnik koji ga prevodi u LAN adresu prije nego što ga poslužitelj vidi. To vraća povezivost i uklanja razliku u istom koraku.
Tablica opisuje uloge, a ne adrese, a vaši prefiksi odlučuju koji se redak primjenjuje. Ispišite stvarne vrijednosti poslužitelja umjesto da kopirate primjer iz bloga:
Get-NetIPAddress -AddressFamily IPv4 | Select-Object InterfaceAlias, IPAddress, PrefixLength
Tablica je pomoć pri odlučivanju, a ne tvrdnja o svakom postavljanju. Host s dodatnim sučeljima, drugom vezom lokacije ili drugom maskom ima drugi lokalni skup.
| Path the packet takes | Address the server records | Filter scope that admits it | What the log can still tell you |
|---|---|---|---|
| Desktop on the server LAN | Its own LAN address | LocalSubnet or the LAN prefix | Which workstation connected |
| Client on the routed VPN pool | Its tunnel address | The VPN pool as a remote address | Which VPN account connected, if the pool is logged |
| Client behind source NAT at the gateway | The gateway's LAN address | The gateway address | Only that some VPN user connected |
| Site-to-site gateway | The remote gateway's tunnel address | The remote site's prefix | Which site connected, not which user |
Referenca za New-NetFirewallRule tvrtke Microsoft dokumentira uvjete udaljene adrese i ključnu riječ LocalSubnet. Pročitajte je prije nego zaključite da ključna riječ znači sve privatne adrese, jer ne znači.
Usporedite što poslužitelj stvarno prima
Pročitajte djelotvorno pravilo, a ne ono za koje netko misli da ga je stvorio. Provjerite da je omogućeno, da se primjenjuje na aktivni profil i da njegov uvjet udaljene adrese odgovara izvoru koji poslužitelj vidi. Pravilo omogućeno samo na profilu Domain ne čini ništa kada je adapter nakon promjene mreže prešao na Public.
Get-NetFirewallRule -DisplayGroup 'File and Printer Sharing' | Get-NetFirewallAddressFilter
Get-NetFirewallProfile | Select-Object Name,Enabled,DefaultInboundAction
Prva naredba ispisuje filtre adresa povezane s pravilima dijeljenja datoteka, a druga pokazuje koji su profili aktivni i kako se postupa s nepodudarnim dolaznim prometom. Potražite i pravilo blokiranja te središnje upravljanu politiku. Pravila blokiranja imaju prednost pred pravilima dopuštanja, a politika koja onemogućuje spajanje lokalnih pravila može novo lokalno izuzeće učiniti nedjelotvornim.
To je slučaj u kojem pravilo u konzoli izgleda ispravno i nema učinka na promet. Istodobno provjerite dodjelu profila, jer prijenosno računalo koje se pridružilo drugoj mreži može prijeći na profil Public bez da itko dotakne vatrozid.
Testirajte prijevoz prije prijave
Odvojite dostupnost od autentikacije. Slušatelj na TCP 445 dokazuje da je usluga vezana na port; ne dokazuje da udaljeni paket može doći do njega. Dovršena TCP veza, pak, još ne govori ništa o uspostavi SMB sesije ili dopuštenjima dijeljenja. Testirajte rukovanje s obje strane prije nego uredite pravilo.
Test-NetConnection -ComputerName files.corp.example -Port 445
Test-NetConnection -ComputerName files.corp.example -Port 445 -InformationLevel Detailed
Prva naredba izvješćuje uspijeva li TCP rukovanje sa stroja na kojem je pokrenete, a druga dodaje razriješenu adresu i pojedinosti sučelja. Pokrenite je s VPN klijenta i s uredskog računala, pa usporedite. Ping ne odgovara ni na jedno pitanje, jer ICMP može biti blokiran dok je SMB otvoren, ili dopušten dok vatrozid odbacuje 445.
Ako rukovanje ne uspijeva samo s VPN-a, izvorni opseg je glavni osumnjičenik. Ako uspijeva, a dijeljeni resurs vas i dalje odbija, prijeđite na dijagnostiku SMB sesije i dopuštenja umjesto uređivanja pravila vatrozida.
Kada izvorni NAT ukloni razliku
S prevođenjem na putu poslužitelj ne može razlikovati pojedinačne VPN klijente po adresi. Svaki udaljeni korisnik dolazi kao pristupnik. Svako ovlaštenje koje ovisi o njihovu razlikovanju mora se provoditi tamo gdje su njihovi identiteti još vidljivi, što obično znači VPN koncentrator ili proxy koji provodi autentikaciju. Pravilo vatrozida može propustiti promet; ne može vratiti razliku koju je prevođenje uklonilo.
Nakon što se ta adresa pristupnika dopusti, svaki se udaljeni korisnik bilježi pod jednom adresom, pa pravilo daje cijeli bazen svakome tko može doći do pristupnika. Ako je odluka po korisniku važna, zadržite izvorne adrese vidljivima ili premjestite odluku na sloj koji još poznaje korisnika. Inače svaki udaljeni korisnik nasljeđuje dopuštenja one jedne adrese koju poslužitelj može vidjeti, a revizorski trag više ih ne može razlikovati. To je dizajnerska odluka, ne pojedinost vatrozida.
Svjesno odaberite između dvaju dizajna. Ograničite pravilo na stvarni VPN bazen kada poslužitelj mora vidjeti tko se povezao, a prevedeni put prihvatite samo kada poslužitelju ta informacija doista nije potrebna. Zapišite odabrani izvorni raspon uz pravilo, jer će sljedeća osoba koja ovo bude otklanjala greške prvo pogledati tablicu adresa.