VPN tunelis nekad neizveido savienojumu: kur paketes patiešām apstājas
Tunelis, kas nekad neveidojas, abos galos atstāj tukšu žurnālu. Pārbaudiet, vai tiek izmestas GRE, ESP vai UDP 4500, un pirms servera rediģēšanas noskaidrojiet operatora NAT.
Klients turpina mēģināt vēlreiz, žurnāls apstājas pirms rokas sasveicināšanās pabeigšanas, un serveris neko nemaz neieraksta. Šis modelis novērš uzmanību no akreditācijas datiem uz ceļu: kaut kas starp abiem galiem atsakās pārvadāt protokolu, kas tunelim nepieciešams. Nosakiet, kur paketes apstājas, pirms pieskaraties kādai no abām konfigurācijām, jo filtrēts protokols un nepareiza parole lielākajā daļā klientu rada vienu un to pašu draudzīgo kļūdu. Testi ir sakārtoti pēc izmaksām, lētākais pirmais.
Pierādiet, kur satiksme apstājas
Uzņemiet vienlaikus klienta izejošajā saskarnē un serverī. Salīdziniet, kas aizgāja, ar to, kas ieradās, un atzīmējiet, kurā virzienā parādās atšķirība.
Nekas serverī nozīmē, ka ceļš vai pirmais NAT izmet satiksmi, savukārt ierašanās bez atbildēm norāda uz servera ugunsmūri vai neesošu atgriešanās maršrutu. Maršrutētājs, kas bieži pabeidz tuneļus, parasti neved noderīgu žurnālu, tāpēc uzņemšana kļūst par ierakstu. Pierakstiet galamērķa portu un protokola numuru, jo abas kļūmes klienta dialogā izskatās vienādi.
PPTP mirst bez protokola 47
PPTP pārvadā vadību TCP 1723, bet datus GRE iekšienē, kas ir IP protokols 47, nevis porta numurs. Pāradresējot tikai 1723, tiek iegūts klasiskais rezultāts: savienojums autentificējas un pēc tam apklust, jo protokolam, kas pārvadā lietderīgo slodzi, nav noteikuma. Klients to nevar atšķirt no noraidītas paroles, tāpēc uzņemšanai jānotiek pirms konfigurācijas izmaiņām.
Caurlaide darbojas pretējā virzienā nekā ienākošā pāradresācija, un programmaparatūra pietiekami bieži lieto vienu etiķeti abiem, lai visus sajauktu. Linux klientā vietējais ugunsmūris var izmest GRE krietni pirms maršrutētājs vispār iesaistās, tāpēc protokolam 47 vajadzīgs savs noteikums un conntrack palīgs ir jāielādē. Ubuntu ufw glabā šos noteikumus before failā, jo parastie allow noteikumi nevar izteikt protokola numuru. Pēc tam pārlādējiet ugunsmūri, nevis restartējiet mašīnu.
# /etc/ufw/before.rules, inside *filter
-A ufw-before-input -p gre -j ACCEPT
sudo ufw allow 1723/tcp
sudo modprobe nf_conntrack_pptp
sudo conntrack -L | grep greL2TP un IPsec aiz diviem NAT
L2TP IPsec iekšienē nepieciešams UDP 500 atslēgu apmaiņai, UDP 4500, kad tiek konstatēts NAT, un ESP kā protokols 50. Katrs no tiem tiek filtrēts atsevišķi, tāpēc noteikums, kas atļauj vienu, neko nepierāda par pārējiem diviem. Divi maršrutētāji rindā pārtulko katru paketi divreiz, un gali vairs nevienojas par to, kas tika saskaņots.
Savienojiet ārējo modemu tiltā vai izslēdziet NAT iekšējā maršrutētājā, lai publiskā adrese sasniegtu ierīci, kas pabeidz tuneli. Kur nav iespējams neviens, tunelis jāsāk no dubultā NAT robežas iekšpuses, nevis tur jāpabeidz.
Operatoru tīkli un adrešu koplietošana
WAN adrese 10.0.0.0/8, 172.16.0.0/12, 192.168.0.0/16 vai 100.64.0.0/10 nozīmē, ka maršrutētājam nav publiskās adreses un neviens ienākošais pāradresējums no interneta to nevar sasniegt. Operatora līmeņa NAT papildus filtrē protokolus, kurus tas negaida, un GRE bieži cieš mobilajos savienojumos. Salīdziniet WAN adresi pašā maršrutētājā, nevis to, ko meklēšanas vietne norāda klientam aiz tā.
Tā paša maršrutētāja darbināšana vada līnijā ar vienu testu atdala operatora konstatējumu no konfigurācijas kļūdas. Kur operators atsakās no protokola, paliek citi varianti: cits transports uz 443 vai no iekšpuses sākts tunelis.
Izlasiet klausītāju sarakstu pirms portu aizvēršanas
Satraucoša portu skenēšana bieži vien ir tikai funkciju kopums, kas tiek piegādāts ieslēgts. Inventarizējiet klausītājus, saistiet katru ligzdu ar funkciju, pēc tam izslēdziet funkciju, nevis bloķējiet portu, lai abi skati neizšķirtos.
ss -lntup
systemctl list-units --type=service --state=running | grep -i vpn
nc -vz 203.0.113.10 1723
nc -vzu 203.0.113.10 4500SoftEther noklusējuma vērtības ir labs piemērs: TCP 443, 992 un 5555, un L2TP/IPsec un DNS tuneļa funkcijas pievieno savas ligzdas. Šo funkciju izslēgšana noņem klausītājus, nevis paslēpj tos, un pārbaude no ārēja resursdatora parāda, vai operators portu vispār laiž cauri. Lokāli atbildošs klausītājs joprojām var būt aizvērts augšup, tāpēc salīdziniet paša maršrutētāja WAN adresi ar to, ko ziņo ārējs pakalpojums.