Ukidanje PPTP/MS-CHAPv2: runbook za zastarjeli VPN
Duža lozinka ne unapređuje PPTP sa MS-CHAPv2. Redom obavite korake popisa, migracije, provjere i čišćenja akreditiva.
Lozinke od dvadeset znakova, koje se mijenjaju svakog mjeseca i čuvaju u trezoru, ne pretvaraju PPTP server sa MS-CHAPv2 u moderan VPN. Lozinka je ulaz u razmjenu čija slabost živi u samoj razmjeni. Ovaj runbook je za onoga ko je naslijedio taj server i mora premjestiti korisnike s njega, a da pritom ne odsiječe lokaciju koja o njemu zavisi. Obavite korake redom, jer svaki ostavlja zapis koji će vam trebati kada neko upita zašto se pristup odjednom promijenio.
Zapišite stog prije nego što bilo šta dirnete
Tri sloja se stapaju u riječ PPTP i svaki pada na svoj način. Tunel je sam PPTP, GRE plus TCP 1723. Autentifikacija je onaj PPP metod koji server nudi, ovdje MS-CHAPv2. Zaštita veze je MPPE, čiji se ključevi izvode iz te autentifikacijske razmjene. Imenovanje sva tri sprječava da kasniji popravak sleti na pogrešan sloj.
Čitajte živu konfiguraciju umjesto da vjerujete wiki stranici, i zabilježite datoteku, slušač i posljednje sesije koje su se autentificirale.
grep -RniE 'mschap|mppe|require-mppe' /etc/ppp/options.pptpd /etc/pptpd.conf
ss -lntp 'sport = :1723'
journalctl -u pptpd -n 40 --no-pager
Na Windows ulozi za daljinski pristup isti popis dolazi iz dvije komande, a druga je važna jer uloga može oglašavati nekoliko metoda odjednom, dok klijenti na terenu uvijek pregovaraju samo najslabiju.
Get-VpnAuthProtocol
netstat -ano | findstr :1723
Odredite šta tunel danas stvarno prenosi
Navedite potrošače prije nego što odaberete zamjenu: prijenosna računala u pokretu, usmjerivač podružnice, platni terminal, skup terenskih tableta. Potrošača koji treba dosegnuti samo jedan interni host lako je premjestiti. Potrošač ugrađen u hardver koji ne možete ponovno bljesnuti može zahtijevati posredni prolaz umjesto nadogradnje klijenta, a ta odluka pripada planu, ne sredini prelaska.
Zatim pitajte šta bi dobio napadač koji može promatrati razmjenu prijave ili na nju uticati. Kod MS-CHAPv2 odgovor uključuje materijal koji omogućava izvanmrežno vraćanje korisničke lozinke, i upravo zato dužina i rotacija ne popravljaju dizajn: vraćena tajna vrijedi na svakom sistemu na kojem ju je korisnik ponovno upotrijebio.
MPPE nasljeđuje istu slabost, jer njeni ključevi dolaze iz te razmjene, i ne daje vam integritet po paketu ni ponašanje pri ponavljanju modernog AEAD šifre. Sesija koja se čisto autentificira dokazala je samo kompatibilnost s konfigurisanim provjerama i ništa više.
Ni kratka pauza za ručak ni mali broj korisnika ne pretvaraju kriptografsko svojstvo u političko.
Izvedite migraciju unutar jednog prozora za održavanje
Podignite zamjenu, dokažite je jednom pilot grupom, pa zaustavite stari slušač umjesto da ga ostavite kao tihu rezervu. Rezerva do koje svako još može doći nije migracija i drži slabu razmjenu dostupnom upravo onim korisnicima koji se nikad ne potrude preći.
sudo systemctl disable --now pptpd
sudo ss -lntp | grep -E ':(1723|1194|51820)\b'
sudo nft list ruleset | grep -i gre
Zatvorite put kroz vatrozid u istom prozoru. GRE nema port koji se pamti, pa pravilo koje dopušta protokol 47 po broju lako promakne i ostavlja uslugu dostupnom i nakon što demona više nema. Zabilježite pravilo koje ste uklonili, njegovu prijašnju poziciju i razlog, da ga kasniji pregled promjena ne vrati slučajno.
Akreditive rješavajte odvojeno od konfiguracije. Uklanjanje klijentskog profila nije opoziv, a račun koji se drugdje još autentificira nije izveden iz upotrebe.
Provjerite da zamjena obavlja poslove koje je PPTP obavljao
Kontrolna lista nije “da li se spaja”. Nego da li se autentifikacija, dodjela adresa, DNS razrješavanje, odabir rute, ponašanje pri ponovnom spajanju i provjera partnera svi još drže pod zamjenom. Testirajte svaku stavku na pilot uređaju, u tom redu, i zapišite opaženi rezultat pored očekivanja.
ip -4 addr show tun0
ip route get 198.51.100.23
resolvectl query intranet.example.net
Adresa na interfejsu dokazuje da je pregovaranje završeno. Ona ne dokazuje da je daleka strana odobrila rutu koju očekujete, a gornji upit odgovara samo za ovaj host, ne za proslijeđeni LAN. Odgovor razrješivača dokazuje dostupnost razrješivača, ne da politika podijeljenog DNS-a šalje prava imena prema njemu.
Ponovno spajanje provjerite posljednje, jer tu većina zamjena nazaduje: uspavajte prijenosno računalo, promijenite mreže i potvrdite da se tunel ponovno uspostavlja bez ostavljanja zastarjelih ruta.
Povratak, opoziv i zapis koji ostavljate
Povratak vraća uslugu; ne vraća sigurnost, i tu razliku treba izgovoriti naglas prije nego se prozor otvori. Ako novi put zakaže, vratite korisnike kroz drugu modernu krajnju točku ili privremeni prolaz, a ne ponovnim uključivanjem PPTP-a za sve. Zadržavanje jednog hitnog puta na starom protokolu proširuje izloženost koju ste upravo dokumentovali.
Nakon prelaska opozovite račune koji su se autentificirali preko PPTP-a, pustite njihove pohranjene profile da isteknu i potvrdite da je GRE pravilo nestalo sa svakog rubnog uređaja, uključujući kopiju za oporavak od katastrofe koju se niko ne sjeća.
Ostavite kratak zapis: protokole koje ste našli, datum kada je svaki slušač stao, verzije klijenata koje zamjena podržava i vlasnika koji može ponovno otvoriti odluku. Higijena lozinki i dalje je važna nakon toga, ali kao higijena na protokolu koji je zaslužuje, a ne kao argument za održavanje starog na životu.