Poslužitelj

Kako instalirati Spreed WebRTC Server na Ubuntu

Kako instalirati Spreed WebRTC Server na Ubuntu

Spreed nije poput bilo koje druge platforme za video chat - mnogo je bolji i moćniji u svakom pogledu. To je besplatni i otvoreni izvor poslužitelja za audio / video pozive dizajniran s naglaskom na privatnost. Spreed koristi WebRTC (Web Real-Time Communication), koji omogućuje internetskim preglednicima i mobilnim aplikacijama komunikaciju u stvarnom vremenu putem API-ja (sučelja za programiranje aplikacija). WebRTC omogućuje peer-to-peer komunikaciju omogućavajući audio i video rad unutar web stranica.

Uz to, Spreed WebRTC koristi end-to-end enkripciju, osiguravajući tako konačnu privatnost i sigurnost podataka korisnika.

Neki od zadataka koje možete obavljati s Spreedom uključuju:

Instaliranje Spreed WebRTC poslužitelja na Ubuntu

Ako se pitate kako započeti s Spreedom, bit ćete na dobrom putu. Ovaj će vam post dati korak po korak vodič za instaliranje i početak rada s Spreed WebRTC poslužiteljem na Ubuntuu. Zaronimo!

Korak 1. Instalirajte Spreed na Ubuntu

Razmotrit ćemo dva načina na koja možete koristiti za instaliranje Spreeda.

  1. Instalirajte Spreed sa službenog PPA-a
  2. Instalirajte Spreed via Snap

Bilješka: Instalacija Spreed putem PPA-a funkcionirat će samo na Ubuntu 16.04. Ako ste na Ubuntu 18.04, Ubuntu 20.04, ili bilo koju drugu Ubuntu varijantu, morat ćete koristiti Snap.

Pokrenite terminal (Ctrl + Alt + T) i izvršite donje naredbe na terminalu.

sudo apt-add-repository ppa: strukturag / spreed-webrtc sudo apt update sudo apt install spreed-webrtc

Za početak prvo instalirajte Snap pomoću naredbi u nastavku.

sudo apt ažuriranje sudo apt instalacija snapd

Instalirajte Snapd

Nakon što instalirate Snap na svoj sustav, nastavite s instaliranjem Spreed WebRTC pomoću naredbe u nastavku:

sudo snap instalacija spreed-webrtc-snap

Instalirajte Spreed-WebRTC

Nakon što uspješno instalirate Spreed-WebRTC putem Snap-a, pokrenut će svoj ugrađeni web poslužitelj putem localhosta na portu 8084 (127.0.0: 8084). Njegov status možete potvrditi izvršava li se pomoću naredbe u nastavku.

informacije o snapu spreed-webrtc-snap

Spreed-WebRTC Snap status

Ako se ne izvodi, Spreed snap možete pokrenuti naredbom u nastavku:

sudo snap start spreed-webrtc-snap

Počnite Spreed Snap

Također možete omogućiti automatsko pokretanje Spreeda kada se sustav pokrene pomoću naredbe u nastavku:

sudo snap start - omogućiti spreed-webrtc-snap

Omogućite Spreed za pokretanje prilikom pokretanja

Možete provjeriti radi li Spreed web poslužitelj pretraživanjem adrese 127.0.01: 8084 na web pregledniku. Trebali biste vidjeti web stranicu Spreed kao što je prikazano na donjoj slici.

Prošireno web sučelje

Korak 2: Postavljanje obrnutog proxyja

Kao što možete vidjeti iz gornjih podataka, Spreed-WebRTC je prema zadanim postavkama dostupan samo putem localhosta. Stoga drugi korisnik na mreži koja nije od vas neće pristupiti Spreed-WebRTC-u. Da biste prevladali ovaj problem, morat ćete postaviti obrnuti proxy.

Savjet: Obrnuti proxy je proxy poslužitelj koji mrežne resurse u ime klijenta traži od odgovarajućeg pozadinskog poslužitelja.

Pogledat ćemo kako postaviti obrnuti proxy koristeći Nginx i Apache. Možete koristiti bilo koji od njih.

Da biste instalirali Nginx na Ubuntu, izvršite naredbu u nastavku:

sudo apt instalirati nginx

Instalirajte Nginx

Nakon što se naredba uspješno izvrši, prijeđite na stvaranje bloka poslužitelja za Spreed-WebRTC na Nginxu. Izvršite naredbu u nastavku za stvaranje spreed-webrtc.conf datoteku s nano uređivačem.

sudo nano / etc / nginx / conf.d / spreed-webrtc.konf

Sada, molim vas, kopirajte donji sadržaj i zalijepite ih u nano editor. Ne zaboravite zamijeniti proširenu domenu.primjer.com s željenim imenom domene. Također, ne zaboravite postaviti A zapis.

Savjet: DNS-A zapis usmjerava poddomenu ili ime domene na IP adresu.

poslužitelj preslušaj 80; ime_poslužitelja prošireno.primjer.com; lokacija / proxy_pass http: // 127.0.0.1: 8080; proxy_http_version 1.1; proxy_set_header Nadogradnja $ http_upgrade; proxy_set_header Veza "nadogradnja"; proxy_set_header X-Proslijeđena-Proto $ shema; proxy_set_header Host $ http_host; proxy_set_header X-Real-IP $ remote_addr; proxy_set_header X-Forwarded-Za $ proxy_add_x_forwarded_for; proxy_buffering na; isključeno proxy_ignore_client_abort; isključeno preusmjeravanje_proxyja; 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 pogreška vrijeme čekanja invalid_header http_502 http_503 http_504;  mjesto ~ /.dobro poznat / acme-challenge root / usr / share / nginx / spreed /; dopustiti sve; 

Datoteka za konfiguraciju Spreed-WebRTC

Spremite i zatvorite datoteku. (Ctrl + O, a zatim Enter za spremanje, Ctrl + X za izlaz).

Sada možete testirati svoje konfiguracije i ponovno učitati Nginx pomoću naredbi u nastavku.

sudo nginx -t sudo systemctl ponovno učitaj nginx

Ponovo učitajte Nginx

Sada bi Spreed-WebRTC trebao biti dostupan putem web preglednika putem dodijeljene domene. Pogledajte sliku ispod.

Spreed-WebRTC Nginx poslužitelj

Ako želite koristiti Apache, počnite tako što ćete ga prvo instalirati naredbom u nastavku:

sudo apt instalirati apache2

Instalirajte Apache

Kada završite, baš kao što smo to učinili s Nginxom, stvorite datoteku bloka poslužitelja Spreed-WebRTC. Izvršite naredbu za stvaranje i otvaranje datoteke pomoću nano uređivača.

sudo nano / etc / apache2 / sites-available / spreed-webrtc.konf

Sada, molim vas, kopirajte donji sadržaj i zalijepite ih u nano editor. Ne zaboravite zamijeniti proširenu domenu.primjer.com s željenim imenom domene. Također, ne zaboravite postaviti A zapis.

 Ime poslužitelja proširilo se.primjer.com  ProxyPass http: // 127.0.0.1: 8080 / ProxyPassReverse http: // 127.0.0.1: 8080 /   ProxyPass ws: // 127.0.0.1: 8080 /  ProxyVia na ProxyPreserveHost uključen 

Spremite i zatvorite datoteku. (Ctrl + O, a zatim Enter za spremanje, Ctrl + X za izlaz).

Dalje, moramo omogućiti proxy_http

Izvršite naredbu u nastavku:

sudo a2enmod proxy_http

Omogući proxy_http

Kada završite, omogućite virtualni domaćin. Izvršite naredbu u nastavku:

sudo a2ensite spreed-webrtc.konf

Omogući virtualni host

Možete nastaviti s testiranjem svojih konfiguracija i ponovnim učitavanjem Apache poslužitelja.

sudo apachectl configtest sudo systemctl ponovno učitaj apache2

Sada bi Spreed-WebRTC trebao biti dostupan putem web preglednika putem dodijeljene domene. Pogledajte sliku ispod.

Spreed-WebRTC

Korak 3: Omogućite HTTPS

Do sada je naš Spreed-WebRTC poslužitelj dostupan samo putem HTTP-a, što bi moglo pokrenuti neke sigurnosne probleme. Da bismo omogućili HTTPS, morat ćemo dobiti SSL / TLS certifikat.

Ovaj će se vodič koristiti Let's Encrypt za dobivanje besplatnog TLS certifikata. Izvršite naredbe u nastavku za instaliranje klijenta Let's Encrypt -Certbot- sa službenog PPA-a.

sudo apt instaliraj certbot

Instalirajte Certbot

Za korisnike Apachea morat ćete instalirati dodatak Certbot Apache pomoću naredbe u nastavku:

sudo apt instalirati python3-certbot-apache

Dodatak Certbot Apache

Za korisnike Nginxa instalirajte dodatak Certbot Nginx pomoću naredbe u nastavku:

sudo apt instalirati python3-certbot-nginx

Nginx Certbot dodatak

Da biste dobili TLS certifikat za Apache poslužitelj, izvršite naredbu u nastavku:

sudo certbot --apache --agree-tos --redirect --hsts --staple-ocsp --pošaljite vam @ primjer.com -d širio.primjer.com

Da biste dobili TLS certifikat za Nginx poslužitelj, izvršite naredbu u nastavku:

sudo certbot --nginx --agree-tos --redirect --hsts --staple-ocsp --pošaljite vam @ primjer.com -d širio.primjer.com

Bilješka: S gornje dvije naredbe, ne zaboravite zamijeniti vi @ primjer.com sa službenom e-poštom za registraciju i širenja.primjer.com s imenom domene, koje ste koristili za Spreed-WebRTC.

Ako ste uspješno dobili certifikat, trebali biste dobiti donju poruku.

spreed-webtrc-certbot-https

Korak 4: Instalirajte TURN / STUN poslužitelj

Poslužitelj Spreed-WebRTC dobro je postavljen i dostupan mu je do sada. Međutim, postoji jedno pitanje koje moramo riješiti. Ako imate korisnike iza NAT mreže, oni će biti blokirani i WebRTC neće raditi. Da bismo to prevladali, postavit ćemo poslužitelj TURN / STUN koji će djelovati kao relej između web preglednika. TURN je skraćenica za Traversal Using Releys around NAT, a STUN skraćenica za Session Traversal Utilities.

Upotrijebit ćemo poslužitelj Coturn koji omogućuje video / audio pozive i konferencije primjenom protokola TURN i STUN.

Za početak instalirajte Coturn pomoću naredbe u nastavku:

sudo apt instalirati Coturn

Instalirajte Coturn

Nakon što se naredba uspješno izvrši, usluga kretanja automatski će se pokrenuti. Status možete provjeriti naredbom u nastavku:

systemctl status Coturn

Instalirajte Coturn

Ako Coturn ne radi, pokrenite ga naredbom u nastavku:

sudo systemctl start Coturn

Također, radi praktičnosti, možete postaviti da se automatski pokreće prilikom pokretanja pomoću naredbe u nastavku:

sudo systemctl omogući Coturn

Pokrenite Coturn na čizmi

Korak 5: Konfigurirajte Coturn

Kada je Coturn instaliran i pokrenut, možemo ga konfigurirati za Spreed-WebRTC.

Izvršite naredbu u nastavku za uređivanje datoteke pretvarač konfiguracijska datoteka.

sudo nano / etc / turnverver.konf

Primijetit ćete da su svi redovi komentirani iz rezultata koji dobijete. Kao što je prikazano na donjoj slici:

Okrenite datoteku konfiguracije poslužitelja

Da biste si puno olakšali posao, kopirajte donji sadržaj i zalijepite ih na kraju konfiguracije pretvarač datoteka. Međutim, ne zaboravite unijeti promjene u nastavku:

# Navedite port za slušanje. Promijenite na 80 ili 443 da biste zaobišli neke stroge NAT-ove. liste za slušanje = 8443 tls-liste za slušanje = 5349 # Navedite IP adresu za slušanje, ako nije postavljena, Coturn sluša na svim IP sistemima. slušanje-ip = 10.16.1.1 relej-ip = 10.16.1.1 # Ovi redovi omogućuju podršku za WebRTC otisak prsta lt-cred-mech carstvo = primjer.com # Metoda provjere autentičnosti use-auth-secret static-auth-secret = sample-auth-secret total-quota = 100 # Ukupna širina pojasa u sekundi bajtu TURN poslužitelj smije dodijeliti # za sesije, kombinirane (ulaz i izlaz mrežni tokovi se obrađuju zasebno). bps-capacity = 0 # Ovaj redak pruža dodatnu sigurnost. stale-nonce log-file = / var / log / turnserver / turn.prijaviti no-loopback-peers no-multicast-peers

Spremite konfiguracijsku datoteku i ponovno pokrenite coturn pomoću naredbe u nastavku:

sudo systemctl ponovno pokreni Coturn

Sada ćemo morati konfigurirati Spreed-WEbRTC za Coturn. Izvršite naredbu u nastavku da biste otvorili konfiguracijsku datoteku poslužitelja.

Ako ste Spreed instalirali putem PPA-a, upotrijebite naredbu u nastavku:

sudo nano / etc / spreed / server.konf

Ako ste instalirali Spreed via Snap, upotrijebite naredbu u nastavku:

sudo nano / var / snap / spreed-webrtc-snap / common / server.konf

Pronađite odjeljak aplikacije i dodajte retke u nastavku. Ne zaboravite u skladu s tim zamijeniti istaknuti tekst.

turnURIs = turn: coturn-server-ip: 8443?transport = udp turnSecret = example-auth-secret

Raširena datoteka poslužitelja

Spremite i zatvorite datoteku. Još jednom, ponovo pokrenite Spreed-WebRTC poslužitelj pomoću naredbe u nastavku:

Ako ste Spreed instalirali putem PPA-a, upotrijebite naredbu u nastavku:

sudo systemctl ponovno pokreni spreed-webrtc

Ako ste instalirali Spreed via Snap, upotrijebite naredbu u nastavku:

sudo snap restart spreed-webrtc-snap

Posljednji korak koji trebate učiniti je omogućiti port 8843 na svom vatrozidu. To je zato što Coturn sluša na luci 8843. Izvršite naredbe za UFW vatrozid.

sudo ufw dopustiti 8443 / tcp sudo ufw dopustiti 8443 / udp

Dopustite priključak 8843

Sad, s postavkama Coturn i Spreed-WebRTC, čak i korisnici iza NAT mreže trebali bi moći upućivati ​​audio / video pozive i čak održavati mrežne konferencije.

Nadam se da vam je ovaj post dao jasan vodič za instaliranje Spreed WebRTC poslužitelja na Ubuntu. Neke konfiguracije poput postavljanja DNS zapisa mogu biti prilično izazovne za početnike, ali vjerujem da na web mjestu na kojem ste kupili domenu postoje članci s vodičima. U slučaju da naiđete na bilo koji problem, slobodno ostavite komentar ispod.

Najbolje igre naredbenog retka za Linux
Naredbeni redak nije samo vaš najveći saveznik pri korištenju Linuxa - on također može biti izvor zabave jer ga možete koristiti za igranje mnogih zab...
Najbolje aplikacije za mapiranje gamepada za Linux
Ako volite igrati igre na Linuxu s gamepadom umjesto tipičnim sustavom za unos tipkovnice i miša, za vas postoji nekoliko korisnih aplikacija. Mnoge r...
Korisni alati za Linux igrače
Ako volite igrati igre na Linuxu, velika je vjerojatnost da ste možda koristili aplikacije i uslužne programe poput Wine, Lutris i OBS Studio za pobol...