Pular para conteúdo

Configuração do SSL/HTTPS

Este guia cobre a configuração do SSL/HTTPS no IQ Server, utilizando um diretório centralizado de certificados (/opt/certificate) e um keystore .jks para habilitar conectores HTTPS no config.yml.


1. Criar Diretório de Certificados

No servidor onde o IQ Server está instalado:

mkdir -p /opt/certificate

Dar permissões:

chmod -R 777 /opt/certificate

A permissão 777 é permissiva. Mantenha este padrão apenas se já for o procedimento interno definido.


2. Gerar Certificado Autoassinado (Keystore JKS)

2.1. Verificar o binário do Java (caso necessário)

which java

2.2. Gerar o certificado autoassinado (via keytool padrão)

keytool -genkeypair \
  -alias iqserver \
  -keyalg RSA \
  -keysize 2048 \
  -keystore /opt/certificate/keystore.jks \
  -storepass 'senhaXP@23' \
  -keypass 'senhaXP@23' \
  -validity 1460 \
  -ext "SAN=IP:192.168.15.12" \
  -dname "CN=192.168.15.12, OU=Seguranca da Informacao, O=XP Investimentos, L=Sao Paulo, ST=SP, C=BR"

2.3. Caso o keytool não seja encontrado, use o caminho do Java

/usr/lib/jvm/java-17/bin/keytool -genkeypair \
  -alias iqserver \
  -keyalg RSA \
  -keysize 2048 \
  -keystore /opt/certificate/keystore.jks \
  -storepass 'senhaXP@23' \
  -keypass 'senhaXP@23' \
  -validity 1460 \
  -ext "SAN=IP:192.168.15.12" \
  -dname "CN=192.168.15.12, OU=Seguranca da Informacao, O=XP Investimentos, L=Sao Paulo, ST=SP, C=BR"

Substitua o IP (192.168.15.12) pelo IP real do servidor e utilize uma senha conforme política interna.

2.4. Verificar se o arquivo foi criado

ls -l /opt/certificate/keystore.jks

3. Editar o config.yml do IQ Server

3.1. Local do arquivo de configuração

/opt/sonatype-iq-server/config.yml

3.2. Edite o arquivo

vi /opt/sonatype-iq-server/config.yml

3.3. Localize o bloco server: e substitua SOMENTE os conectores

server:
  applicationContextPath: /

  applicationConnectors:
    - type: https
      port: 8070
      keyStorePath: /opt/certificate/keystore.jks
      keyStorePassword: senhaXP@23

  adminConnectors:
    - type: https
      port: 8071
      keyStorePath: /opt/certificate/keystore.jks
      keyStorePassword: senhaXP@23

O procedimento determina substituir apenas os conectores, mantendo o restante do arquivo conforme o padrão já existente no servidor.


4. Reiniciar e Validar

./demo.sh stop
./demo.sh start

Extra


Listar o conteúdo do keystore (visão geral)

/usr/lib/jvm/java-17/bin/keytool -list \
-keystore /opt/iq/keystore.jks \
-storepass 'senhaXP@23'

Ver os detalhes completos

/usr/lib/jvm/java-17/bin/keytool -list -v \
-keystore /opt/iq/keystore.jks \
-storepass 'senhaXP@23'