---
title: Certificado (SSL)
slug: aiops2/certificado-ssl
description: Learn how to configure SSL certificates in the Simon application with this comprehensive document. Discover step-by-step instructions for installing Let's Encrypt certificates using the "proxycert" container and utilizing custom SSL certificates. Ensure a
docTags: 
createdAt: 2023-10-20T18:16:41.786Z
---

### Padrão - Proxy Cert (SSL)

Por padrão o AIOPS é instalado expondo a porta 80 para uso na intranet. Caso queira apontar um domínio com certificado SSL automático, utilize o container *proxycert* ele registrará um certificado Let's Encrypt através do domínio (Aviso: Lembre-se de expor a porta 80 publicamente durante o registro do domínio).

```shell

# Instalar o certificado automático com Let's Encrypt:
simonctl proxycert

# Se não existir, gerar um novo arquivo dhparam com 4096 bits
openssl dhparam -out /dados/etc/nginx/certs/dhparam.pem 4096

```

### Certificado Próprio (SSL custom)

Colocar os arquivos na pasta `/dados/etc/nginx/certs`

Caso esteja utilizando apenas o container **nginx-proxy** (simonctl proxy)**:**
Editar o arquivo `/dados/etc/nginx/proxy.conf`

Ao utilizar o container de ssl automático **nginx-proxy-cert** (simonctl proxycert)**:**
Editar o arquivo `/dados/etc/nginx/proxy-ssl.conf`

```shell
# Adicionar o conteudo abaixo no arquivo: 
# /dados/etc/nginx/proxy.conf ou /dados/etc/nginx/proxy-ssl.conf

upstream simon.customdomain.com {
    server 127.0.0.1:80;
}

server {
    server_name simon.customdomain.com;
    listen 443 ssl http2;
    ssl_protocols TLSv1 TLSv1.1 TLSv1.2 TLSv1.3;
    ssl_ciphers 'ECDHE-ECDSA-CHACHA20-POLY1305:ECDHE-RSA-CHACHA20-POLY1305:ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-RSA-AES128-GCM-SHA256:ECDHE-ECDSA-AES256-GCM-SHA384:ECDHE-RSA-AES256-GCM-SHA384:DHE-RSA-AES128-GCM-SHA256:DHE-RSA-AES256-GCM-SHA384:ECDHE-ECDSA-AES128-SHA256:ECDHE-RSA-AES128-SHA256:ECDHE-ECDSA-AES128-SHA:ECDHE-RSA-AES256-SHA384:ECDHE-RSA-AES128-SHA:ECDHE-ECDSA-AES256-SHA384:ECDHE-ECDSA-AES256-SHA:ECDHE-RSA-AES256-SHA:DHE-RSA-AES128-SHA256:DHE-RSA-AES128-SHA:DHE-RSA-AES256-SHA256:DHE-RSA-AES256-SHA:AES128-GCM-SHA256:AES256-GCM-SHA384:AES128-SHA256:AES256-SHA256:AES128-SHA:AES256-SHA:!DSS';
    ssl_prefer_server_ciphers on;
    ssl_session_timeout 5m;
    ssl_session_cache shared:SSL:50m;
    ssl_session_tickets off;
    ssl_certificate /etc/nginx/certs/<arquivo>.crt;
    ssl_certificate_key /etc/nginx/certs/<arquivo>.key;
    ssl_dhparam /etc/nginx/certs/dhparam.pem;
    ssl_stapling on;
    ssl_stapling_verify on;
    add_header Strict-Transport-Security "max-age=31536000" always;
    add_header X-XSS-Protection "1; mode=block";
    add_header X-Frame-Options "SAMEORIGIN";
    server_tokens off;

    location / {
        proxy_pass http://simon.customdomain.com;
    } 
}
```

### Finalizar a configuração

```shell

# Testar a configuração do nginx
docker exec -ti nginx-proxy nginx -t

# A saída do console deverá ser:
# ....
#    nginx: the configuration file /etc/nginx/nginx.conf syntax is ok
#    nginx: configuration file /etc/nginx/nginx.conf test is successful

# Se o teste foi concluído com sucesso, reiniciar o proxy
# Caso utilize o arquivo proxy.conf 
docker restart nginx-proxy

# E/Ou ao utilizar o container proxycert (nginx-proxy-cert)
# através do arquivo proxy-ssl.conf
docker restart nginx-proxy-cert

```

***

# Proxy do APM Traefik (opcional)

É obrigatório que o DNS seja publicado (internet) e adicionado o certificado HTTPS (TLS).

Se houver certificados próprios (TLS), colocar os arquivos na pasta:&#x20;
`/dados/etc/nginx/certs/`

Para configurar o proxy do traefik criar o seguinte arquivo:
`/dados/etc/traefik/dynamic/certs-traefik.yaml`

```yaml
# conteúdo do arquivo de certificado customizado:
# /dados/etc/traefik/dynamic/certs-traefik.yaml
tls:
  certificates:
    - certFile: /etc/certs/example.crt
      keyFile: /etc/certs/example.key
```

