Clonar la imatge d'un servidor VPN sense clonar-ne la identitat
Decidiu si la còpia restaura una passarel·la o n'afegeix una segona. La configuració reutilitzable, l'autoritat de signatura i l'estat de xarxa viatgen cadascun d'una manera diferent.
La imatge arrenca, el servei s'inicia i els clients es connecten. Aquest és el moment d'aturar-se i preguntar quina de les dues operacions molt diferents acaba de passar. O la còpia restaura una passarel·la lògica que ja existia, o bé afegeix una segona passarel·la a la flota. Totes dues són legítimes i tenen conseqüències diferents per a la identitat i l'accés. Una màquina que arrenca neta no demostra cap de les dues.
Tres condicions decideixen la resposta, i són les tres categories de material que una imatge pot portar. Ordeneu-les abans que es construeixi la imatge, no després que s'hagi desplegat dues vegades.
Primer decidiu quina de les dues operacions feu
Una restauració conserva una identitat de servei. La instància antiga ha desaparegut, el nom i el certificat es queden, i els clients continuen confiant en el mateix punt final. Una addició crea una segona identitat que els clients, els registres i la revocació han de distingir.
La distinció no és cosmètica. Si dos amfitrions actius presenten el mateix certificat de passarel·la, un client no els pot distingir, ni un rastre d'auditoria tampoc, i revocar aquest certificat elimina tots dos alhora. Pot ser exactament el que vol un disseny deliberat d'alta disponibilitat, i poques vegades és el que pretén una còpia precipitada d'una imatge.
Així, la primera decisió és una frase, escrita abans que la imatge surti de l'amfitrió de construcció: aquesta còpia restaura la passarel·la A, o aquesta còpia esdevé la passarel·la B. Tot el que ve després és comptabilitat respecte d'aquesta frase. Si ningú no la pot escriure, la còpia no està a punt per construir-se.
Entrades reutilitzables, identitat i autoritat, estat de desplegament
La categoria reutilitzable és la fàcil: paquets, configuració revisada que no conté secrets, plantilles de servei, paràmetres d'enduriment. És per a això que una imatge és realment bona, i es pot reproduir sense límit.
La categoria d'identitat i autoritat és on les còpies fallen. La clau privada i el certificat d'una passarel·la identifiquen aquesta passarel·la davant de cada client. La clau de signatura de l'autoritat de certificació és un objecte diferent amb un poder diferent: emet identitats. Confiar en un emissor no vol dir que cada passarel·la nova necessiti la capacitat d'emetre, i enviar la clau de signatura dins d'una imatge atorga aquesta capacitat a qualsevol cosa que pugui llegir la imatge.
La categoria d'estat de desplegament és la que la gent oblida perquè sembla configuració. Les adreces d'escolta, els pools d'adreces, les rutes empenyudes, els paràmetres del resolutor i la integració local codifiquen supòsits sobre el primer amfitrió. Un segon node que les copia pot assignar d'un pool que ja posseeix una altra passarel·la, o dirigir clients cap a un recurs que només existeix al costat de l'original.
Què ha de rebre un node nou, i de qui
Un node gestionat de manera independent hauria de rebre les seves pròpies credencials mitjançant el procés d'alta aprovat, amb l'operació de signatura feta on viu la clau de signatura i no a l'amfitrió nou. Anoteu quina identitat es pot retirar sense pertorbar els altres nodes; si la resposta és "totes", el disseny té una identitat que fingeix ser dues.
Els valors de xarxa mereixen el mateix tracte. Trieu un pool, una adreça d'escolta i un conjunt de rutes empenyudes que no xoquin amb la passarel·la existent, i escriviu-los a les entrades de proveïment en lloc de a la imatge. L'entrada és revisable; la imatge no.
Hi ha un cas intermedi legítim. Un disseny de recuperació o replicació amb suport pot mantenir deliberadament una identitat lògica de servei entre amfitrions, amb accés controlat a la còpia antiga i un pla de rotació. És una decisió amb un propietari, no un valor per defecte que passa perquè la imatge era convenient.
openssl x509 -in /etc/openvpn/server/server.crt -noout -subject -issuer -dates
find /etc/openvpn -name '*.key' -o -name '*.pem' | head -20
La primera ordre us diu quina identitat presenta realment el node i qui la va signar. La segona és un inventari inicial, no una prova: el material privat pot viure fora d'aquest directori, dins d'una base de dades d'aplicació o en una capa d'instantània que el sistema de fitxers en marxa ja no mostra.
Què porta silenciosament una còpia de la imatge
Esborrar un fitxer de la revisió més nova d'una imatge no l'elimina de revisions antigues, memòries cau de capes o instantànies preses mentre existia. Per això les imatges que porten credencials s'han de tractar com a objectes sensibles durant tota la seva vida, no només en el moment de construir-les.
Comproveu el contingut de la imatge i les entrades de proveïment com a qüestions separades. La imatge respon "què hi ha dins d'aquest artefacte", mentre que les entrades responen "què esdevindrà aquesta instància a la primera arrencada". Una imatge neta amb un script d'arrencada que obté una clau compartida respon bé la primera pregunta i malament la segona.
Mantingueu les imatges de recuperació que contenen legítimament secrets restringides a les persones que les necessiten, i anoteu on es guarden. L'alternativa, una imatge que és convenient perquè funciona sense cap proveïment, és la mateixa imatge que atorga la identitat de la passarel·la a qui la trobi. Només una d'aquestes dues tasques apareix en un registre de construcció.
Comprovacions d'admissió abans de producció
Abans que el node accepti trànsit, confirmeu quatre coses: la identitat que presenta, els clients que acceptarà, els recursos als quals té permès arribar i el camí de tornada per a les adreces que reparteix.
systemctl status openvpn-server@lab --no-pager
ss -lunp 'sport = :1194'
ip -4 route show table all | grep -F '10.90.'
Després comproveu el cas negatiu, que és el que atrapa els accidents: té el node nou accés d'administrador o de client que estava pensat per a l'original? Una configuració copiada pot portar una entrada extra de client, una ruta de gestió heretada o una directiva push que tenia sentit al primer amfitrió.
Si una imatge amb secrets actius ja ha passat més enllà del seu límit aprovat, substituïu les credencials i conteníu les còpies. Treure el fitxer de la darrera construcció no és el mateix que retirar la credencial que les còpies antigues encara guarden, i l'escletxa entre aquests dos fets és exactament la finestra que necessita un atacant.