Spreed nie je ako žiadna iná platforma pre videohovory - je oveľa lepšia a výkonnejšia v každom ohľade. Je to bezplatný server audio / videohovorov s otvoreným zdrojovým kódom navrhnutý s ohľadom na ochranu osobných údajov. Spreed používa WebRTC (Web Real-Time Communication), ktorá umožňuje webovým prehliadačom a mobilným aplikáciám komunikovať v reálnom čase pomocou API (Application Programming Interfaces). WebRTC umožňuje komunikáciu typu peer-to-peer, ktorá umožňuje, aby audio a video fungovali vo vnútri webových stránok.
Spreed WebRTC navyše používa šifrovanie typu end-to-end, čím zaisťuje najvyššie súkromie a bezpečnosť údajov používateľov.
Medzi úlohy, ktoré môžete so Spreedom vykonávať, patria:
- Zabezpečené audio / video hovory a textový chat
- Video konferencia
- Individuálny videorozhovor
Inštalácia servera Spreed WebRTC na Ubuntu
Ak premýšľate, ako začať so Spreedom, budete na dobrej ceste. Tento príspevok vám poskytne podrobného sprievodcu inštaláciou a začatím používania servera Spreed WebRTC v systéme Ubuntu. Poďme sa ponoriť!
Krok 1. Nainštalujte Spreed na Ubuntu
Pozrime sa na dva spôsoby, ktoré môžete použiť na inštaláciu Spreedu.
- Nainštalujte Spreed z oficiálneho PPA
- Nainštalujte Spreed cez Snap
Poznámka: Inštalácia Spreedu cez PPA bude fungovať iba na Ubuntu 16.04. Ak používate systém Ubuntu 18.04, Ubuntu 20.04 alebo akýkoľvek iný variant Ubuntu, budete musieť použiť Snap.
-
Nainštalujte Spreed z oficiálneho PPA
Spustite terminál (Ctrl + Alt + T) a na termináli vykonajte príkazy uvedené nižšie.
sudo apt-add-repository ppa: strukturag / spreed-webrtc sudo apt aktualizácia sudo apt nainštalovať spreed-webrtc
-
Nainštalujte Spreed cez Snap
Ak chcete začať, najskôr si nainštalujte Snap pomocou nižšie uvedených príkazov.
aktualizácia sudo apt
Po nainštalovaní Snap do systému pokračujte v inštalácii Spreed WebRTC pomocou nasledujúceho príkazu:
sudo snap nainštalovať spreed-webrtc-snap
Akonáhle úspešne nainštalujete Spreed-WebRTC cez Snap, spustí svoj vstavaný webový server cez localhost na porte 8084 (127.0.0: 8084). Jeho stav môžete skontrolovať pomocou nižšie uvedeného príkazu.
informácie o okamihu spreed-webrtc-snap
Ak nie je spustený, môžete spustiť Spreed snap pomocou nasledujúceho príkazu:
sudo snap start spreed-webrtc-snap
Môžete tiež povoliť automatické spustenie programu Spreed pri zavedení systému pomocou nasledujúceho príkazu:
sudo snap start --enable spreed-webrtc-snap
Či je webový server Spreed spustený, môžete potvrdiť vyhľadaním adresy 127.0.01: 8084 vo webovom prehliadači. Mali by ste vidieť webovú stránku Spreed, ako je znázornené na obrázku nižšie.
Krok 2: Nastavenie reverzného proxy servera
Ako vidíte z vyššie uvedených informácií, Spreed-WebRTC je štandardne prístupný iba cez localhost. Preto iný používateľ v inej sieti ako vy nebude mať prístup k serveru Spreed-WebRTC. Na prekonanie tohto problému budete musieť nastaviť reverznú proxy.
Tip: Reverse Proxy je server proxy, ktorý požaduje sieťové prostriedky v mene klienta z príslušného servera typu back-end.
Pozrime sa na to, ako nastaviť reverzný proxy server pomocou Nginx a Apache. Môžete použiť ktorékoľvek z nich.
-
Nginx
Ak chcete nainštalovať Nginx na Ubuntu, vykonajte nasledujúci príkaz:
sudo apt nainštalovať nginx
Po úspešnom vykonaní príkazu pokračujte vytvorením serverového bloku pre Spreed-WebRTC na Nginx. Vykonaním príkazu nižšie vytvorte spreed-webrtc.conf súbor s nano editorom.
sudo nano / etc / nginx / conf.d / spreed-webrtc.konf
Teraz skopírujte obsah nižšie a prilepte ich do editora nano. Nezabudnite vymeniť doménu spreed.príklad.sk s preferovaným názvom domény. Nezabudnite tiež na vytvorenie záznamu A.
Tip: Záznam DNS-A smeruje subdoménu alebo názov domény na adresu IP.
server počúvať 80; názov_servera.príklad.com; umiestnenie / proxy_pass http: // 127.0.0.1: 8080; proxy_http_version 1.1; proxy_set_header Upgrade $ http_upgrade; proxy_set_header Pripojenie "upgrade"; proxy_set_header X-Forwarded-Proto $ schéma; proxy_set_header Hostiteľ $ http_host; proxy_set_header X-Real-IP $ remote_addr; proxy_set_header X-Forwarded-For $ proxy_add_x_forwarded_for; proxy_buffering zapnutý; proxy_ignore_client_abort vypnutý; proxy_redirect vypnuté; proxy_connect_timeout 90; proxy_send_timeout 90; proxy_read_timeout 90; proxy_buffer_size 4k; proxy_buffers 4 32k; proxy_busy_buffers_size 64k; proxy_temp_file_write_size 64k; časový limit chyby proxy_next_upstream invalid_header http_502 http_503 http_504; poloha ~ /.dobre známa / acme-challenge root / usr / share / nginx / spreed /; povoliť všetko;
Uložte a zatvorte súbor. (Ctrl + O, potom Enter na uloženie, Ctrl + X na ukončenie).
Teraz môžete vyskúšať svoje konfigurácie a znova načítať Nginx pomocou nižšie uvedených príkazov.
sudo nginx -t sudo systemctl znovu načítať nginx
Teraz by mal byť server Spreed-WebRTC prístupný cez webový prehliadač cez priradenú doménu. Pozri obrázok nižšie.
-
Apache
Ak chcete používať Apache, začnite najskôr inštaláciou pomocou nasledujúceho príkazu:
sudo apt nainštalovať apache2
Po dokončení vytvorte rovnako ako v prípade Nginx súbor bloku servera Spreed-WebRTC. Vykonaním príkazu vytvorte a otvorte súbor pomocou nano editora.
sudo nano / etc / apache2 / sites-available / spreed-webrtc.konf
Teraz skopírujte obsah nižšie a prilepte ich do nano editora. Nezabudnite vymeniť doménu spreed.príklad.sk s preferovaným názvom domény. Nezabudnite tiež na vytvorenie záznamu A.
Sprievodca názvom servera.príklad.com ProxyPass http: // 127.0.0.1: 8080 / ProxyPassReverse http: // 127.0.0.1: 8080 / ProxyPass ws: // 127.0.0.1: 8080 / ProxyVia On ProxyPreserveHost On
Uložte a zatvorte súbor. (Ctrl + O, potom Enter na uloženie, Ctrl + X na ukončenie).
Ďalej musíme povoliť proxy_http
Vykonajte nasledujúci príkaz:
sudo a2enmod proxy_http
Po dokončení aktivujte virtuálneho hostiteľa. Vykonajte nasledujúci príkaz:
sudo a2ensite spreed-webrtc.konf
Môžete pokračovať v testovaní svojich konfigurácií a opätovnom načítaní servera Apache.
sudo apachectl configtest sudo systemctl znovu načítať apache2
Teraz by mal byť server Spreed-WebRTC prístupný cez webový prehliadač cez priradenú doménu. Pozri obrázok nižšie.
Krok 3: Povoľte HTTPS
Náš server Spreed-WebRTC je doteraz prístupný iba cez HTTP, čo by mohlo vyvolať určité obavy o bezpečnosť. Aby sme povolili HTTPS, budeme musieť získať certifikát SSL / TLS.
Tento tutoriál použije funkciu Let's Encrypt na získanie bezplatného certifikátu TLS. Vykonaním nasledujúcich príkazov nainštalujte klienta Let's Encrypt -Certbot- z oficiálneho PPA.
sudo apt nainštalovať certbot
Od používateľov servera Apache budete musieť nainštalovať doplnok Certbot Apache pomocou nasledujúceho príkazu:
sudo apt nainštalovať python3-certbot-apache
Pre používateľov Nginx nainštalujte doplnok Certbot Nginx pomocou nasledujúceho príkazu:
sudo apt nainštalovať python3-certbot-nginx
Ak chcete získať certifikát TLS pre server Apache, spustite nasledujúci príkaz:
sudo certbot --apache --agree-tos --redirect --hsts --staple-ocsp --email @ @.com -d spreed.príklad.com
Ak chcete získať certifikát TLS pre server Nginx, vykonajte nasledujúci príkaz:
sudo certbot --nginx --ree-tos --redirect --hsts --staple-ocsp --email @ @.com -d spreed.príklad.com
Poznámka: Pomocou dvoch vyššie uvedených príkazov nezabudnite nahradiť ty @ príklad.com
s oficiálnym e-mailom na registráciu a spreed.príklad.com
s názvom domény, ktorý ste použili pre svoj server Spreed-WebRTC.
Ak ste certifikát úspešne získali, mali by ste dostať správu nižšie.
Krok 4: Nainštalujte server TURN / STUN
Server Spreed-WebRTC je dodnes dobre nastavený a prístupný online. Je však potrebné vyriešiť jeden problém. Ak máte používateľov v sieti NAT, budú blokovaní a WebRTC nebude fungovať. Aby sme to prekonali, nastavíme server TURN / STUN, ktorý bude slúžiť ako prenos medzi webovými prehľadávačmi. TURN znamená Traversal pomocou relé okolo NAT a STUN znamená Session Traversal Utilities.
Použijeme server Coturn, ktorý umožňuje implementáciu protokolov TURN a STUN a umožňuje videohovory / audio hovory a konferencie.
Ak chcete začať, nainštalujte program Coturn pomocou nasledujúceho príkazu:
sudo apt nainštalovať coturn
Po úspešnom vykonaní príkazu sa automaticky spustí služba Coturn. Stav môžete skontrolovať pomocou nižšie uvedeného príkazu:
systemctl status coturn
Ak kotva nefunguje, spustite ju nasledujúcim príkazom:
sudo systemctl start coturn
Pre uľahčenie môžete tiež nastaviť automatické spustenie pri zavedení pomocou nasledujúceho príkazu:
sudo systemctl povoliť coturn
Krok 5: Nakonfigurujte Coturn
S nainštalovaným a spusteným programom Coturn ho môžeme nakonfigurovať pre Spreed-WebRTC.
Vykonajte nasledujúci príkaz a upravte turnserver
konfiguračný súbor.
sudo nano / etc / turnserver.konf
Všimnete si, že všetky riadky sú komentované z výstupu, ktorý získate. Ako je znázornené na obrázku nižšie:
Ak si chcete prácu oveľa uľahčiť, skopírujte nižšie uvedený obsah a prilepte ich na koniec svojej konfigurácie turnserver
spis. Nezabudnite však vykonať nasledujúce zmeny:
- Nahraďte príklad.com s doménovým menom, ktoré ste priradili Spreed-WebRTC.
- Vymeňte adresu IP
10.16.1.1
s verejnou IP adresou vášho servera. - Vymeniť
sample-auth-secret
s vlastnými. Vytvorte ho dlhý a bezpečný - najlepšie náhodne vygenerovaný reťazec.
# Zadajte port počúvania. Zmeňte na 80 alebo 443, aby ste obišli niekoľko prísnych NAT. počúvací port = 8443 tls-počúvací port = 5349 # Zadajte počúvaciu IP, ak nie je nastavená, potom Coturn počúva na všetkých systémových adresách IP. počúvanie-ip = 10.16.1.1 relé-ip = 10.16.1.1 # Tieto riadky umožňujú podporu pre odtlačok prsta WebRTC lt-cred-mech realm = príklad.com # Metóda overovania use-auth-secret static-auth-secret = sample-auth-secret total-quota = 100 # Celková šírka pásma bajtov za sekundu, ktorú môže server TURN prideliť # pre jednotlivé relácie (vstup a výstup) sieťové toky sa spracúvajú osobitne). bps-capacity = 0 # Tento riadok poskytuje dodatočné zabezpečenie. zastaraný-nonce log-súbor = / var / log / turnserver / turn.logujte nie-loopback-peers no-multicast-peers
Uložte konfiguračný súbor a reštartujte koturn pomocou nasledujúceho príkazu:
sudo systemctl restart coturn
Teraz budeme musieť nakonfigurovať Spreed-WEbRTC pre Coturn. Vykonaním nižšie uvedeného príkazu otvorte konfiguračný súbor servera.
Ak ste nainštalovali Spreed cez PPA, použite nasledujúci príkaz:
sudo nano / etc / spreed / server.konf
Ak ste si nainštalovali Spreed cez Snap, použite nasledujúci príkaz:
sudo nano / var / snap / spreed-webrtc-snap / common / server.konf
Nájdite sekciu s aplikáciami a pridajte riadky nižšie. Nezabudnite zodpovedajúcim spôsobom nahradiť zvýraznený text.
turnURIs = turn: coturn-server-ip: 8443?transport = udp turnSecret = example-auth-secret
Uložte a zatvorte súbor. Opäť reštartujte server Spreed-WebRTC pomocou nasledujúceho príkazu:
Ak ste nainštalovali Spreed cez PPA, použite nasledujúci príkaz:
sudo systemctl restart spreed-webrtc
Ak ste si nainštalovali Spreed cez Snap, použite nasledujúci príkaz:
sudo snap reštart spreed-webrtc-snap
Posledným krokom, ktorý musíte urobiť, je povoliť port 8843 na bráne firewall. Je to preto, že Coturn počúva na porte 8843. Vykonajte príkazy pre bránu firewall UFW.
sudo ufw povoliť 8443 / tcp sudo ufw povoliť 8443 / udp
Teraz, s nastavením Coturn aj Spreed-WebRTC, by mali byť používatelia v sieti NAT schopní uskutočňovať audio / video hovory a dokonca organizovať online konferencie.
Dúfam, že vám tento príspevok poskytol jasný návod na inštaláciu servera Spreed WebRTC na Ubuntu. Niektoré konfigurácie, ako napríklad nastavenie DNS Záznam môže byť pre začiatočníkov dosť náročné, ale domnievam sa, že na stránkach, ktoré ste si zakúpili svoju doménu, sú články sprievodcu. V prípade, že narazíte na akýkoľvek problém, neváhajte zanechať komentár nižšie.