Spreed ni podoben nobeni drugi platformi za video klepet - je veliko boljši in zmogljiv v vseh pogledih. Je brezplačen in odprtokodni strežnik za avdio / video klice, zasnovan z mislijo na zasebnost. Spreed uporablja WebRTC (Web Real-Time Communication), ki spletnim brskalnikom in mobilnim aplikacijam omogoča komunikacijo v realnem času prek API-jev (Application Programming Interfaces). WebRTC omogoča medsebojno komunikacijo, tako da avdio in video deluje na spletnih straneh.
Poleg tega Spreed WebRTC uporablja šifriranje od konca do konca, s čimer zagotavlja popolno zasebnost in varnost podatkov uporabnikov.
Nekatere naloge, ki jih lahko izvajate s Spreedom, vključujejo:
- Zavarujte avdio / video klice in besedilni klepet
- Video konferenca
- En do en video klepet
Namestitev strežnika Spreed WebRTC na Ubuntu
Če se sprašujete, kako začeti s Spreedom, boste na pravi poti. V tej objavi boste našli vodnik po korakih za namestitev in začetek uporabe Spreed WebRTC Server v Ubuntu. Potopimo se noter!
Korak 1. Namestite Spreed na Ubuntu
Ogledali si bomo dva načina, s katerimi lahko namestite Spreed.
- Namestite Spreed iz uradnega PPA
- Namestite Spreed via Snap
Opomba: Namestitev Spreed prek PPA bo delovala samo na Ubuntu 16.04. Če uporabljate Ubuntu 18.04, Ubuntu 20.04 ali katero koli drugo različico Ubuntuja, boste morali uporabiti Snap.
-
Namestite Spreed iz uradnega PPA
Zaženite terminal (Ctrl + Alt + T) in izvedite spodnje ukaze na terminalu.
sudo apt-add-repository ppa: strukturag / spreed-webrtc sudo apt posodobitev sudo apt namestitev spreed-webrtc
-
Namestite Spreed via Snap
Za začetek najprej namestite Snap s spodnjimi ukazi.
posodobitev sudo apt namestitev
Ko v računalnik namestite Snap, nadaljujte z namestitvijo Spreed WebRTC z spodnjim ukazom:
sudo snap namestite spreed-webrtc-snap
Ko ste uspešno namestili Spreed-WebRTC prek Snap, bo vgradni spletni strežnik zagnal prek localhosta na vratih 8084 (127.0.0: 8084). Njegovo stanje lahko potrdite s spodnjim ukazom.
informacije o snap spreed-webrtc-snap
Če se ne izvaja, lahko Spreed snap zaženete s spodnjim ukazom:
sudo snap start spreed-webrtc-snap
Spreed lahko omogočite tudi samodejni zagon Spreeda, ko se sistem zažene s spodnjim ukazom:
sudo snap start - omogoči spreed-webrtc-snap
Ali spletni strežnik Spreed deluje, lahko potrdite z iskanjem naslova 127.0.01: 8084 v spletnem brskalniku. Videti bi morali spletno stran Spreed, kot je prikazano na spodnji sliki.
2. korak: Nastavitev povratnega proxyja
Kot lahko vidite iz zgornjih informacij, je Spreed-WebRTC privzeto dostopen samo prek localhosta. Zato drug uporabnik v omrežju, ki ni vaše, ne bo imel dostopa do Spreed-WebRTC. Če želite odpraviti to težavo, boste morali nastaviti obratni strežnik proxy.
Namig: Povratni proxy je proxy strežnik, ki zahteva omrežne vire v imenu odjemalca od ustreznega stranskega strežnika.
Preučili bomo, kako nastaviti obratni proxy z uporabo Nginx in Apache. Uporabite lahko katero koli od njih.
-
Nginx
Če želite namestiti Nginx v Ubuntu, izvedite spodnji ukaz:
sudo apt namestite nginx
Ko je ukaz uspešno izveden, nadaljujte z ustvarjanjem strežniškega bloka za Spreed-WebRTC v Nginxu. Izvedite spodnji ukaz, da ustvarite spreed-webrtc.conf z urejevalnikom nano.
sudo nano / etc / nginx / conf.d / spreed-webrtc.conf
Zdaj kopirajte spodnjo vsebino in jo prilepite v urejevalnik nano. Ne pozabite zamenjati razširjene domene.primer.com z želenim domenskim imenom. Prav tako ne pozabite nastaviti zapisa A.
Namig: Zapis DNS-A usmerja poddomeno ali ime domene na naslov IP.
strežnik poslušaj 80; ime strežnika razširjeno.primer.com; lokacija / proxy_pass http: // 127.0.0.1: 8080; proxy_http_version 1.1; proxy_set_header Nadgradnja $ http_upgrade; proxy_set_header Povezava "nadgradnja"; proxy_set_header shema X-Forwarded-Proto $; proxy_set_header Gostitelj $ http_host; proxy_set_header X-Real-IP $ remote_addr; proxy_set_header X-Forwarded-For $ proxy_add_x_forwarded_for; proxy_buffering on; proxy_ignore_client_abort off; proxy_redirect off; 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; proxy_next_upstream napaka timeout invalid_header http_502 http_503 http_504; lokacija ~ /.dobro znan / acme-challenge root / usr / share / nginx / spreed /; dovoli vse;
Shranite in zaprite datoteko. (Ctrl + O in Enter za shranjevanje, Ctrl + X za izhod).
Zdaj lahko preizkusite svoje konfiguracije in znova naložite Nginx s spodnjimi ukazi.
sudo nginx -t sudo systemctl znova naloži nginx
Zdaj mora biti Spreed-WebRTC dostopen prek spletnega brskalnika prek dodeljene domene. Oglejte si spodnjo sliko.
-
Apač
Če želite uporabljati Apache, začnite tako, da ga najprej namestite s spodnjim ukazom:
sudo apt namestite apache2
Ko končate, tako kot pri Nginxu, ustvarite datoteko blokov strežnika Spreed-WebRTC. Izvedite ukaz za ustvarjanje in odpiranje datoteke z urejevalnikom nano.
sudo nano / etc / apache2 / sites-available / spreed-webrtc.conf
Zdaj kopirajte spodnjo vsebino in jo prilepite v urejevalnik nano. Ne pozabite zamenjati razširjene domene.primer.com z želenim domenskim imenom. Prav tako ne pozabite nastaviti zapisa A.
Ime strežnika razširjeno.primer.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
Shranite in zaprite datoteko. (Ctrl + O in Enter za shranjevanje, Ctrl + X za izhod).
Nato moramo omogočiti proxy_http
Izvedite spodnji ukaz:
sudo a2enmod proxy_http
Ko končate, omogočite navidezni gostitelj. Izvedite spodnji ukaz:
sudo a2ensite spreed-webrtc.conf
Lahko nadaljujete s preizkusom svojih konfiguracij in ponovnim nalaganjem strežnika Apache.
sudo apachectl configtest sudo systemctl znova naloži apache2
Zdaj bi moral biti Spreed-WebRTC dostopen prek spletnega brskalnika prek dodeljene domene. Oglejte si spodnjo sliko.
3. korak: omogočite HTTPS
Do zdaj je naš strežnik Spreed-WebRTC dostopen samo prek protokola HTTP, kar lahko sproži nekaj pomislekov glede varnosti. Če želimo omogočiti HTTPS, bomo morali pridobiti potrdilo SSL / TLS.
Ta vadnica bo uporabila Let's Encrypt za pridobitev brezplačnega potrdila TLS. Izvedite spodnje ukaze za namestitev odjemalca Let's Encrypt -Certbot- iz uradnega PPA.
sudo apt namestite certbot
Za uporabnike Apache boste morali namestiti vtičnik Certbot Apache z spodnjim ukazom:
sudo apt namestite python3-certbot-apache
Za uporabnike Nginxa namestite vtičnik Certbot Nginx z spodnjim ukazom:
sudo apt namestite python3-certbot-nginx
Če želite pridobiti potrdilo TLS za strežnik Apache, izvedite spodnji ukaz:
sudo certbot --apache --agree-tos --redirect --hsts --staple-ocsp --email you @ example.com -d spreed.primer.com
Če želite pridobiti potrdilo TLS za strežnik Nginx, izvedite spodnji ukaz:
sudo certbot --nginx --agree-tos --redirect --hsts --staple-ocsp --email you @ example.com -d spreed.primer.com
Opomba: Z zgornjima ukazoma ne pozabite zamenjati vi @ primer.com
z uradnim e-poštnim naslovom za registracijo in spreed.primer.com
z imenom domene, ki ste ga uporabili za vaš Spreed-WebRTC.
Če ste uspešno dobili potrdilo, bi morali dobiti spodnje sporočilo.
4. korak: Namestite strežnik TURN / STUN
Strežnik Spreed-WebRTC je do te točke dobro nastavljen in dostopen v spletu. Vendar moramo rešiti eno vprašanje. Če imate za omrežjem NAT uporabnike, bodo blokirani in WebRTC ne bo deloval. Da bi to premagali, bomo postavili strežnik TURN / STUN, ki bo deloval kot rele med spletnimi brskalniki. TURN pomeni Traversal Using Releys around NAT, STUN pa Session Traversal Utilities.
Uporabili bomo strežnik Coturn, ki z izvajanjem protokolov TURN in STUN omogoča video / zvočne klice in konference.
Če želite začeti, namestite Coturn z spodnjim ukazom:
sudo apt namestite coturn
Ko se ukaz uspešno izvede, se storitev Coturn samodejno zažene. Stanje lahko preverite s spodnjim ukazom:
statusctl status
Če Coturn ne deluje, ga zaženite s spodnjim ukazom:
sudo systemctl start koturn
Prav tako ga lahko zaradi udobja nastavite tako, da se samodejno zažene ob zagonu s spodnjim ukazom:
sudo systemctl omogoči Coturn
5. korak: Konfigurirajte Coturn
Ko je Coturn nameščen in deluje, ga lahko konfiguriramo za Spreed-WebRTC.
Izvedite spodnji ukaz za urejanje datoteke obračalni strežnik
konfiguracijska datoteka.
sudo nano / etc / turnserver.conf
Opazili boste, da so vse vrstice komentirane iz rezultatov, ki jih dobite. Kot je prikazano na spodnji sliki:
Če želite veliko olajšati svoje delo, kopirajte spodnjo vsebino in jo prilepite na koncu konfiguracije obračalni strežnik
mapa. Vendar ne pozabite spremeniti spodaj:
- Zamenjaj primer.com z imenom domene, ki ste jo dodelili Spreed-WebRTC.
- Zamenjajte naslov IP
10.16.1.1
z javnim naslovom IP vašega strežnika. - Zamenjati
sample-auth-secret
s svojim. Prosimo, naj bo dolg in varen - po možnosti naključno ustvarjen niz.
# Določite vrata za poslušanje. Spremenite na 80 ali 443, če želite obiti nekatere stroge NAT-je. liste za poslušanje = 8443 tls-liste za poslušanje = 5349 # Navedite IP za poslušanje, če ni nastavljen, potem Coturn posluša na vseh sistemskih IP-jih. poslušanje-ip = 10.16.1.1 rele-ip = 10.16.1.1 # Te vrstice omogočajo podporo za WebRTC prstni odtis lt-cred-mech realm = example.com # Metoda overjanja use-auth-secret static-auth-secret = sample-auth-secret total-quota = 100 # Skupna pasovna širina bajtov na sekundo, ki jo strežnik TURN lahko dodeli # za seje, kombinirane (vhod in izhod omrežni tokovi se obravnavajo ločeno). bps-capacity = 0 # Ta vrstica zagotavlja dodatno varnost. stale-nonce log-file = / var / log / turnserver / turn.log no-loopback-peers no-multicast-peers
Shranite konfiguracijsko datoteko in znova zaženite coturn z spodnjim ukazom:
sudo systemctl znova zaženi
Zdaj bomo morali konfigurirati Spreed-WEbRTC za Coturn. Izvedite spodnji ukaz, da odprete konfiguracijsko datoteko strežnika.
Če ste namestili Spreed prek PPA, uporabite spodnji ukaz:
sudo nano / etc / spreed / server.conf
Če ste namestili Spreed via Snap, uporabite spodnji ukaz:
sudo nano / var / snap / spreed-webrtc-snap / common / server.conf
Poiščite razdelek z aplikacijo in dodajte spodnje vrstice. Ne pozabite ustrezno zamenjati označenega besedila.
turnURIs = turn: coturn-server-ip: 8443?transport = udp turnSecret = example-auth-secret
Shranite in zaprite datoteko. Še enkrat znova zaženite strežnik Spreed-WebRTC z spodnjim ukazom:
Če ste namestili Spreed prek PPA, uporabite spodnji ukaz:
sudo systemctl vnovični zagon spreed-webrtc
Če ste namestili Spreed via Snap, uporabite spodnji ukaz:
sudo snap znova zaženite spreed-webrtc-snap
Zadnji korak, ki ga morate storiti, je, da na požarnem zidu omogočite vrata 8843. To je zato, ker Coturn posluša na pristanišču 8843. Izvedite ukaze za požarni zid UFW.
sudo ufw dopusti 8443 / tcp sudo ufw dovoli 8443 / udp
Zdaj, tako z nastavitvami Coturn in Spreed-WebRTC, bi morali celo uporabniki, ki stojijo za omrežjem NAT, imeti možnost opravljanja zvočnih / video klicev in celo organiziranja spletnih konferenc.
Upam, da vam je ta objava dala jasen vodič za namestitev strežnika Spreed WebRTC v Ubuntu. Nekatere konfiguracije, kot je nastavitev zapisa DNS, so lahko za začetnike precej zahtevne, vendar menim, da na spletnem mestu, kjer ste kupili domeno, obstajajo vodniški članki. Če naletite na katero koli težavo, vas prosimo, da pustite komentar spodaj.