venerdì , Marzo 29 2024
Ultime Notizie
Home / Linux / Configurazione SSL/HTTPS Wildfly Application Server

Configurazione SSL/HTTPS Wildfly Application Server

Ciao Ragazzi,

ritorno per fare alcune considerazioni sull’installazione di un certificato SSL e quindi l’abilitazione di HTTPS su JBoss.

Ormai diventato da qualche anno Wildfly è uno dei più diffusi application server insieme a Tomcat per quanto riguarda le applicazioni sviluppate in Java.

Oggi vediamo come configurare HTTPS.

La ricetta di oggi richiede:

  • Certificato SSL
  • Chiave privata usata per generare il CSR e quindi ottenere il Certificato
  • Certificato della CA (Certification Authority) oppure CC (Chain Certificate)
  • Una Password (che definiremo noi)
  • JBoss Wildfly installato

Per farvi capire meglio la storia dei certificati (chi è più pratica può tranquillamente passare avanti)

 

Per prima cosa compattiamo tutti i certificati sopra indicati in un unico .pfx che conterrà tutte le informazioni riguardo il certificato, la ca e la chiave privata. Per fare questo servirà definire una password (perchè il pfx contiene tutte le info del certificato e nelle mani sbagliate potrebbe essere dannoso!)

Diamo quindi il comando da terminale:

openssl pkcs12 -export -out myapp.pfx -in mycert.crt -inkey myserverkey.key -certfile ca.crt

Spiegare il comando è abbastanza inutile perchè la sintassi parla da sola!

Ora che abbiamo il nostro myapp.pfx lo spostiamo nella cartella: (${WILDFLY_HOME}/standalone/configuration)

Modifichiamo adesso il file con config standalone.xml alla sezione ApplicationRealm (se non servono particolari configurazioni, altrimenti si può fare tranquillamente un Realm dedicato) come segue:

<security-realm name=”ApplicationRealm”>
    <server-identities>
        <ssl>
           <keystore path=”myapp.pfx” relative-to=”jboss.server.config.dir” keystore-password=”<your-password>” />
        </ssl>
    </server-identities>
</security-realm>

La password del keystore in realtà non è altro che la password con cui abbiamo esportato il pfx.

Di base JBoss utilizza, come anche Tomcat, la porta 8443 per la parte SSL.

Se per caso vogliamo forzare l’utilizzo della porta 443 (HTTPS) possiamo o mettere davanti a JBoss un reverse proxy fatto ad esempio con Apache o Nginx che fanno il redirect del traffico sulla 443 verso la 8443 locale (Soluzione consigliata) oppure con delle regole IPTABLES (Soluzione di laboratorio):

sudo iptables -t nat -A PREROUTING -p tcp –dport 443 -j REDIRECT –to-ports 8443
sudo iptables -t nat -A OUTPUT -p tcp –dport 443 -o lo -j REDIRECT –to-port 8443
sudo service iptables save

Abbiamo finito!

Adesso possiamo riavviare JBoss e andare sulla porta https://mydomain:8443 oppure https://mydomain

Enjoy!

Info Paolo Daniele

Ingegnere delle Telecomunicazioni, appassionato di informatica fin da piccolo ho trasformato la passione in lavoro. Con il PHP faccio tutto (o quasi...) ma non disprezzo altri linguaggi all'occorrenza. Se vi piace il mio sito, o vi è utile, o vi sto simpatico, offritemi una birra!

Ti potrebbe interessare

Deploy WordPress e MySQL in un Cluster Kubernetes con Persistent Volumes

Oggi voglio parlare di come deployare su un cluster Kubernetes un WordPress+MySQL utilizzando volumi persistenti …

Lascia un commento

Il tuo indirizzo email non sarà pubblicato. I campi obbligatori sono contrassegnati *