From 94ad68155fae5953f41c32b26cefa061e50f9bd6 Mon Sep 17 00:00:00 2001 From: lastimeoceanisfall <131454871+lastimeoceanisfall@users.noreply.github.com> Date: Sun, 30 Apr 2023 08:13:37 +0000 Subject: [PATCH] Create WEBRTC.md (#2251) --- docs/lang/pl/docs/WEBRTC.md | 142 ++++++++++++++++++++++++++++++++++++ 1 file changed, 142 insertions(+) create mode 100644 docs/lang/pl/docs/WEBRTC.md diff --git a/docs/lang/pl/docs/WEBRTC.md b/docs/lang/pl/docs/WEBRTC.md new file mode 100644 index 0000000000..5966b323a7 --- /dev/null +++ b/docs/lang/pl/docs/WEBRTC.md @@ -0,0 +1,142 @@ +| Zaktualizowano 31.01.2023 | Języki: PL, [EN](https://github.com/simplex-chat/simplex-chat/blob/stable/docs/WEBRTC.md), [FR](https://github.com/simplex-chat/simplex-chat/blob/stable/docs/lang/fr/WEBRTC.md), [CZ](https://github.com/simplex-chat/simplex-chat/blob/stable/docs/lang/cz/WEBRTC.md) | + +# Używanie własnych serwerów WebRTC ICE w SimpleX Chat + +## Wdrożenie serwera STUN/TURN + +W tym poradniku użyjemy najbardziej funkcjonalnej i sprawdzonej w boju implementacji serwera STUN/TURN - [`coturn`](https://github.com/coturn/coturn) i [`Ubuntu 20.04 LTS`](https://ubuntu.com/download/server) dystrybucji Linuksa. + +0. Uzyskaj certyfikaty `stun.$YOUR_DOMAIN` i `turn.$YOUR_DOMAIN`. + + Korzystamy z [Let's Encrypt](https://letsencrypt.org/getting-started/). + +1. Zainstaluj pakiet `coturn` z głównego repozytorium. + +```sh +apt update && apt install coturn` +``` + +2. Usuń komentarz `TURNSERVER_ENABLED=1` z `/etc/default/coturn`: + +```sh +sed -i '/TURN/s/^#//g' /etc/default/coturn +``` + +3. Skonfiguruj `coturn` w `/etc/turnserver.conf`: + + Prosimy również o zapoznanie się z komentarzami do poszczególnych opcji. + +```sh +# Również nasłuchuj na porcie 443 dla tls +alt-tls-listening-port=443 +# Użyj fingerprintów w wiadomościach TURN +fingerprint +# Użyj mechanizmu długoterminowych poświadczeń +lt-cred-mech +# Twoje dane uwierzytelniające +user=$YOUR_LOGIN:$YOUR_PASSWORD +# Domena Twojego serwera +server-name=$YOUR_DOMAIN +# Domyślna przestrzeń, która będzie używana dla użytkowników, jeśli nie znaleziono wyraźnej relacji origin/realm +realm=$YOUR_DOMAIN +# Ścieżka do twoich certyfikatów. Upewnij się, że są one czytelne dla użytkownika/grupy procesu cotun +cert=/var/lib/turn/cert.pem +pkey=/var/lib/turn/key.pem +# Użyj 2066 bitów predefiniowanego klucza DH TLS +dh2066 +# Zaloguj się do journalctl +syslog +# Użytkownik/grupa, która będzie uruchamiać usługę +proc-user=turnserver +proc-group=turnserver +# Wyłącz słabe szyfrowanie +no-tlsv1 +no-tlsv1_1 +no-tlsv1_2 +``` + +4. Uruchom i włącz usługę `coturn`.: + +```sh +systemctl enable coturn && systemctl start coturn +``` + +5. Opcjonalnie, jeśli używasz firewall `ufw`, otwórz odpowiednie porty:: + +- **3478** – "plain" TURN/STUN; +- **5349** – TURN/STUN over TLS; +- **443** – TURN/STUN over TLS, który mogą ominąć firewalle; +- **49152:65535** – zakres portów, których Coturn będzie domyślnie używał dla przekaźnika TURN. + +```sh +ufw allow 3478 && \ +ufw allow 443 && \ +ufw allow 5349 && \ +ufw allow 49152:65535/tcp && \ +ufw allow 49152:65535/udp +``` + +## Configure mobile apps + +Aby skonfigurować swoją aplikację mobilną do korzystania z Twojego serwera: + +1. Otwórz `Twoje ustawienia / Sieci i serwery / Serwery WebRTC ICE` i przełącz `Skonfiguruj serwery ICE`. + +2 Wprowadź wszystkie adresy serwerów w polu, po jednym w każdym wierszu, na przykład jeśli serwery są na porcie 5349: + +``` +stun:stun.example.com:5349 +turn:username:password@turn.example.com:5349 +``` + +To jest to - teraz możesz prowadzić rozmowy audio i wideo za pośrednictwem własnego serwera, nie udostępniając żadnych danych naszym serwerom (poza wymianą klucza z Twoim kontaktem w wiadomościach szyfrowanych E2E). + +## Rozwiązywanie problemów + +- **Określ, czy serwer jest dostępny**: + + Uruchom w terminalu to polecenie: + + ```sh + ping + ``` + + Jeśli pakiety są przesyłane, serwer jest w stanie gotowości! + +- **Określ, czy porty są otwarte**: + + Uruchom w terminalu to polecenie: + + ```sh + nc -zvw10 443 5349 + ``` + + Powinieneś zobaczyć: + + ``` + Connection to 443 port [tcp/https] succeeded! + Connection to 5349 port [tcp/*] succeeded! + ``` + +- **Przetestuj łączność STUN/TURN**: + + 1. Przejdź do [IceTest](https://icetest.info/). + + 2. W sekcji **Build up ICE Server List** dodaj:: + + + + - `STUN: stun::` i naciśnij `Add STUN` + - `TURN: turn::`, `Username: `, `Credential: ` i naciśnij `Add TURN` + + Gdzie `` to 443 lub 5349. + + 3. Powinieneś zobaczyć swoje serwery w sekcji **ICE server list**. Jeśli wszystko jest skonfigurowane poprawnie, naciśnij `START TEST`: + + + + 4. W sekcji **Results** powinieneś zobaczyć coś takiego: + + + + Jeśli wyniki pokazują kandydatów `srflx` i `relay`, wszystko jest ustawione poprawnie!