# HTTPS e acesso remoto

O navegador pode usar o posto localmente em `http://127.0.0.1:8080` . O aplicativo iOS precisa de uma origem **HTTPS acessível com um certificado confiável**. No seu telefone, `localhost` refere-se ao próprio telefone.

## Escolha um endereço

Use um nome de host que resolva para o servidor posto das redes onde você usará o Mailwake. Uma rede privada ou VPN é adequada quando tanto o telefone quanto o servidor podem acessá-la. Verifique o DNS, as regras de firewall e a validade do certificado do telefone antes de criar um convite.

Mantenha a porta 8080 do posto vinculada ao loopback ou a uma rede Docker privada. Publique o endpoint HTTPS do proxy reverso. Use uma origem dedicada como `https://mail.example.org`, servindo o posto em `/`.

## Proxy reverso no host

Com o Caddy instalado no mesmo host, substitua o nome do host de exemplo e configure o DNS e as portas 80/443 para emissão de certificados:

```caddyfile
mail.example.org {
    reverse_proxy 127.0.0.1:8080
}
```

Para nginx, forneça o certificado e sua chave e preserve o Host original:

```nginx
server {
    listen 443 ssl;
    server_name mail.example.org;
    ssl_certificate /etc/letsencrypt/live/mail.example.org/fullchain.pem;
    ssl_certificate_key /etc/letsencrypt/live/mail.example.org/privkey.pem;
    location / {
        proxy_pass http://127.0.0.1:8080;
        proxy_set_header Host $http_host;
        proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
    }
}
```

Um proxy em um contêiner deve chegar ao posto por meio de sua rede Docker compartilhada; `127.0.0.1` dentro desse contêiner atinge apenas o contêiner de proxy. Exponha o posto apenas ao proxy ou a clientes confiáveis, porque os pares de proxy de rede privada podem fornecer cabeçalhos de encaminhamento.

## Verifique pelo telefone

Abra a origem HTTPS no Safari. Confirme se a página carrega com um certificado válido, faça login e salve uma configuração inofensiva para verificar cabeçalhos de proxy e solicitações de gravação. Então [conecte o aplicativo](connect-app.md). Se o Safari falhar, resolva primeiro os problemas de DNS, roteamento ou certificado.

Após alterar o endereço público, crie um novo convite com a nova origem e reconecte o App. O endereço armazenado da sua conexão deve corresponder ao endereço no qual você pretende confiar.
