Escolha o nome do servidor
O nome do servidor visível ao utilizador pode ser difícil de alterar mais tarde. Compreenda a delegação e os registos bem conhecidos utilizados pela sua implementação. Teste a descoberta de clientes e a federação em vez de assumir que um início de sessão web bem-sucedido prova ambas.
Utilize uma stack suportada
O Synapse usa habitualmente PostgreSQL para dados de produção, com serviços de apoio que dependem da escala e da configuração. Siga as recomendações atuais do upstream. Mantenha os workers, a base de dados e os timeouts do proxy reverso compatíveis com a carga.
Mantenha as afirmações de encriptação precisas
A encriptação ponto a ponto protege o conteúdo nas salas encriptadas suportadas entre os clientes participantes. O homeserver pode ainda processar metadados e conteúdo não encriptado. A cópia de segurança das chaves do cliente, a verificação e a recuperação da conta requerem uma explicação própria.
Manter a instância
Restrinja o registo quando apropriado, proteja as interfaces administrativas e de segredos partilhados e defina retenção deliberada de media e eventos. Faça backup da base de dados, da configuração e das chaves de assinatura de forma consistente e, em seguida, teste a recuperação.
Teste o cliente e os caminhos de federação separadamente
Um cliente como o Element acede ao API do cliente do homeserver, enquanto outros homeservers utilizam a descoberta de federação e os endpoints. Uma alteração no reverse proxy pode quebrar um enquanto o outro continua a funcionar. Teste uma nova conta, uma sala local e uma sala federada autorizada, depois verifique o comportamento de encriptação e recuperação a partir do cliente.
Documentação oficial: Guia de instalação atual do Synapse
Mantenha material de identidade durável
A base de dados não é toda a identidade do homeserver. Preserve a chave de assinatura e a configuração e segredos relevantes com uma cópia de segurança consistente. Verifique que suportes externos e histórico são retidos e defina uma política adequada à sua comunidade. Monitorize o armazenamento e as filas de workers antes que o crescimento se torne uma indisponibilidade.
Separe o nome da conta do endpoint de alojamento
Decida o server_name do Matrix antes da criação da conta: ele passa a fazer parte dos identificadores de usuários e salas. O hostname web que serve o Synapse pode ser diferente quando a descoberta/delegação está configurada corretamente. Planeje tanto a descoberta de clientes quanto a descoberta servidor-a-servidor, um certificado válido e a família de endereços realmente alcançável. O Element é um cliente, não um substituto para o homeserver. Mantenha uma rota de administrador independente e um contato de recuperação fora do homeserver.
- Escolha uma versão suportada do Synapse e uma implantação PostgreSQL adequada para produção.
- Mantenha o banco de dados e os listeners administrativos privados.
- Defina explicitamente a política de registo e de federação.
Documentação oficial: Instalação do Synapse · Delegação Matrix
Construa a descoberta e o proxy como parte do serviço
Gere a configuração para a versão selecionada, persista a chave de assinatura e a base de dados, e configure o proxy de acordo com as orientações oficiais do Synapse. A origem visível externamente, os cabeçalhos reencaminhados e os caminhos dos pedidos devem coincidir. Se for usada delegação, sirva os documentos well-known necessários a partir do domínio de identidade. Não exponha a porta interna bruta API para resolver um erro de proxy. Mantenha os segredos de registo fora da configuração do cliente de navegador.
Documentação oficial: Proxy reverso do Synapse
Teste uma sessão de cliente e uma sessão de federação
Crie uma conta de teste, conecte um cliente compatível, envie uma mensagem local e faça upload de um arquivo pequeno. Verifique a descoberta do cliente de forma independente da descoberta de federação e, em seguida, teste uma sala com outro servidor permitido, se a federação for pretendida. Em uma sala criptografada, exercite a verificação e o fluxo de recuperação de chaves do cliente. O backup do homeserver não restaura automaticamente todas as chaves de descriptografia mantidas pelo cliente. Explique quais metadados o servidor retém e quais salas são criptografadas.
# Discovery checks use your identity domain and HTTPS:
curl --fail https://example.com/.well-known/matrix/client
curl --fail https://example.com/.well-known/matrix/serverUse a localização do erro para delimitar a reparação
Se o Element não conseguir descobrir o servidor, inspecione a resposta well-known do cliente e a origem TLS. Se a mensagens local funcionar mas a federação falhar, inspecione a delegação de federação, os endereços acessíveis, os certificados e a política. Falhas repetidas de multimédia podem envolver limites de upload ou armazenamento. Preserve a base de dados, o multimédia, a configuração e as chaves de assinatura de forma consistente; teste o restauro sem a federação ativada primeiro, para que um exercício não crie uma cópia concorrente da identidade de produção.