Solução do Discord

O Duplicati no CasaOS carrega, mas o início de sessão falha: verifique as variáveis de palavra-passe

A CasaOS user set SETTINGS_ENCRYPTION_KEY and a web-service password, saw Duplicati load, but still could not authenticate to the web interface.

Correção mais provável: o Duplicati em Docker utiliza DUPLICATI__WEBSERVICE_PASSWORD — com dois sublinhados — para a palavra-passe da interface. SETTINGS_ENCRYPTION_KEY encripta definições sensíveis na base de dados; não é a palavra-passe que introduz no navegador.

Utilize as duas variáveis para finalidades diferentes

environment:
  SETTINGS_ENCRYPTION_KEY: "long-random-key"
  DUPLICATI__WEBSERVICE_PASSWORD: "your-ui-password"

A documentação das variáveis secretas do Docker do Duplicati explica esta separação.

Recrie o contentor depois de editar o ambiente

Um contentor em execução mantém o ambiente com que foi iniciado. Recrie-o depois de alterar os valores do compose:

docker compose up -d --force-recreate

Em seguida, confirme os nomes das variáveis sem expor os valores secretos:

docker inspect duplicati --format '{{range .Config.Env}}{{println .}}{{end}}' | grep -E 'DUPLICATI|SETTINGS'

Verifique a proteção do nome do anfitrião

Se o acesso direto pelo IP funcionar, mas o nome de anfitrião ou o proxy inverso falhar, configure os nomes de anfitrião permitidos:

DUPLICATI__WEBSERVICE_ALLOWED_HOSTNAMES=backup.example.com

Um caráter universal * desativa a proteção e não é a predefinição recomendada.

Não confunda encriptação com autenticação

SETTINGS_ENCRYPTION_KEY protege as credenciais armazenadas na base de dados do Duplicati. Faça uma cópia de segurança segura, pois perder a chave pode tornar as definições encriptadas indisponíveis após uma migração.

Se o início de sessão continuar a falhar

  • verifique se existe uma variável de palavra-passe antiga em conflito;
  • consulte os registos do contentor depois de o recriar;
  • teste o IP direto da rede local antes do proxy;
  • confirme que o navegador acede ao contentor e à porta esperados;
  • não elimine a base de dados do Duplicati como primeira medida.

O fluxo de cópia de segurança e sincronização ajuda a distinguir cópias de segurança de sincronização. O catálogo de aplicações do ZimaOS ajuda a comparar ferramentas de cópia de segurança.

Para armazenamento de cópias de segurança em várias unidades, o ZimaCube 2 é uma plataforma de hardware adequada.

Porque é que os dois sublinhados são importantes

O Duplicati converte as opções da linha de comandos em variáveis de ambiente, substituindo o prefixo da opção por DUPLICATI__. Uma variável aparentemente semelhante com um único sublinhado não corresponde à mesma definição. Este é um problema comum em contentores, porque a interface continua a carregar mesmo quando a opção de autenticação pretendida nunca foi aplicada.

Verifique o contentor ativo, não apenas o formulário do CasaOS

O CasaOS pode apresentar os valores introduzidos, mas a prova decisiva é o ambiente dentro do contentor criado. Inspecione a configuração em execução e só depois reinicie ou recrie o contentor, quando o nome da variável esperado aparecer.

Observe os registos ao tentar iniciar sessão

docker logs -f duplicati

Tente iniciar sessão uma vez e procure rejeições do nome de anfitrião, falhas de autenticação, erros da base de dados ou avisos de arranque. Isto permite distinguir uma palavra-passe incorreta de um problema com o proxy ou com o cabeçalho do anfitrião.

Teste o IP direto antes do proxy inverso

Aceda temporariamente ao Duplicati através do IP da rede local do anfitrião CasaOS e da porta publicada. Se funcionar, mas o domínio não, concentre-se nos nomes de anfitrião permitidos e nos cabeçalhos do proxy inverso, em vez de repor as credenciais.

Preserve a chave de encriptação durante a migração

A chave de encriptação protege definições armazenadas, como as credenciais do serviço de armazenamento. Guarde-a num gestor de palavras-passe ou noutra cópia de segurança segura, independente do servidor. Um sistema de cópias de segurança cujo próprio segredo esteja armazenado apenas na máquina que protege cria uma armadilha de recuperação.

Evite começar por soluções destrutivas para a palavra-passe

Eliminar a base de dados do Duplicati pode remover a configuração e o histórico das tarefas de cópia de segurança. Confirme as variáveis de ambiente, o estado do contentor ativo, os nomes de anfitrião e os registos antes de considerar repor a base de dados ou reinstalar.

Perguntas frequentes

SETTINGS_ENCRYPTION_KEY é a minha palavra-passe de início de sessão?

Não. Utilize DUPLICATI__WEBSERVICE_PASSWORD para a autenticação na interface Web.

Porque é que a alteração da minha palavra-passe não teve efeito?

O contentor antigo pode ainda ter o ambiente anterior. Recrie-o.