Como gerar o certificado SSL LetsEncrypt usando o desafio CloudFlare DNS-01 e usá-lo no Synology NAS

Como Gerar O Certificado Ssl Letsencrypt Usando O Desafio Cloudflare Dns 01 E Usa Lo No Synology Nas



Disk Station Manager v7 (DSM 7) é o sistema operacional dos dispositivos Synology NAS. Você pode configurar os certificados Let’s Encrypt SSL para seu Synology NAS na interface da web do DSM 7. Por padrão, o Synology DSM 7 usa o desafio HTTP-01 para verificar a propriedade do domínio (que você deseja usar para o seu Synology NAS) e emitir um certificado SSL para o domínio. Mas o desafio HTTP-01 não funcionará a menos que você tenha um endereço IP público e seu computador seja acessível pela Internet. Portanto, se quiser usar os certificados Let’s Encrypt SSL para sua rede doméstica ou rede privada, você deverá usar o desafio DNS-01. Quando o desafio DNS-01 é usado, Let’s Encrypt verifica a propriedade do domínio usando o servidor DNS do domínio. Portanto, também funciona para redes privadas. Infelizmente, a interface da web do Synology DSM 7 não oferece nenhuma maneira de obter os certificados Let’s Encrypt SSL usando o desafio DNS-01.

Felizmente, o programa “acme.sh” pode ser instalado em seu Synology NAS e é usado para gerar e renovar os certificados Let’s Encrypt SSL usando o desafio DNS-01.







Neste artigo, mostraremos o seguinte:



  • Como instalar “sh” em seu Synology NAS
  • Como usar “acme.sh” para gerar um certificado Let’s Encrypt SSL (por meio do desafio DNS-01) para o nome de domínio que você está usando em seu Synology NAS
  • Como instalar o certificado Let’s Encrypt SSL gerado “acme.sh” em seu Synology NAS
  • Como configurar o sistema operacional DSM 7 do seu Synology NAS para usar o certificado SSL Let’s Encrypt gerado
  • Como configurar seu Synology NAS para renovar automaticamente os certificados Let’s Encrypt SSL gerados usando “acme.sh”

Neste artigo, usaremos o servidor DNS CloudFlare para demonstração. Você pode usar outros Serviços DNS suportados por acme.sh também. Tudo que você precisa fazer é fazer os ajustes necessários.



Tópico de Conteúdo:

  1. Criando um usuário Certadmin no Synology NAS
  2. Configurando o servidor DNS CloudFlare para o desafio LetsEncrypt DNS-01
  3. Configurando outros serviços DNS para o desafio LetsEncrypt DNS-01
  4. Acessando o Terminal Synology NAS via SSH
  5. Baixando Acme.sh em seu Synology NAS
  6. Instalando Acme.sh em seu Synology NAS
  7. Gerando um certificado SSL Let’s Encrypt usando Acme.sh para seu Synology NAS
  8. Instalando o certificado SSL Let’s Encrypt em seu Synology NAS usando Acme.sh
  9. Configurando o certificado SSL Let’s Encrypt como padrão em seu Synology NAS
  10. Configure o Synology NAS para renovação automática de um certificado SSL Let’s Encrypt usando Acme.sh
  11. Conclusão
  12. Referências

Criando um usuário Certadmin no Synology NAS

Primeiro, você deve criar um novo usuário administrador em seu Synology NAS para gerar e renovar os certificados Let’s Encrypt SSL.





Para criar um novo usuário administrador no Synology NAS, clique em Painel de controle [1] > Grupo de usuários [2] na interface da web do DSM 7.



Clique em “Criar” na guia “Usuário”.

Digite “certadmin” como o nome de usuário [1] , uma breve descrição opcional para o usuário [2] , a senha de login do usuário [3] e clique em “Avançar” [4] .

Para criar um usuário administrador, marque o grupo “administradores” na lista [1] e clique em “Avançar” [2] .

Clique em “Avançar”.

Clique em “Avançar”.

Clique em “Avançar”.

Clique em “Avançar”.

Clique em “Concluído”.

O certoadmin o usuário agora deve ser criado em seu Synology NAS.

Configurando o servidor DNS CloudFlare para o desafio Let’s Encrypt DNS-01

Para usar o servidor DNS CloudFlare para o desafio Let’s Encrypt DNS-01, você precisa gerar um token DNS CloudFlare. Você pode gerar um token de servidor DNS CloudFlare no painel CloudFlare. Para maiores informações, leia este artigo .

Configurando outros serviços DNS para o desafio Let’s Encrypt DNS-01

“Acme.sh” oferece suporte a outros serviços DNS. Se não quiser usar o DNS CloudFlare, você pode usar qualquer um dos serviços DNS suportados por “acme.sh”. A configuração é um pouco diferente para diferentes serviços DNS. Para maiores informações, verifique o guia da API DNS “acme.sh” .

Acessando o Terminal Synology NAS via SSH

Para instalar “acme.sh” e gerar e instalar um certificado Let’s Encrypt SSL em seu Synology NAS, você precisa acessar o Terminal de seu Synology NAS. Para obter mais informações sobre como ativar o acesso SSH no seu Synology NAS e acessar o Terminal do seu Synology NAS, leia este artigo .

Depois de ativar o acesso SSH em seu Synology NAS, abra um aplicativo de terminal em seu computador e execute o seguinte comando:

$ ssh certaadmin@

Você será solicitado a digitar a senha de login do certoadmin do utilizador. Digite a senha de login do certoadmin usuário do seu Synology NAS e pressione . Você deve estar conectado ao seu Synology NAS como o certoadmin do utilizador.

Baixando Acme.sh em seu Synology NAS

Para baixar a versão mais recente do cliente “acme.sh”, execute o seguinte comando:

$ wget -O /tmp/acme.sh.zip https://github.com/acmesh-official/acme.sh/archive/master.zip

A versão mais recente do arquivo do cliente “acme.sh” “acme.sh.zip” deve ser baixada no diretório “/tmp” do seu Synology NAS.

Instalando Acme.sh em seu Synology NAS

Para extrair o arquivo “/tmp/acme.sh.zip” no diretório “/usr/local/share” do seu Synology NAS, execute o seguinte comando e digite a senha de login do usuário certoadmin e pressione quando solicitada a senha. O arquivo “/tmp/acme.sh.zip” deve ser extraído no diretório “/usr/local/share/acme.sh-master”.

$ sudo 7z x -o /usr/local/share /tmp/acme.sh.zip

Para simplificar, renomeie o diretório “acme.sh-master” para apenas “acme.sh” com o seguinte comando:

$ sudo mv -v /usr/local/share/acme.sh-master /usr/local/share/acme.sh

Para tornar o certoadmin usuário proprietário do diretório “/usr/local/share/acme.sh” e seu conteúdo, execute o seguinte comando:

$ sudo chown -Rfv certaadmin /usr/local/share/acme.sh

Gerando um certificado SSL Let’s Encrypt usando Acme.sh para seu Synology NAS

Para gerar um certificado SSL Let’s Encrypt para o nome de domínio que você está usando em seu Synology NAS, navegue até o diretório “/usr/local/share/acme.sh” da seguinte forma:

$ cd /usr/local/share/acme.sh

Agora, você precisa exportar as variáveis ​​de ambiente do token da API DNS necessárias. Usamos o DNS CloudFlare para gerenciar o nome de domínio que usamos em nosso Synology NAS. Então, para nós, tudo o que precisamos fazer é exportar a variável de ambiente CF_Token com o valor do token API DNS CloudFlare. Se você estiver usando algum outro serviço DNS, verifique a documentação da API DNS “acme.sh” para as variáveis ​​que você precisa exportar para que “acme.sh” funcione com seu serviço DNS.

$ export CF_Token=''

Além disso, exporte as variáveis ​​de ambiente Synology necessárias para que “acme.sh” possa instalar os certificados SSL gerados em seu Synology NAS.

$ exportar SYNO_Username = 'certadmin'
$ export SYNO_Password='Sua_certadmin_login_Password'
$ export SYNO_Certificate='Vamos criptografar'
$ exportar SYNO_Create=1

Para gerar um certificado Let’s Encrypt SSL para o nome de domínio “*.nodekite.com” (curinga) usando o plugin CloudFlare DNS ( –dns dns_cf ), execute o seguinte comando:

$ ./acme.sh --server letsencrypt --issue --dns dns_cf --home $PWD -d '*.nodekite.com'

Se estiver usando outros serviços DNS, você precisará alterar o plugin DNS (–dns ) no comando anterior de acordo. Para maiores informações, verifique a documentação da API DNS “acme.sh” .

Um certificado Let’s Encrypt SSL está sendo gerado. Demora um pouco para ser concluído.

Neste ponto, o certificado Let’s Encrypt SSL deve ser gerado.

Instalando o certificado SSL Let’s Encrypt em seu Synology NAS usando Acme.sh

Depois que o certificado Let’s Encrypt SSL for gerado para o nome de domínio (*.nodekite.com neste caso) do seu Synology NAS, você poderá instalá-lo em seu Synology NAS com o seguinte comando:

$ ./acme.sh -d '*.nodekite.com' --deploy --deploy-hook synology_dsm --home $PWD

Se você tiver uma autenticação de dois fatores habilitada para o certoadmin usuário, você receberá um código OTP. Você deve digitar o código OTP e pressionar .

Se você não tiver a autenticação de dois fatores habilitada para o certoadmin usuário, deixe-o vazio e pressione .

Imprensa .

O certificado SSL Let’s Encrypt gerado deve ser instalado em seu Synology NAS.

Assim que o certificado Let’s Encrypt SSL estiver instalado em seu Synology NAS, ele será exibido no Painel de controle > Segurança > Certificado seção da interface web do DSM 7 do seu Synology NAS.

Configurando o certificado SSL Let’s Encrypt como padrão em seu Synology NAS

Para gerenciar os certificados SSL do seu Synology NAS, navegue até o Painel de controle > Segurança > Certificado seção da interface da web do DSM 7 do seu Synology NAS.

Para definir o certificado Let’s Encrypt SSL recém-instalado como padrão para que os serviços da web recém-instalados em seu Synology NAS o utilizem por padrão, selecione o certificado Let’s Encrypt SSL e clique em Ação > Editar .

Marque “Definir como certificado padrão” [1] e clique em “OK” [2] .

O certificado Let’s Encrypt SSL deve ser definido como o certificado padrão para o seu Synology NAS.

Para configurar os serviços web existentes do seu Synology NAS para usar o certificado Let’s Encrypt SSL, clique em “Configurações”.

Como você pode ver, todos os serviços da web usam o certificado SSL autoassinado Synology.

Para alterar o certificado SSL de um serviço web, clique no respectivo menu suspenso à direita.

Em seguida, selecione o certificado Let’s Encrypt SSL que deseja usar para o serviço da web no menu suspenso.

Da mesma forma, selecione o certificado Let’s Encrypt SSL para todos os serviços web instalados em seu Synology NAS e clique em “OK”.

Clique em “Sim”.

As alterações estão sendo aplicadas. Demora alguns segundos para ser concluído.

Depois que o certificado Let’s Encrypt SSL for aplicado a todos os serviços da web do seu Synology NAS, atualize a página da web e sua interface da web do DSM 7 deverá usar o certificado Let’s Encrypt SSL.

Configurando Synology NAS para renovação automática do certificado SSL Let’s Encrypt usando Acme.sh

Para configurar seu Synology NAS para renovar automaticamente o certificado Let’s Encrypt SSL, navegue até Painel de controle > Agendador de tarefas na interface da web do DSM 7.

No Agendador de tarefas, clique em Criar > Tarefa agendada > Script definido pelo usuário .

Na guia “Geral”, digite “Renovar certificados SSL” na seção “Tarefa” [1] e selecione “certadmin” no menu suspenso “Usuário” [2] .

Na guia “Agendar”, selecione “Executar na data seguinte” [1] e selecione “Repetir mensalmente” no menu suspenso “Repetir” [2] .

Navegue até a guia “Configurações de tarefa”, digite o seguinte comando na seção “Script definido pelo usuário” [1] e clique em “OK” [2] .

/usr/local/share/acme.sh/acme.sh –renew –server letsencrypt -d “*.nodekite.com” –home /usr/local/share/acme.sh

Uma nova tarefa deve ser criada. A tarefa “Renovar certificados SSL” será executada todos os meses e garantirá que o certificado SSL Let’s Encrypt seja renovado antes de expirar.

Conclusão

Neste artigo, mostramos como instalar e usar o cliente ACME “acme.sh” para gerar um certificado Let’s Encrypt SSL por meio do desafio DNS-01 em seu Synology NAS. Também mostramos como instalar o certificado Let’s Encrypt SSL gerado em seu Synology NAS e configurar os serviços da web de seu Synology NAS para usá-lo. Por fim, mostramos como configurar uma tarefa agendada em seu Synology NAS para renovar automaticamente o certificado Let’s Encrypt SSL antes que ele expire.

Referências: