Hogyan állítsunk helyre VPN-kiszolgálót identitások duplikálása nélkül
A helyreállított VPN-kiszolgáló fájlokat hoz vissza, nem a jelenlegi hozzáférést. Egyeztesse a visszavonásokat, a partnerek kulcsait és a végpontokat, mielőtt egy második példány kézfogásra válaszol.
Helyreállította a biztonsági mentést, a szolgáltatás elindult, és egy ügyfél első próbára csatlakozott. Ez a siker a csapda. A helyreállítás azokat a fájlokat adja vissza, amelyek a pillanatkép idején voltak a kiszolgálón, nem a hozzáférési állapotot, amely azóta megváltozott, és ha a régi végpont még elérhető, most két gép válaszol ugyanarra az identitásra. A megoldás nem egy jobb mentés; hanem annak eldöntése, mi lehet a helyreállított gazdagép, mielőtt egyetlen kézfogásra válaszol.
A biztonsági mentés fájlokat ad vissza, nem felhatalmazást
A pillanatkép a kiszolgáló konfigurációját, a titkos kulcsokat, a tanúsító hatóságot, a partnerlistát és a tűzfal szabályait olyan állapotban tartalmazza, amilyenben a mentés futásakor voltak. Nem tartalmazhatja azt, ami utána megváltozott: az eszközt, amelyet visszavont, a kulcsot, amelyet újra kiadott, a partnert, amelyet egy laptop eladásakor eltávolított, az alhálózatot, amelyet áthelyezett. A helyreállítás visszatekeri a fájlokat arra a pillanatra. Nem tekeri vissza azokat a döntéseket, amelyeket az emberek azóta hoztak.
A kár pontosan ebből a résből származik. A mentés után két héttel visszavont ellopott laptop olyan tanúsítványt mutat, amely még mindig érvényesül a helyreállított fában lévő régebbi CRL-lel szemben, és a kiszolgáló elfogad egy eszközt, amelyet kivont a használatból. A WireGuard egyenesebb: egy partner azzal jogosult, hogy szerepel a listán, így a pillanatkép után törölt partner egyszerűen újra jelen van. Senki nem hagyta jóvá újra azt a hozzáférést. A régi fájl tette.
A kiszolgáló identitása és az ügyfél identitása különböző módon hibázik
A WireGuardnál a kiszolgáló identitása a wg0.conf titkos kulcsa, így a fájl egy második elérhető gazdagépre másolása két kiszolgálót hoz létre ugyanazzal az identitással, egymásról nem tudva. Mindegyik a saját partnerlistáját tartja. Távolítson el egy partnert az új gazdagépen, és a régi még mindig elfogadja; ellenőrizze az wg show parancsot az egyiken, és az igazság felét látja. Az ügyfelek sem váltanak maguktól: a profil egyetlen Endpointot hordoz, így az eszköz továbbra is azzal a címmel beszél, amelyre beállították, ami lehet az a gazdagép, amelyet ki akart vonni.
OpenVPN ugyanazon a rétegen duplikálódik kiszolgáló-tanúsítvánnyal, annak titkos kulcsával és a tls-auth vagy tls-crypt statikus kulccsal. Másolja mindhármat, és az ügyfél nem tudja megkülönböztetni a példányokat; ha mindkettő elérhető, az újracsatlakozás bármelyikre kerülhet, és minden naplófájl részleges történetet mesél. A tanúsító hatóság a mélyebb másolat. A helyreállított easy-rsa fa második igazságforrás, amely bármely megadott névre érvényes tanúsítványt állíthat ki.
Az ügyfelek is duplikálódnak, általában maga a migráció során. Egy profil másolása tartalék eszközre „csak teszteléshez” második eszközt hoz létre ugyanazzal a kulccsal és közös névvel. duplicate-cn mellett mindkét munkamenet egyszerre lehet fenn, és a statikus címhozzárendelés a ccd vagy ifconfig-pool-persist fájlban ütközhet az eredeti eszközzel. Ez két gép egy identitásban, és a kiszolgáló konfigurációjában semmi nem különbözteti meg őket.
Válasszon egyet a három állapot közül a régi végpont számára
A helyreállítás csak akkor biztonságos, ha a régi végpont sorsa eldőlt. Vonja ki: a régi szolgáltatásnak le kell állnia a VPN-port fogadásával, mielőtt az új gazdagép elindul, és ha nem éri el a gépet, blokkolja azt a portot a hálózat szélén mindenre, kivéve az adminisztratív forrását. Javítsa ugyanazt a gazdagépet: az identitás újrafelhasználása rendben van, mert egy gép tartja, de utána semmisítse meg a régi kulcs lemezmásolatát vagy VM-pillanatképét, hogy ne térhessen vissza. Építsen elérhetőségi párt: két gazdagépnek külön gazdagép-identitásokra és egy közös végpontra van szüksége, például lebegő címre, terheléselosztóra vagy áthelyezhető DNS-re. A titkos kulcs másolása nem failover-terv; ez két kiszolgáló, amely egy nevet követel.
Erősítse meg, melyik állapotban van valójában, mielőtt hozzányúl az ügyfelekhez. A VPN-porton válaszoló régi gazdagép fogadja el a visszavont eszközt, akkor is, ha a DNS elmozdult. Ellenőrizze a figyelőket és a nyilvános kulcsot:
ss -lunp | grep -E ':51820|:1194'
wg show wg0
wg pubkey < /etc/wireguard/server.key
Először egyeztesse a partnereket, a visszavonásokat és a címeket
Sorolja fel, mit állít a helyreállítás azzal szemben, ami jelenleg jogosult. A WireGuardnál a wg show wg0 megadja minden partner kulcsát, végpontját, legutóbbi kézfogását és átvitelszámlálóit, ami elég ahhoz, hogy észrevegyen egy eszközt, amely már nem az öné. Távolítsa el élőben a wg set wg0 peer <key> remove paranccsal, majd szerkessze a konfigurációt is, különben a partner a következő indításkor visszatér. A wg show wg0 allowed-ips feltárja a második problémát: két partner egy címen, vagy egy cím, amelyet már újraosztott.
Az OpenVPN-nél a visszavonási lista dátumszerű fájl, és egy helyreállítás visszahozhat egy régit. Ellenőrizze, mielőtt az ügyfelek csatlakoznak:
openssl crl -in /etc/openvpn/crl.pem -noout -lastupdate -nextupdate
grep -E 'crl-verify|reneg-sec' /etc/openvpn/server.conf
Ha az utolsó frissítés megelőzi a visszavonást, a kiszolgáló még mindig tiszteletben tart egy tanúsítványt, amelyet visszavont. Az OpenVPN 2.4 és újabb újraolvassa a CRL-fájlt minden új kapcsolatnál, így a fájl cseréje leállítja az új munkameneteket, de a létrehozott alagutak újratárgyalásig megmaradnak; a reneg-sec alapértéke 3600 másodperc, és annak csökkentése vagy a szolgáltatás újraindítása adja meg a változást azonnal. A régebbi build-ek talán nem veszik fel a fájlt ilyen megbízhatóan, ezért indítsa újra, ha nem tudja megerősíteni a verzió viselkedését. A wg(8) kézikönyv lefedi a fenti partnereltávolítást és allowed-ips szintaxist.
Tisztítsa meg a már nem létező eszközök statikus hozzárendeléseit is. Egy kivont eszköz címének újrafelhasználása újhoz, miközben a régi profil még telepítve van, pontosan azt a duplikátumot hozza létre, amelyet el akar kerülni.
Ellenőrizze egy olyan ügyféllel, amelyet visszavont
Futtassa az ellenőrzéseket sorrendben, az alagúton kívüli hálózatból. Először egy jogosult eszköz csatlakozik, feloldja a DNS-t a továbbított feloldón keresztül, és elér egy privát erőforrást. Aztán a visszavont eszköznek meg kell buknia, a meglévő profiljával, nem újjal. Aztán próbálja ki a régi végpontot kívülről: ha a VPN-port még befejez egy kézfogást, a régi gazdagép él, és a duplikálás valós, nem elméleti.
Indítsa újra a helyreállított gazdagépet, és ismételje meg a jogosult és visszavont ellenőrzéseket, mert akkor győz a konfigurációs fájl azzal szemben, amit futásidőben módosított. Hasonlítsa össze a gazdagép nyilvános kulcsát vagy tanúsítvány-ujjlenyomatát azzal, amelyet a kivont gép használt. Két élő gépen egyező ujjlenyomat azt jelenti, hogy a helyreállítás klónozta az identitást; egy gépen egyező ujjlenyomat rendben van. Jegyezze fel a helyreállított verziókat, a kulcsok ujjlenyomatait és a visszavont sorozatszámot vagy partnerkulcsot, majd készítse el a következő mentést ezen egyeztetés után, hogy a szolgáltatást olyannak ábrázolja, amilyen most. A működő teszt nem az, hogy egy ügyfél csatlakozik. Hanem hogy az eltávolított ügyfél kint marad, miközben a régi végpont zárva marad.