Ograničite VPN slušalac na interfejse koje ste imali na umu
Slušalac sa wildcardom i pravilo firewall-a su različite kontrole. Pročitajte stvarne sockete sa ss, zatim provjerite porodicu adresa i firewall.
VPN usluga je dostupna sa svakog mjesta na kojem je njen socket vezan i na kojem njegov firewall dozvoljava. To su dvije odvojene odluke, a ljudi obično donesu samo jednu od njih. Čitanje stvarnog slušaoca traje deset sekundi i rješava pitanje koje nagađanje ne može. Počnite tu, a zatim mijenjajte jednu kontrolu po jednu.
Sve ispod pretpostavlja da možete izvršavati komande na hostu sa root ili sudo.
Pročitajte sockete prije nego što bilo šta promijenite
Na Linuxu ss -lunp izlistava UDP slušaoce sa njihovom lokalnom adresom, portom i procesom, a ss -ltnp čini isto za TCP. Potražite VPN-ov port i pažljivo pročitajte kolonu adrese. 0.0.0.0:51820 i [::]:51820 znače svaki interfejs, dok 10.0.0.5:51820 znači jednu adresu na jednom interfejsu. ss priručnik dokumentuje kolone ako vam je izlaz nepoznat. Ako nedostaje naziv procesa, pokrenite istu komandu sa sudo, jer kolona vlasnika zahtijeva privilegiju.
Zapišite adresu. To je činjenica od koje zavisi ostatak ovog priručnika.
Vežite se za adresu, a ne za želju
OpenVPN-ova direktiva local veže slušaoca za određenu adresu, i to je podržan način da ga ograničite na nivou procesa. Nije svaka implementacija ponuda ekvivalent, a protokol bez opcije vezivanja ne može se suziti na ovaj način. Ako vaša nema nijednu, firewall je vaša jedina kontrola, i napomene o postavljanju treba to jasno da kažu. Na hostu sa više adresa vežite se za onu koja gleda u tunel; vezivanje za adresu koja lebdi obično je greška.
Usluga koja mora preživjeti promjenu adrese treba plan za zastarjelo vezivanje, a ne samo konfiguracijsku liniju.
Provjerite porodicu adresa odvojeno
IPv4 i IPv6 su odvojeni socketi. Proces vezan za 0.0.0.0 još uvijek može prihvatati IPv6 kroz dual-stack socket, ili ne mora, zavisno od opcije socketa i podrazumijevanog ponašanja platforme. Čitanje samo IPv4 linije nasamario je više od jedne revizije postavljanja. Navedite obje porodice prije nego što zaključite da je slušalac uzak.
Ako IPv6 nije dio dizajna, isključivanje na nivou socketa čistije je od nade da će ga firewall pokriti. To je odluka o politici, pa je zapišite uz ostale izbore interfejsa.
Naslojite firewall povrh vezivanja
Usko vezivanje ne zamjenjuje pravilo firewall-a, a pravilo firewall-a ne sužava wildcard vezivanje. Koristite oboje: vežite se tamo gdje implementacija to podržava, a zatim dozvolite port samo sa izvora koji bi do njega trebali doći. Cloud sigurnosne grupe stoje ispred firewall-a hosta, pa provjerite oboje kada put prelazi granicu VPC-a. Efektivno pravilo je presjek dvaju, i svaki sloj može samo oduzeti dostupnost.
Testirajte sa dozvoljenog izvora i sa namjerno isključenog. Veza sa localhosta ne dokazuje ništa o javnoj granici.
Zapišite šta ste odabrali
Zapišite vezanu adresu, interfejs koji je posjeduje, pravilo firewall-a i njegovu svrhu. Zamjenski NIC ili dodijeljena cloud adresa mogu promijeniti izloženost bez ikakvog uređivanja profila. Datirajte napomenu, jer se cloud adrese kreću između pregleda češće nego što ljudi očekuju.
Ta napomena čini sljedeći pregled poređenjem umjesto arheološkog projekta.