Strumenti Utente

Strumenti Sito


infrastructure:certificati_lato_server

Certificati lato server

Una volta creato un server nuovo possiamo richiedere un certificato lato server per automatizzare alcuni aspetti del management e manutenzione.

Processo

  1. Tramite Ansible viene configurato il nuovo server
  2. Viene fatta una richiesta key signin request alla nostra CA, tramite l'utente request la richiesta ha un ID univoco e viene visualizzato a schermo. Ansible resta in attesa.
  3. Collegandosi in SSH alla CA con l'utente sign ci viene chiesto quale certificato vogliamo creare, l'ID univoco della richiesta ci permette di trovare la nostra richiesta
  4. Una volta confermata la richiesta sulla CA questa manda il certificato al nuovo server.

Il processo è asincrono e Ansible resta in attesa finché non viene firmato il certificato.

Login su CA con request

L'utente request viene usato soltanto da ansible per creare la key signin request.

Login su CA con sign

L'utente sign viene usato dali amministratori per firmare le key signin request.

Creare un certificato lato server

Una volta in possesso della chiave privata della CA e della chiave pubblica del server possiamo firmare il certificato lato server

ssh-keygen -s host_ca -I host_foo -h -n foo.bar.com -V +52w /etc/ssh/ssh_host_rsa_key.pub

Creare un certificato lato client

Una volta in possesso della chiave privata della CA e della chiave pubblica dell'utente possiamo firmare il certificato lato client

ssh-keygen -s user_ca -I user_edoput -n edoput,root -V +52w /path/to/id_rsa.pub

Aggiungere la CA al client

Per imporre al client ssh di fidarsi della certification authority bisogna aggiungere al file knonw_hosts la riga

@cert-authority *.lilik.it ssh-rsa AAAAB3[...]== Comment

e rimuovere da questo ogni riga in cui sono menzionati host che hanno un certificato (o loro alias).

Se vengono usati i nomi dati dal dns interno non ci saranno problemi ma se viene usato l'indirizzo ip verrà emesso un messaggio di errore “Certificate invalid: name is not a listed principal” visto che nel certificato lato host non si parla di indirizzi IP.

infrastructure/certificati_lato_server.txt · Ultima modifica: 2017/02/16 10:20 da edoput