SURFscz / SRAM-deploy

Deploy scripts for the SCZ
Apache License 2.0
5 stars 5 forks source link

ACME voor TLS certs #334

Open baszoetekouw opened 2 years ago

baszoetekouw commented 2 years ago

In de huidige implementatie staan de frontend TLS keys in de configuratie van ansible. Hoewel ze geencrypt zijn, is dit onwenselijk (zie https://wiki.surfnet.nl/display/coininfra/Beleid+toepassing+cryptografie).

Dit moet worden vervangen door een oplossing op basis van ACME. De keys kunnen dan automatisch door ansible op de lb hosts worden gegeneerd en automatisch worden gesigned door SURFcertificaten (zie https://wiki.surfnet.nl/display/SCERTS/ACME)

baszoetekouw commented 1 year ago

@mrvanes ik heb credentials voor de SURFcert acme access voot test, zodat je eea kan uitproberen.

mrvanes commented 1 year ago

Gaat het dan expliciet om de vervanging van deze task? https://github.com/SURFscz/SRAM-deploy/blob/main/roles/tls_fixed_cert/tasks/main.yml

En is het cert wat daar gedeployed word een wildcard? En moet certbot dan ook een wilcard cert aanvragen (dan heb je DNS integratie nodig) of voor alle hostnames een subject alt in het cert op laten nemen?

baszoetekouw commented 1 year ago

Ik wil denk ik liever een nieuwe rol, zodat we makkelijker dit eerst op test kunnen uitproberen zonder dat we de rest van het platform raken. Of misschien kunnen we tls_letsencrypt hergebruiken.

En we hebben geen *-certificaat, maar 1tje met losse SANs.

mrvanes commented 1 year ago

Ik denk dat we de tls_letsencrypt kunnen hergebruiken door alleen wat aanpassingen te maken in de te gebruiken ACME server

mrvanes commented 1 year ago

Ik kan lokaal geen ACME doen omdat ik geen publieke DNS namen voor m'n VM's heb en naar test kan ik niet deployen omdat ik dan weer niet bij de secrets mag. We hebben destijds geprobeerd om naar een minimale set zonder privileges te bewegen, maar dat leek (toen) een gebed zonder end.