Strežnik

Kako namestiti strežnik Spreed WebRTC v Ubuntu

Kako namestiti strežnik Spreed WebRTC v Ubuntu

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:

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.

  1. Namestite Spreed iz uradnega PPA
  2. 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.

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

Za začetek najprej namestite Snap s spodnjimi ukazi.

posodobitev sudo apt namestitev

Namestite Snapd

Ko v računalnik namestite Snap, nadaljujte z namestitvijo Spreed WebRTC z spodnjim ukazom:

sudo snap namestite spreed-webrtc-snap

Namestite Spreed-WebRTC

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

Spreed-WebRTC Status Snap

Če se ne izvaja, lahko Spreed snap zaženete s spodnjim ukazom:

sudo snap start spreed-webrtc-snap

Začnite Spreed 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

Omogočite Spreed za zagon ob zagonu

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.

Razširjeni spletni vmesnik

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.

Če želite namestiti Nginx v Ubuntu, izvedite spodnji ukaz:

sudo apt namestite nginx

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; 

Datoteka za konfiguracijo Spreed-WebRTC

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

Znova naložite Nginx

Zdaj mora biti Spreed-WebRTC dostopen prek spletnega brskalnika prek dodeljene domene. Oglejte si spodnjo sliko.

Strežnik Spreed-WebRTC Nginx

Če želite uporabljati Apache, začnite tako, da ga najprej namestite s spodnjim ukazom:

sudo apt namestite apache2

Namestite Apache

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

Omogoči proxy_http

Ko končate, omogočite navidezni gostitelj. Izvedite spodnji ukaz:

sudo a2ensite spreed-webrtc.conf

Omogoči navidezni gostitelj

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.

Spreed-WebRTC

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

Namestite Certbot

Za uporabnike Apache boste morali namestiti vtičnik Certbot Apache z spodnjim ukazom:

sudo apt namestite python3-certbot-apache

Vtičnik Certbot Apache

Za uporabnike Nginxa namestite vtičnik Certbot Nginx z spodnjim ukazom:

sudo apt namestite python3-certbot-nginx

Vtičnik Nginx Certbot

Č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.

spreed-webtrc-certbot-https

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

Namestite Coturn

Ko se ukaz uspešno izvede, se storitev Coturn samodejno zažene. Stanje lahko preverite s spodnjim ukazom:

statusctl status

Namestite Coturn

Č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

Zaženite Coturn ob zagonu

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:

Vklopite konfiguracijsko datoteko strežnika

Č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:

# 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

Datoteka razširjenega strežnika

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

Dovoli vrata 8843

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.

Kako uporabljati AutoKey za avtomatizacijo iger Linux
AutoKey je namizni pripomoček za avtomatizacijo za Linux in X11, programiran v Python 3, GTK in Qt. Z njegovo funkcijo skriptiranja in MACRO lahko avt...
Kako prikazati števec FPS v igrah Linux
Linux gaming je dobil velik zagon, ko je Valve leta 2012 napovedal podporo Linuxu za odjemalca Steam in njihove igre. Od takrat se je veliko AAA in in...
Kako prenesti in igrati Sid Meier's Civilization VI v Linuxu
Uvod v igro Civilization 6 je sodoben pogled na klasični koncept, uveden v seriji iger Age of Empires. Ideja je bila dokaj preprosta; začeli bi v zelo...