Como renove os certificados SSL letsencrypt no Synology DSM?

3

Parece que, por algum motivo, os certificados que são gerados com o LetsEncrypt não são renovados automaticamente pelo Synology DSM mais recente.

Eu tentei o CLI, mas ele falha

sudo syno-letsencrypt renew-all -v

DEBUG: [syno.example.com] is not a subdomain of [my-syno.synology.me]
DEBUG: DDNS Curl: [https://ddns.synology.com/main.php?_=letsencrypt%2Fdelete&hostname=syno.example.com&myds_id=696423&auth_key=...&serial=1590MHN443201&txt=]
DEBUG: GET Request: https://ddns.synology.com/main.php?_=letsencrypt%2Fdelete&hostname=syno.example.com&myds_id=696423&auth_key=...&serial=1590MHN443201&txt=
DEBUG: Dns01 challenge: Teardown [{"code":"badparam"}].
DEBUG: DNS challenge failed, reason: { "error": 203, "msg": "Challenge setup is failed.", "file": "client.cpp:278"}
DEBUG: Normal challenge failed, reason: { "error": 107, "msg": "syno.example.com: Could not connect to syno.example.com", "file": "client.cpp:315"}
DEBUG: failed to open port 80.
DEBUG: close port 80.
DEBUG: Failed to renew /usr/syno/etc/certificate/_archive/8mSVmw/. { "error": 101, "msg": "failed to open port 80.", "file": "client.cpp:472"}

Como nota, verifiquei e a porta 80 de "syno.example.com" está acessível de fora e está carregando o Web Station.

Eu até tentei parar o Web Station antes de executar o comando renew mas parece que isso não tem efeito na execução do comando renew. ( /usr/syno/bin/synopkg stop WebStation ).

Uma observação interessante foi que, quando parei o Web Station, em vez de não responder na porta 80, a Synology decidiu redirecioná-lo para a porta 5000/5001.

    
por sorin 18.03.2017 / 19:39

1 resposta

0

Eu tive um problema ao atualizar o certificado também executando o DSM 6.1.5-15254, provavelmente diferente. Já que não há uma única resposta ainda, adicionando algumas notas - o que pode ou não ajudar no seu caso - mas talvez lhe dê algumas idéias.

Assim, vários sites mencionam que, ao atualizar através da CLI, você não precisa abrir a porta 80/443. Nos meus logs, eu recebi "falha ao abrir a porta 80" algumas vezes, mas ainda consegui atualizar meu certificado. Note que eu faço ter a porta 80 aberta e ao ir para: 80 eu vejo o "Web Station foi ativado. Para terminar de configurar seu site, ..." - página.

Você pode ver os registros assim:  sudo grep letsencrypt / var / log / messages

Tente atualizar seu site específico (em vez de todos). Note que eu tinha o servidor web em execução (não parei antes de executar o seguinte).  sudo syno-letsencrypt novo-cert -d syno.example.com -m [email protected] -v

(tente -vv) para informações mais detalhadas.

Se você acessar a linha "DEBUG: salvar em arquivos" na saída, verifique se o certificado é válido no DSM. Se ainda for inválido, faça o download do certificado através do DSM e compare-o com o caminho exibido após "cert_path" na saída de depuração (a última linha deve realmente ler "sucesso" - mas, no meu caso, não).

Se a incompatibilidade de certificados, provavelmente baixou, mas não atualizou a sinologia de 'cópia' está usando. Para contornar isso, usando o DSM, selecione "Add new certificate", em seguida, "Import" e selecione os 3 arquivos mostrados no "cert_path". Clique em OK e a sincronização irá reiniciar o "WebStation" (pode ter sido suficiente apenas reiniciar o servidor web).

Eu tinha um subdomínio aaa.mydomain.com para o qual ele não queria gerar um certificado. Eventualmente, eu removi o certificado para este do Synology DSM e mantive apenas o principal www.mydomain.com - o que funcionou.

Observação: há um limite de 20 solicitações de certificado - depois disso, vamos criptografá-lo por uma semana.

    
por 18.02.2018 / 13:11