Wybierz nazwę serwera
Nazwę serwera widoczną dla użytkownika może być trudno później zmienić. Zrozum delegację i dobrze znane rekordy używane w Twoim wdrożeniu. Testuj wykrywanie klientów i federację, zamiast zakładać, że udane logowanie przez WWW dowodzi obu.
Używaj obsługiwanego stosu
Synapse zwykle używa PostgreSQL do danych produkcyjnych, a usługi pomocnicze zależą od skali i konfiguracji. Postępuj zgodnie z aktualnymi zaleceniami upstream. Utrzymuj limity czasu workerów, bazy danych i reverse proxy zgodne z obciążeniem.
Utrzymuj twierdzenia o szyfrowaniu w zgodzie z rzeczywistością
Szyfrowanie end-to-end chroni treść w obsługiwanych szyfrowanych pokojach między uczestniczącymi klientami. Homeserver nadal może przetwarzać metadane i treści niezaszyfrowane. Kopia zapasowa kluczy klienta, weryfikacja i odzyskiwanie konta wymagają osobnego wyjaśnienia.
Utrzymuj instancję
Ogranicz rejestrację, gdy to właściwe, chroń interfejsy administracyjne i współdzielonych sekretów oraz ustal świadome zasady przechowywania multimediów i zdarzeń. Regularnie twórz kopie zapasowe bazy danych, konfiguracji i kluczy podpisywania, a następnie testuj odzyskiwanie.
Testuj ścieżki klienta i federacji osobno
Klient taki jak Element łączy się z API klienta homeservera, podczas gdy inne homeservery korzystają z wykrywania federacji i punktów końcowych. Zmiana w reverse proxy może zepsuć jedno, pozostawiając drugie działające. Przetestuj nowe konto, lokalny pokój i autoryzowany sfederowany pokój, a następnie zweryfikuj szyfrowanie i zachowanie odzyskiwania z poziomu klienta.
Oficjalna dokumentacja: Aktualny przewodnik instalacji Synapse
Zachowaj trwały materiał tożsamości
Baza danych to nie cała tożsamość homeservera. Zachowaj klucz podpisujący oraz odpowiednią konfigurację i sekrety w spójnej kopii zapasowej. Sprawdź, jakie zewnętrzne multimedia i historia są przechowywane, i ustaw politykę odpowiednią dla Twojej społeczności. Monitoruj pamięć masową i kolejki procesów roboczych, zanim rozwój stanie się awarią.
Oddziel nazwę konta od punktu końcowego hostingu
Ustal server_name Matrix przed utworzeniem konta: staje się on częścią identyfikatorów użytkowników i pokoi. Nazwa hosta sieciowego obsługująca Synapse może się różnić, gdy odkrywanie/delegacja są poprawnie skonfigurowane. Zaplanuj zarówno odkrywanie po stronie klienta, jak i odkrywanie serwer-serwer, ważny certyfikat oraz faktycznie osiągalną rodzinę adresów. Element jest klientem, a nie zamiennikiem serwera domowego. Utrzymuj niezależną ścieżkę administratora i kontakt do odzyskiwania poza serwerem domowym.
- Wybierz obsługiwane wydanie Synapse i wdrożenie PostgreSQL odpowiednie dla produkcji.
- Zachowaj prywatność bazy danych i listenerów administracyjnych.
- Wyraźnie zdefiniuj politykę rejestracji i federacji.
Oficjalna dokumentacja: Instalacja Synapse · Delegacja Matrix
Zbuduj wykrywanie i proxy jako część usługi
Wygeneruj konfigurację dla wybranej wersji, utrwal klucz podpisywania i bazę danych oraz skonfiguruj proxy zgodnie z oficjalnymi wskazówkami Synapse. Zewnętrznie widoczne origin, nagłówki przekazywania i ścieżki żądań muszą być spójne. Jeśli używana jest delegacja, udostępniaj wymagane dokumenty well-known z domeny tożsamości. Nie wystawiaj surowego wewnętrznego portu API, aby rozwiązać błąd proxy. Trzymaj sekrety rejestracji poza konfiguracją klienta przeglądarki.
Oficjalna dokumentacja: Odwrotne proxy Synapse
Przetestuj sesję klienta i sesję federacji
Utwórz konto testowe, połącz obsługiwanego klienta, wyślij lokalną wiadomość i prześlij mały plik. Zweryfikuj wykrywanie klienta niezależnie od wykrywania federacji, a następnie przetestuj pokój z innym dozwolonym serwerem, jeśli federacja jest zamierzona. W zaszyfrowanym pokoju przećwicz weryfikację i przepływ odzyskiwania kluczy w kliencie. Kopia zapasowa homeservera nie przywraca automatycznie każdego klucza deszyfrującego przechowywanego w kliencie. Wyjaśnij, jakie metadane serwer zachowuje i które pokoje są szyfrowane.
# 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/serverUżyj lokalizacji błędu, aby zawęzić naprawę
Jeśli Element nie może wykryć serwera, sprawdź odpowiedź well-known klienta i źródło TLS. Jeśli komunikacja lokalna działa, ale federacja zawodzi, sprawdź delegację federacji, osiągalne adresy, certyfikaty i politykę. Powtarzające się błędy multimediów mogą dotyczyć limitów przesyłania lub pamięci masowej. Zachowuj spójnie bazę danych, multimedia, konfigurację i klucze podpisujące; najpierw testuj przywracanie bez włączonej federacji, aby ćwiczenie nie utworzyło konkurencyjnej kopii tożsamości produkcyjnej.