Solução da comunidade

Atualizar o MotionEye no ZimaOS em segurança para a versão mais recente

A user needed a newer MotionEye build for Telegram alerts; a community reply suggested Tugtainer, but no migration-safe update procedure was posted.

Se o pacote MotionEye do ZimaOS estiver preso numa versão antiga, não dependa de um atualizador genérico automático de contentores para avançar cegamente entre versões principais do MotionEye. Faça uma cópia de segurança da configuração e das gravações, identifique a imagem em execução e, em seguida, mude para uma imagem MotionEye mantida, depois de rever a versão e as alterações de migração.

Isto é ainda mais importante agora, porque o MotionEye 0.44.0 é uma versão relevante do ponto de vista da segurança: alterou a autenticação, corrigiu várias vulnerabilidades e mudou a forma como as instâncias remotas do MotionEye se autenticam entre si.

Verificar a versão e a imagem em execução

docker ps --format 'table {.Names}	{.Image}' | grep -i motioneye
docker logs --tail 100 motioneye

Não assuma que a versão apresentada no cartão da App Store e a imagem em execução são idênticas.

O MotionEye 0.44.0 é o limite de segurança atual

A atual página de versões do MotionEye indica a versão 0.44.0 como a versão mais recente e inclui reforços na autenticação, além de correções para avisos de segurança.

Faça primeiro uma cópia de segurança da configuração e dos vídeos

Registe os caminhos do anfitrião associados à configuração e aos ficheiros multimédia do MotionEye. Copie esses diretórios antes de substituir a imagem do contentor.

Utilize a imagem GHCR mantida

O projeto original publica agora imagens compatíveis com várias arquiteturas em ghcr.io/motioneye-project/motioneye. Prefira uma etiqueta estável fixa, como 0.44.0, em vez de uma imagem antiga abandonada ou de uma etiqueta de desenvolvimento flutuante.

Não faça atualizações automáticas sem ler as notas da versão

O MotionEye 0.44.0 altera a autenticação remota do MotionEye e exige palavras-passe quando implementações mais antigas podiam permitir credenciais em branco. Por isso, uma extração automática do contentor pode ser iniciada com sucesso, enquanto as câmaras remotas deixam de estabelecer ligação.

Porque é que o Tugtainer não é a resposta completa

A resposta no fórum sugeriu o Tugtainer para atualizar os contentores. Um atualizador de contentores pode extrair e reimplementar uma imagem, mas não consegue determinar se a estrutura antiga dos volumes, as credenciais, os segredos das câmaras remotas ou as alterações incompatíveis são compatíveis.

Verifique as câmaras depois da atualização

Verifique as câmaras locais, as câmaras MotionEye remotas, os caminhos de gravação, as notificações e qualquer integração com o Telegram que considere importante. Confirme a interface no porto 8765 e consulte os registos para detetar erros de autenticação ou das câmaras.

Não exponha diretamente o MotionEye à Internet

Mesmo depois das atualizações de segurança, mantenha a interface de administração atrás de uma rede privada, VPN ou ligação HTTPS autenticada, em vez de utilizar um simples reencaminhamento de portas.

O guia personalizado do Docker apresenta o fluxo de trabalho de contentores do ZimaOS.

Verifique a arquitetura da imagem

Utilize uma imagem compatível com a arquitetura do anfitrião ZimaOS. O registo de contentores original publica atualmente várias arquiteturas Linux, pelo que não há motivo para recriar uma imagem antiga apenas para obter suporte para amd64.

Conte com alterações na autenticação depois da versão 0.44.0

O MotionEye 0.44.0 exige um comportamento mais rigoroso das credenciais e alterou a autenticação remota do MotionEye. Se as câmaras remotas deixarem de funcionar após a atualização, verifique o novo fluxo de segredo partilhado/credenciais antes de reverter a versão.

Mantenha uma cópia de segurança da configuração para reversão

Não substitua a única configuração funcional na primeira tentativa de atualização. Mantenha uma cópia datada do diretório de configuração, para poder restaurar o contentor e as definições anteriores caso uma migração cause problemas.

Perguntas frequentes

Qual é a versão atual do MotionEye?

O projeto original indica a versão 0.44.0 como a versão mais recente.

Posso simplesmente alterar a etiqueta da imagem?

Apenas depois de fazer uma cópia de segurança dos dados e ler as notas da versão, sobretudo porque a versão 0.44.0 altera o comportamento da autenticação.

O Tugtainer tratará todas as atualizações de forma segura?

Não. Pode automatizar as atualizações das imagens, mas não consegue validar migrações incompatíveis ao nível da aplicação.

Porque devo atualizar se a minha versão antiga ainda funciona?

A versão 0.44.0 inclui correções de segurança, pelo que permanecer em versões antigas vulneráveis implica um risco evitável.