https://www.hexonet.net/blog/migrating-new-ca-for-openvpn
In the first step, the root certificate of the new CA gets added to the CA file of the OpenVPN Server (stacked certificate).
Also, the server certificate is replaced by one signed by the new CA. Additionally, an intermediate certificate (OLD-NEW-IM.crt) that uses the private key of the new CA, but is signed by the old CA, gets added to the server certificate file.
So, the server certificate file will consist of both the actual new server certificate, and the intermediate certificate. The VPN server will return both certificates to each connecting client.
This allows clients that only support the root certificate of the old CA to verify the intermediate certificate, which in turn verifies the new server certificate.
IMPORTANT: When signing the new server certificate, the 'authorityKeyIdentifier' section must only include the keyid, and not the issuer. This is neccessary to prevent issues related to different subjects of the old and new CA's.
ezt egyaltalan nem trivialis ezt megcsinalni, napokig olvasgattam emesztettem, keresgeltem mig vegul ma raszantam magam... sok oranyi kinlodas, patcheles utan vegulis sikerult a mukodo certeket osszehozni.
Az easy-rsa v2-t meg kellett kicsit patchelni hozza:
- openssl-1.0.0.cnf-ben a server szekcioban authorityKeyIdentifier=keyid,issuer:always vegerol kivenni az :always-t
- pkitool-ban atirni, hogy ha van mar $FN.key file, akkor ne hozzon letre ujat (-newkey + -keyout helyett -key opcio)
- pkitool-ban atirni az -md sha1 opciot -md sha256-ra
Innentol mar viszonylag egyszeru, persze miutan kikiserleteztem a megfelelo sorrendet/metodikat:
1. megcsinalod az uj CA-t (. ./vars ; ./clean-all ; ./build-ca ) es a szerver kulcsot (./build-key-server server1)
2. mentsd le / nevezd at az 1. pontban generalt CA kulcsot+certet, es rakd a helyere a regi CA kulcs+cert fileokat! az uj CA kulcsot masold oda intermed.key neven is!!!
3. elkeszitjuk az intermediate cert-et, ami majdnem ugyanolyan mint az uj CA, csak nem sajat magat irja ala (self-signed) hanem a regi CA-val lesz alairva:
./build-inter intermed
- fontos, hogy a .key mar legyen ott es legyen azonos az uj CA privat kulcsaval
- fontos, hogy a subject (teljes hosszaban, beleertve a city stb reszeket de foleg a CN-t) legyen azonos az uj CA-eval
ha mindent jol csinaltal, akkor az uj szerver kulcs ellenorizheto az uj CA-val (nyilvan, hisz azzal generaltad) es a regi CA-val is (ebben az esetben kell hozza az intermed.crt is):
# openssl verify -verbose -CAfile ca-old.crt -untrusted intermed.crt server1.crt
# openssl verify -verbose -CAfile ca-new.crt -untrusted intermed.crt server1.crt
Ha mindketto OKE, akkor a 2 ca-t (old es new) osszefuzve masold az openvpn-be CA-nak, az uj szerver kulcsot, hozzafuzve az intermed certet pedig a szrever cert-hez, es restart! Az intermed cert miatt a regi CA is tudja hitelesiteni az uj server certet, es nyilvan az uj CA is, igy raersz szep lassan lecserelgetni a klienseken a CA filet (es a kulcsaikat is persze).
- arpi_esp blogja
- A hozzászóláshoz be kell jelentkezni
- 376 megtekintés
Hozzászólások
Nájsz!
Miért nem migráltál esay rsa v3-ra? Lehet ott kevesebbet kellett volna mókolni...
- A hozzászóláshoz be kell jelentkezni
neztem, de ott inkabb tobbet...
eredetileg sima openssl parancsokkal mokoltam, azzal probaltam az intermed certet is letrehozni, de ha sikeurlt is, nem egyezett a subject-je az eredetivel, hiaba parametereztem fel ugyanugy... (a leirasok meg mindenfele template config fileokat irogatnak at, azt inkabb kihagytam :))
- A hozzászóláshoz be kell jelentkezni
Egyszerű CA-hoz én ezt használom:
https://github.com/chris2511/xca/
Ez egy openssl gui. Mindent "is" tud, de a lényeg hogy elég jól átlátható és kezelhető.
- A hozzászóláshoz be kell jelentkezni
ki kell dobni az ilyen hulladek fosokat mint openvpn, es vagy hekkelsz magadnak wireguardot (headscale) vagy fizetsz a tailscalert, problem solved.
- A hozzászóláshoz be kell jelentkezni
hat ahol van beleszolasom ott ipsec van, nem ilyen hazibarkacs vackok mint wireguard meg openvpn :)
- A hozzászóláshoz be kell jelentkezni
ipsec?????? kevesebb kukara valo hulladek fos van, ami raadasul fos is, es irto fos is. ja, nem irtam meg, hogy fos?
a tailscale messze van a "hazibarkacs" kategoriatol, cserebe 2023-ba huzza a kis RAS mernokok agyat 1970-bol.
- A hozzászóláshoz be kell jelentkezni
Én már csináltam ilyet, de közel se volt ennyire komplikált. Egyszerűen összefűzöd a két CA certet egy fájlba, és akkor mindkettő által aláírt certet elfogadja.
- A hozzászóláshoz be kell jelentkezni