In VPN-tsjinnerbyld klonearje sûnder syn identiteit te klonearjen
Beslis oft de kopy ien gateway werombringt of in twadde taheakket. Werbrûkbere konfiguraasje, ûndertekeningsbewiis en netwurksteat reizgje elk oars.
It byld start op, de tsjinst begjint en kliïnten ferbine. Dat is it momint om te stopjen en te freegjen hokker fan twa hiel ferskillende operaasjes krekt bard is. Of de kopy werombringt ien logyske gateway dy't earder bestie, of hy foeget in twadde gateway ta oan de float. Beide binne legitime, en se hawwe ferskillende gefolgen foar identiteit en tagong. In masine dy't skjin opkomt, bewiist gjinien fan beide.
Trije betingsten beslisse it antwurd, en it binne de trije bakken materiaal dy't in byld drage kin. Sortearje se foardat it byld boud wurdt, net neidat it twa kear útrôle is.
Beslis earst hokker fan de twa operaasjes jo dogge
In werombringing hâldt ien tsjinstidentiteit. De âlde ynstânsje is fuort, de namme en it sertifikaat bliuwe, en kliïnten fertrouwe itselde einpunt. In tafoeging makket in twadde identiteit dy't kliïnten, logboeken en weromlûken allegear ûnderskiede moatte.
It ûnderskie is net kosmetysk. As twa libbene hosts itselde gateway-sertifikaat presintearje, kin in kliïnt se net útinoar hâlde, in auditspoar ek net, en it weromlûken fan dat sertifikaat ferwideret beide tagelyk. Dat is miskien krekt wat in bewust heechbeskikberensûntwerp wol, en it is selden wat in hastige byldkopy fan doel hat.
Dat de earste beslissing is in sin, opskreaun foardat it byld de bouthost ferlit: dizze kopy werombringt gateway A, of dizze kopy wurdt gateway B. Alles dêrnei is boekhâlding tsjin dy sin. As nimmen dy skriuwe kin, is de kopy net klear om boud te wurden.
Werbrûkbere ynfier, identiteit en bewâld, útrôlsteat
De werbrûkbere bak is de maklike: pakketten, neisjoen konfiguraasje sûnder geheimen, tsjinstsjabloanen, ferskerpingsynstellings. Dêr is in byld echt goed yn, en it kin sûnder beheining reprodusearre wurde.
De bak foar identiteit en bewâld is dêr't kopyen misgeane. De priveekaaai en it sertifikaat fan in gateway identifisearje dy gateway by elke kliïnt. De ûndertekeningskaai fan de sertifikaasjeautoriteit is in oar objekt mei in oare macht: it jout identiteiten út. Fertrouwen yn in útjouwer betsjut net dat elke nije gateway de mooglikheid om út te jaan nedich hat, en it meistjoeren fan de ûndertekeningskaai yn in byld jout dy mooglikheid oan alles dat it byld lêze kin.
De bak foar útrôlsteat is dejinge dy't minsken ferjitte om't er as konfiguraasje liket. Harkadressen, adrespools, trochdrukte rûtes, resolver-ynstellings en lokale yntegraasje kodearje allegear oannames oer de earste host. In twadde knooppunt dat se kopyelet, kin tawize út in pool dy't in oare gateway al besit, of kliïnten nei in boarne stjoere dy't allinne njonken it orizjineel bestiet.
Wat in nij knooppunt krije moat, en fan wa
In selsstannich beheard knooppunt soe syn eigen bewizen krije moatte fia it goedkarde ynskriuwproses, wêrby't de ûndertekening bart dêr't de ûndertekeningskaai wennet en net op 'e nije host. Skriuw op hokker identiteit weromlutsen wurde kin sûnder de oare knooppunten te steuren; as it antwurd "allegear" is, hat it ûntwerp ien identiteit dy't him foardocht as twa.
Netwurkwearden fertsjinje deselde behanneling. Kies in pool, in harkadres en in set trochdrukte rûtes dy't net botsse mei de besteande gateway, en skriuw se yn 'e foarsjenningynfier yn stee fan yn it byld. De ynfier is neisjenber; it byld net.
Der is in legitime tuskengefal. In stipe werombringings- of replikaasjeûntwerp kin mei opsetsin ien logyske tsjinstidentiteit oer hosts hâlde, mei kontrolearre tagong ta de âlde kopy en in rotaasjeplan. Dat is in beslissing mei in eigner, net in standert dy't bart om't it byld handich wie.
openssl x509 -in /etc/openvpn/server/server.crt -noout -subject -issuer -dates
find /etc/openvpn -name '*.key' -o -name '*.pem' | head -20
It earste kommando fertelt hokker identiteit it knooppunt eins presintearret en wa't it ûndertekene hat. It twadde is in begjinynventaris, gjin bewiis: privaat materiaal kin bûten dy map libje, yn in applikaasjedatabank, of yn in snapshielaach dy't it rinnende bestânsysteem net mear sjen lit.
Wat in kopy fan it byld stil mei har draacht
It fuortheljen fan in bestân út 'e nijste ferzje fan in byld ferwideret it net út âldere ferzjes, laachcaches of snapshots makke wylst it bestie. Dêrom moatte bylden mei bewizen as gefoelige objekten behannele wurde yn har hiele libben, net allinne op it momint dat se boud wurde.
Kontrolearje de byldynhâld en de foarsjenningynfier as aparte fragen. It byld beantwurdet "wat sit der yn dit artefakt", wylst de ynfier beantwurdet "wat sil dit eksimpel by de earste start wurde". In skjin byld mei in bootstrap-skript dat in dielde kaai hellet, beantwurdet de earste fraach goed en de twadde min.
Hâld werombringingsbylden dy't legitime geheimen befetsje beheind ta de minsken dy't se nedich binne, en skriuw op wêr't se bewarre wurde. It alternatyf, in byld dat handich is om't it sûnder hokker foarsjenning dan ek wurket, is itselde byld dat wa't it fynt de identiteit fan 'e gateway jout. Mar ien fan dy twa taken ferskynt yn in boulog.
Tagongskontrôles foar produksje
Foardat it knooppunt ferkear oannimt, befêstigje fjouwer dingen: de identiteit dy't it presintearret, de kliïnten dy't it akseptearret, de boarnen dêr't it ta komme mei, en it werompaad foar de adressen dy't it útjout.
systemctl status openvpn-server@lab --no-pager
ss -lunp 'sport = :1194'
ip -4 route show table all | grep -F '10.90.'
Kontrolearje dan it negative gefal, dat dejinge is dy't ûngelokken fangt: hat it nije knooppunt administraasje- of kliïnttagong dy't foar it orizjineel bedoeld wie? In kopyearre konfiguraasje kin in ekstra kliïntynfier drage, in erfd behearspoar, of in push-direktive dy't sin hie op 'e earste host.
As in byld mei libbene geheimen al bûtensyn goedkarde grins ferhuze is, ferfange de bewizen en behein de kopyen. It bestân út 'e lêste bou helje is net itselde as it bewisspul ôft sjen litten dat âldere kopyen noch hâlde, en it gat tusken dy twa feiten is krekt it finster dat in oanfaller nedich hat.