Eu usei um certificado LetsEncrypt para meu servidor web pessoal por algum tempo, o atualizei algumas vezes e ele funciona bem. Agora estou migrando para uma nova máquina (com um sabor ligeiramente diferente do unix).
Como transfiro meu certificado para a nova máquina e como faço o cliente LetsEncrypt funcionar nessa nova máquina?
Bobo, eu pensei que seria tão simples quanto transferir o diretório /etc/letsencrypt
, mas parece que eu estava enganado.
Depois disso, executar letsencrypt-renewer
gera uma exceção muito estranha que acaba em
TypeError: initializer for ctype 'char *' must be a str or list or tuple, not unicode
de OpenSSL/crypto.py
.
Em /etc/letsencrypt/accounts/
, há diretórios com nomes que parecem hashes e, em seguida, há um arquivo meta.json que contém o nome interno da máquina que usei para criar o certificado.
Executar letsencrypt certonly
me dá a oportunidade de selecionar uma conta (!) onde eu posso escolher entre o nome interno da máquina old e o nome interno das novas máquinas
A seleção de um dos dois e o envio do nome do meu domínio geram o mesmo erro (editado para ... anonimato)
IMPORTANT NOTES:
- The following errors were reported by the server:
Domain: <mydomain>
Type: urn:acme:error:unauthorized
Detail: Incorrect validation certificate for TLS-SNI-01 challenge.
Requested <hexadeciman29positions>.<morehexadecimal>
<hexadecimal>.acme.invalid from <myip>:443. Received certificate
containing '<mydomain>'
Então ... eu acho que há alguns arquivos importantes que eu negligenciei. Ou algo mais que eu não entendo.
Alguém sabe como fazer isso?