Retragerea PPTP/MS-CHAPv2: ghid de execuție pentru un VPN vechi
O parolă mai lungă nu îmbunătățește PPTP cu MS-CHAPv2. Urmați în ordine pașii de inventar, migrare, verificare și curățare a acreditărilor.
Parolele de douăzeci de caractere, rotite lunar și păstrate într-un seif, nu transformă un server PPTP cu MS-CHAPv2 într-un VPN modern. Parola este o intrare într-un schimb a cărui slăbiciune stă în schimbul însuși. Acest ghid este pentru cine a moștenit serverul și trebuie să mute utilizatorii de pe el fără a tăia site-ul care depinde de el. Urmați pașii în ordine, pentru că fiecare lasă o înregistrare de care veți avea nevoie când cineva întreabă de ce accesul s-a schimbat brusc.
Scrieți stiva înainte de a atinge ceva
Trei straturi se topesc în cuvântul PPTP, iar fiecare eșuează în felul său. Tunelul este PPTP însuși, GRE plus TCP 1723. Autentificarea este metoda PPP oferită de server, aici MS-CHAPv2. Protecția legăturii este MPPE, ale cărei chei derivă din acel schimb de autentificare. Numirea tuturor trei împiedică o corecție ulterioară să aterizeze pe stratul greșit.
Citiți configurația vie în loc să vă bazați pe o pagină wiki, și notați fișierul, ascultătorul și ultimele sesiuni care s-au autentificat.
grep -RniE 'mschap|mppe|require-mppe' /etc/ppp/options.pptpd /etc/pptpd.conf
ss -lntp 'sport = :1723'
journalctl -u pptpd -n 40 --no-pager
Într-un rol de acces la distanță Windows același inventar vine din două comenzi, iar a doua contează pentru că un rol poate anunța mai multe metode simultan, în timp ce clienții din teren negociază mereu doar cea mai slabă.
Get-VpnAuthProtocol
netstat -ano | findstr :1723
Decideți ce transportă tunelul astăzi în realitate
Enumerați consumatorii înainte de a alege un înlocuitor: laptopuri călătoare, un router de sucursală, un terminal de plată, un set de tablete de teren. Un consumator care trebuie să ajungă doar la un host intern este ușor de mutat. Un consumator încorporat în hardware pe care nu îl puteți rescrie poate avea nevoie de o poartă intermediară în loc de o actualizare a clientului, iar acea decizie aparține planului, nu mijlocului tranziției.
Apoi întrebați ce ar obține un atacator care poate observa sau influența schimbul de autentificare. Cu MS-CHAPv2 răspunsul include material care permite recuperarea offline a parolei utilizatorului, și exact de aceea lungimea și rotația nu repară proiectul: secretul recuperat este valabil pe fiecare sistem unde utilizatorul l-a refolosit.
MPPE moștenește aceeași slăbiciune, fiindcă cheile sale provin din acel schimb, și nu vă oferă integritatea pe pachet și comportamentul la reluare ale unui cifru AEAD modern. O sesiune care se autentifică curat a dovedit doar compatibilitatea cu verificările configurate și nimic mai mult.
Nici o pauză scurtă de prânz, nici un număr mic de utilizatori nu transformă o proprietate criptografică într-una de politică.
Executați migrarea într-o singură fereastră de mentenanță
Ridicați înlocuitorul, demonstrați-l cu un grup pilot, apoi opriți vechiul ascultător în loc să îl lăsați ca soluție de rezervă tăcută. O rezervă la care toți pot ajunge încă nu este o migrare și ține schimbul slab disponibil exact pentru utilizatorii care nu se deranjează niciodată să treacă.
sudo systemctl disable --now pptpd
sudo ss -lntp | grep -E ':(1723|1194|51820)\b'
sudo nft list ruleset | grep -i gre
Închideți calea prin firewall în aceeași fereastră. GRE nu are un port de reținut, așa că o regulă care permite protocolul 47 după număr trece ușor neobservată și lasă serviciul accesibil chiar și după ce demonul a dispărut. Înregistrați regula eliminată, poziția ei anterioară și motivul, ca o revizuire ulterioară să nu o readucă din greșeală.
Tratați acreditările separat de configurație. Ștergerea unui profil de client nu este o revocare, iar un cont care încă se autentifică în altă parte nu a fost retras.
Verificați că înlocuitorul face munca pe care o făcea PPTP
Lista de verificare nu este „se conectează”. Este dacă autentificarea, alocarea adreselor, rezolvarea DNS, selectarea rutei, comportamentul la reconectare și verificarea partenerului se mai țin toate sub înlocuitor. Testați fiecare pe un dispozitiv pilot, în acea ordine, și scrieți rezultatul observat lângă așteptare.
ip -4 addr show tun0
ip route get 198.51.100.23
resolvectl query intranet.example.net
O adresă pe interfață dovedește că negocierea s-a încheiat. Nu dovedește că partea îndepărtată a autorizat ruta pe care o așteptați, iar interogarea de mai sus răspunde doar pentru acest host, nu pentru un LAN redirecționat. Un răspuns de la resolver dovedește accesibilitatea unui resolver, nu că politica DNS divizat îi trimite numele corecte.
Verificați reconectarea la final, pentru că acolo regresează majoritatea înlocuitorilor: suspendați un laptop, schimbați rețelele și confirmați că tunelul se restabilește fără a lăsa rute învechite.
Revenire, revocare și înregistrarea pe care o lăsați
Revenirea restaurează serviciul; nu restaurează securitatea, iar diferența trebuie spusă cu voce tare înainte de deschiderea ferestrei. Dacă noua cale eșuează, aduceți utilizatorii înapoi printr-un al doilea punct final modern sau o poartă temporară, nu prin reactivarea PPTP pentru toți. Păstrarea unei căi de urgență pe protocolul vechi lărgește expunerea pe care tocmai ați documentat-o.
După tranziție, revocați conturile care s-au autentificat prin PPTP, lăsați profilele salvate să expire și confirmați că regula GRE a dispărut de pe fiecare dispozitiv de margine, inclusiv copia de recuperare după dezastru de care nimeni nu își amintește.
Lăsați o înregistrare scurtă: protocoalele găsite, data la care s-a oprit fiecare ascultător, versiunile de client acceptate de înlocuitor și proprietarul care poate redeschide decizia. Igiena parolelor contează în continuare după aceea, dar ca igienă pe un protocol care o merită, nu ca argument pentru a ține vechiul în viață.