Come configurare SSL sul server Jenkins

È molto importante proteggere Jenkins abilitando SSL che viene eseguito in un ambiente di progetto. Questo articolo ti guida attraverso la guida passo passo per la configurazione di SSL su un server Jenkins.

Di seguito sono riportati i passaggi necessari per configurare SSL sul server Jenkins.

  1. Ottenere certificati SSL
  2. Convertire le chiavi SSL in formato PKCS12
  3. Convertire PKCS12 in formato JKS
  4. Aggiungere JKS al percorso Jenkins
  5. Configurare l’avvio di Jenkins per utilizzare il file JKS.
  6. Convalida Jenkins SSL

Consente di iniziare con la configurazione

Passo 1: Ottenere dominio & Certificati SSL

Si dovrebbe avere un dominio valido che punta a Jenkins server IP per configurare SSL. Il dominio può essere interno o esterno in base all’infrastruttura aziendale.

Il certificato SSL può essere ottenuto utilizzando i seguenti metodi.

  1. Nella maggior parte dei casi, avrai Jenkins in un ambiente privato con un DNS interno e potrai ottenere i certificati SSL interni dalle rispettive organizzazioni.
  2. È anche possibile creare certificati SSL autofirmati utilizzando OpenSSL. Segui questo blog, genera certificati SSL per creare certificati autofirmati utilizzando OpenSSL.
  3. Inoltre, è possibile utilizzare i servizi come let’s encrypt per i certificati SSL validi. Ma questi certificati devono essere rinnovati ogni tre mesi.

Passaggio 2: Converti le chiavi SSL in formato PKCS12

Nota: Se hai già il certificato in formato .p12 o .pfx, non devi eseguire questa conversione.

Il comando riportato di seguito converte i certificati SSL in formato PKCS12 intermedio denominatojenkins.p12. Assicurati di avere i seguenti certificati con te prima di eseguire il comando.

  1. ca.server crt
  2. .chiave
  3. server.crt

Inoltre,

  1. Sostituiscijenkins.devopscube.com nel comando con il tuo nome alias
  2. Sostituisciyour-strong-password con una password complessa.
openssl pkcs12 -export -out jenkins.p12 \-passout 'pass:your-strong-password' -inkey server.key \-in server.crt -certfile ca.crt -name jenkins.devopscube.com

Passo 3: Converti PKCS12 in formato JKS

Usa il seguente comando keytool per convertire il file jenkins.p12 in formato JKS.

Sostituisci quanto segue con i tuoi valori.

  1. -srcstorepass – Password utilizzata nel passaggio 3
  2. -deststorepass – Sostituire con una password complessa.
  3. -srcalias – nome alias utilizzato nel passaggio 2
  4. -destalias – Sostituire con un nome alias di destinazione.
keytool -importkeystore -srckeystore jenkins.p12 \-srcstorepass 'your-secret-password' -srcstoretype PKCS12 \-srcalias jenkins.devopscube.com -deststoretype JKS \-destkeystore jenkins.jks -deststorepass 'your-secret-password' \-destalias jenkins.devopscube.com

Dovresti vedere un file chiamato jenkins.jks nella tua posizione corrente.

Passo 4: Aggiungi JKS al percorso Jenkins

jenkins_keystore.jks il file deve essere salvato in una posizione specifica in cui Jenkins può accedervi.

Creiamo una cartella e spostiamo il tastojenkins_keystore.jks in quella posizione.

mkdir -p /etc/jenkinscp jenkins_keystore.jks /etc/jenkins/

Modifica le autorizzazioni delle chiavi e della cartella.

chown -R jenkins: /etc/jenkinschmod 700 /etc/jenkinschmod 600 /etc/jenkins/jenkins.jks

Passo 5: Modifica la configurazione di Jenkins per SSL

Tutte le configurazioni di avvio di Jenkins chiave sono presenti nel file /etc/sysconfig/jenkins. Tutte le configurazioni basate su SSL vanno in questo file.

Apri il file

sudo vi /etc/sysconfig/jenkins

Trova e sostituisci i valori nel file come mostrato di seguito.

Nota: Sostituire your-keystore-password con la password del Keystore, creata nel passaggio 3

JENKINS_PORT="-1"JENKINS_HTTPS_PORT="8443"JENKINS_HTTPS_KEYSTORE="/etc/jenkins/jenkins.jks"JENKINS_HTTPS_KEYSTORE_PASSWORD="<your-keystore-password>"JENKINS_HTTPS_LISTEN_ADDRESS="0.0.0.0"

Salvare la configurazione e riavviare Jenkins.

sudo systemctl restart jenkins

Controlla lo stato di Jenkins.

sudo systemctl status jenkins

Passaggio 6: Convalidare SSL

Ora si dovrebbe essere in grado di accedere Jenkins su https con porta 8443

https://<jenkins-dns/ip>:8443

È anche possibile utilizzare curl per verificare SSL

curl -k https://<jenkins-dns/ip>:8443

Configurare SSL per Jenkins

9Shares
  • Twitter
  • LinkedIn
  • Più



Lascia un commento

Il tuo indirizzo email non sarà pubblicato.