Server

Slik installerer du Spreed WebRTC Server på Ubuntu

Slik installerer du Spreed WebRTC Server på Ubuntu

Spreed er ikke som noen annen videochatplattform - den er mye bedre og kraftig på alle måter. Det er en gratis og åpen kildekode-lyd- / videosamtaler som er designet med tanke på personvern. Spreed bruker WebRTC (Web Real-Time Communication), som gjør det mulig for nettlesere og mobilapper å kommunisere i sanntid via API-er (Application Programming Interfaces). WebRTC muliggjør peer-to-peer-kommunikasjon som gjør det mulig for lyd og video å fungere på websider.

I tillegg bruker Spreed WebRTC end-to-end-kryptering, og dermed sikrer den ultimate personvern og sikkerhet for brukernes data.

Noen av oppgavene du kan utføre med Spreed inkluderer:

Installere Spreed WebRTC Server på Ubuntu

Hvis du lurer på hvordan du kommer i gang med Spreed, vil du være på rett spor. Dette innlegget vil gi deg en trinnvis veiledning om hvordan du installerer og kommer i gang med Spreed WebRTC Server på Ubuntu. La oss dykke inn!

Trinn 1. Installer Spreed på Ubuntu

Vi vil se på to måter du kan bruke til å installere Spreed.

  1. Installer Spreed fra den offisielle PPA
  2. Installer Spreed via Snap

Merk: Installering av Spreed via PPA fungerer bare på Ubuntu 16.04. Hvis du er på Ubuntu 18.04, Ubuntu 20.04, eller en hvilken som helst annen Ubuntu-variant, må du bruke Snap.

Start terminalen (Ctrl + Alt + T) og utfør kommandoene nedenfor på terminalen.

sudo apt-add-repository ppa: strukturag / spreed-webrtc sudo apt oppdatering sudo apt installere spreed-webrtc

For å komme i gang, installer først Snap med kommandoene nedenfor.

sudo apt oppdater sudo apt installer snapd

Installer Snapd

Når du har installert Snap på systemet ditt, fortsett å installere Spreed WebRTC med kommandoen nedenfor:

sudo snap installere spreed-webrtc-snap

Installer Spreed-WebRTC

Når du har installert Spreed-WebRTC via Snap, starter den den innebygde webserveren via localhost på port 8084 (127.0.0: 8084). Du kan bekrefte statusen for om den kjører med kommandoen nedenfor.

snap info spreed-webrtc-snap

Spreed-WebRTC Status Snap

Hvis den ikke kjører, kan du starte Spreed snap med kommandoen nedenfor:

sudo snap start spreed-webrtc-snap

Start Spreed Snap

Du kan også aktivere Spreed å starte automatisk når systemet starter med kommandoen nedenfor:

sudo snap start - aktivere spreed-webrtc-snap

Aktiver Spreed for å starte på oppstart

Du kan bekrefte om Spreed-webserveren kjører ved å søke i adressen 127.0.01: 8084 i nettleseren. Du bør se Spreed-nettsiden som vist på bildet nedenfor.

Spreed webgrensesnitt

Trinn 2: Konfigurere omvendt proxy

Som du kan se fra informasjonen ovenfor, er Spreed-WebRTC, som standard, bare tilgjengelig via localhost. Derfor vil ikke en annen bruker i et annet nettverk enn deg få tilgang til Spreed-WebRTC. For å løse dette problemet, må du konfigurere en omvendt proxy.

Tips: En omvendt proxy er en proxy-server som ber om nettverksressurser på vegne av en klient fra den aktuelle backend-serveren.

Vi vil se på hvordan du setter opp en omvendt proxy ved hjelp av Nginx og Apache. Du kan bruke hvilken som helst av dem.

For å installere Nginx på Ubuntu, utfør kommandoen nedenfor:

sudo apt installere nginx

Installer Nginx

Når kommandoen er utført vellykket, fortsett med å opprette en serverblokk for Spreed-WebRTC på Nginx. Utfør kommandoen nedenfor for å opprette spreed-webrtc.conf-fil med nano-editoren.

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

Vennligst kopier innholdet nedenfor og lim dem inn i nano-editoren. Husk å bytte ut domene.eksempel.com med ditt foretrukne domenenavn. Ikke glem å sette opp en A-plate.

Tips: En DNS-A-post peker underdomenet eller domenenavnet til en IP-adresse.

server listen 80; server_name sprede.eksempel.com; sted / proxy_pass http: // 127.0.0.1: 8080; proxy_http_version 1.1; proxy_set_header Oppgrader $ http_upgrade; proxy_set_header Tilkobling "oppgradering"; proxy_set_header X-Forwarded-Proto $-ordning; proxy_set_header Vert $ http_host; proxy_set_header X-Real-IP $ remote_addr; proxy_set_header X-Videresendt-For $ proxy_add_x_forwarded_for; proxy_buffering on; proxy_ignore_client_abort av; proxy_redirect av; 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 error timeout ugyldig_header http_502 http_503 http_504;  plassering ~ /.velkjent / acme-utfordring root / usr / share / nginx / spreed /; tillat alle; 

Spreed-WebRTC konfigurasjonsfil

Lagre og lukk filen. (Ctrl + O og deretter Enter for å lagre, Ctrl + X for å avslutte).

Du kan nå teste konfigurasjonene dine og laste Nginx på nytt med kommandoene nedenfor.

sudo nginx -t sudo systemctl last inn nginx

Last Nginx på nytt

Nå skal Spreed-WebRTC være tilgjengelig via en nettleser via det tildelte domenet. Se bildet nedenfor.

Spreed-WebRTC Nginx-server

Hvis du vil bruke Apache, begynner du først å installere den med kommandoen nedenfor:

sudo apt installer apache2

Installer Apache

Når du er ferdig, akkurat som vi gjorde med Nginx, oppretter du en Spreed-WebRTC-serverblokkfil. Utfør kommandoen for å opprette og åpne filen med nano editor.

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

Vennligst kopier innholdet nedenfor og lim dem inn i nano-editoren. Husk å bytte ut domene.eksempel.com med ditt foretrukne domenenavn. Ikke glem å sette opp en A-plate.

 Servernavn-sprede.eksempel.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 

Lagre og lukk filen. (Ctrl + O og deretter Enter for å lagre, Ctrl + X for å avslutte).

Deretter må vi aktivere proxy_http

Utfør kommandoen nedenfor:

sudo a2enmod proxy_http

Aktiver proxy_http

Når du er ferdig, aktiver den virtuelle verten. Utfør kommandoen nedenfor:

sudo a2ensite spreed-webrtc.konf

Aktiver virtuell vert

Du kan fortsette å teste konfigurasjonene dine og laste inn Apache-serveren din på nytt.

sudo apachectl configtest sudo systemctl last apache2

Nå skal Spreed-WebRTC være tilgjengelig via en nettleser via det tildelte domenet. Se bildet nedenfor.

Spreed-WebRTC

Trinn 3: Aktiver HTTPS

Inntil nå er vår Spreed-WebRTC-server kun tilgjengelig via HTTP, noe som kan gi noen sikkerhetsproblemer. For å aktivere HTTPS, må vi skaffe et SSL / TLS-sertifikat.

Denne opplæringen vil bruke Let's Encrypt for å få et gratis TLS-sertifikat. Utfør kommandoene nedenfor for å installere Let's Encrypt-klienten -Certbot- fra den offisielle PPA.

sudo apt installer certbot

Installer Certbot

For Apache-brukere må du installere Certbot Apache-pluginet med kommandoen nedenfor:

sudo apt installer python3-certbot-apache

Certbot Apache Plugin

For Nginx-brukere, installer Certbot Nginx-plugin med kommandoen nedenfor:

sudo apt installere python3-certbot-nginx

Nginx Certbot-plugin

For å få TLS-sertifikatet for Apache-serveren, utfør kommandoen nedenfor:

sudo certbot --apache --gree-tos - omdirigere --hsts --staple-ocsp --email deg @ eksempel.com -d spreed.eksempel.com

For å få et TLS-sertifikat for Nginx-serveren, utfør kommandoen nedenfor:

sudo certbot --nginx --gree-tos - omdirigere --hsts --staple-ocsp - e-post du @ eksempel.com -d spreed.eksempel.com

Merk: Husk å erstatte med de to kommandoene ovenfor deg @ eksempel.com med din offisielle e-post for registrering og sprøyte.eksempel.com med domenenavnet, brukte du til Spreed-WebRTC.

Du bør motta meldingen nedenfor hvis du har mottatt sertifikatet.

spreed-webtrc-certbot-https

Trinn 4: Installer en TURN / STUN-server

Spreed-WebRTC-serveren er godt konfigurert og tilgjengelig online til dette punktet. Det er imidlertid ett problem vi må løse. Hvis du har brukere bak et NAT-nettverk, blir de blokkert, og WebRTC fungerer ikke. For å overvinne dette vil vi sette opp en TURN / STUN-server, som vil fungere som et stafett mellom nettlesere. TURN står for Traversal Using Relays around NAT, og STUN står for Session Traversal Utilities.

Vi vil bruke Coturn-serveren, som forenkler video- / lydsamtaler og konferanser ved å implementere TURN- og STUN-protokoller.

For å komme i gang, installer Coturn med kommandoen nedenfor:

sudo apt installere coturn

Installer Coturn

Når kommandoen er utført vellykket, starter coturn-tjenesten automatisk. Du kan sjekke statusen med kommandoen nedenfor:

systemctl status coturn

Installer Coturn

Hvis coturn ikke kjører, start den med kommandoen nedenfor:

sudo systemctl start coturn

For enkelhets skyld kan du også stille den til å starte automatisk ved oppstart med kommandoen nedenfor:

sudo systemctl aktiver coturn

Start Coturn ved oppstart

Trinn 5: Konfigurer Coturn

Med Coturn installert og kjører, kan vi konfigurere den for Spreed-WebRTC.

Utfør kommandoen nedenfor for å redigere turner konfigurasjonsfil.

sudo nano / etc / turnserver.konf

Du vil merke at alle linjene er kommentert fra utdataene du får. Som vist på bildet nedenfor:

Slå serverkonffil

For å gjøre arbeidet ditt enklere, kopier innholdet nedenfor og lim det inn på slutten av konfigurasjonen turner fil. Husk imidlertid å gjøre endringene nedenfor:

# Spesifiser lytteport. Bytt til 80 eller 443 for å gå rundt noen strenge NAT-er. lytteport = 8443 tls-lytteport = 5349 # Angi lytte-IP, hvis ikke angitt, lytter Coturn på alle system-IP-er. lytte-ip = 10.16.1.1 relé-ip = 10.16.1.1 # Disse linjene muliggjør støtte for WebRTC fingeravtrykk lt-cred-mech realm = eksempel.com # Autentiseringsmetode bruk-auth-secret static-auth-secret = sample-auth-secret total-quota = 100 # Total byte per sekund båndbredde TURN-serveren har lov til å tildele # for øktene, kombinert (input og output nettverksstrømmer behandles separat). bps-capacity = 0 # Denne linjen gir ekstra sikkerhet. foreldet-ikke-loggfil = / var / logg / svinger server / sving.logg no-loopback-peers no-multicast-peers

Lagre konfigurasjonsfilen og start coturn på nytt med kommandoen nedenfor:

sudo systemctl start coturn på nytt

Nå må vi konfigurere Spreed-WEbRTC for Coturn. Utfør kommandoen nedenfor for å åpne serverkonfigurasjonsfilen.

Hvis du installerte Spreed via PPA, bruk kommandoen nedenfor:

sudo nano / etc / spreed / server.konf

Hvis du installerte Spreed via Snap, bruk kommandoen nedenfor:

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

Finn appdelen og legg til linjene nedenfor. Husk å erstatte den uthevede teksten tilsvarende.

turnURIs = turn: coturn-server-ip: 8443?transport = udp turnSecret = eksempel-auth-hemmelighet

Spreed Server-fil

Lagre og lukk filen. Start igjen Spreed-WebRTC-serveren med kommandoen nedenfor:

Hvis du installerte Spreed via PPA, bruk kommandoen nedenfor:

sudo systemctl start spreed-webrtc på nytt

Hvis du installerte Spreed via Snap, bruk kommandoen nedenfor:

sudo snap start på nytt spreed-webrtc-snap

Det siste trinnet du må gjøre er å aktivere port 8843 på brannmuren. Det er fordi Coturn lytter på port 8843. Utfør kommandoene for UFW-brannmuren.

sudo ufw allow 8443 / tcp sudo ufw allow 8443 / udp

Tillat port 8843

Nå, med både Coturn og Spreed-WebRTC-oppsett, bør selv brukere bak et NAT-nettverk kunne ringe lyd / videosamtaler og til og med holde online konferanser.

Jeg håper dette innlegget ga deg en klar guide om hvordan du installerer Spreed WebRTC Server på Ubuntu. Noen konfigurasjoner som å sette en DNS A-post kan være ganske utfordrende for nybegynnere, men jeg tror det er guideartikler på nettstedet du kjøpte domenet ditt. Hvis du kommer over et problem, er du velkommen til å legge igjen en kommentar nedenfor.

Beste Linux Distros for spill i 2021
Linux-operativsystemet har kommet langt fra det originale, enkle, serverbaserte utseendet. Dette operativsystemet har forbedret seg enormt de siste år...
Hvordan fange opp og streame spilløkten din på Linux
Tidligere ble spill bare ansett som en hobby, men med tiden så spillindustrien en enorm vekst når det gjelder teknologi og antall spillere. Spillpubli...
Beste spill å spille med håndsporing
Oculus Quest introduserte nylig den gode ideen om håndsporing uten kontrollere. Med et stadig økende antall spill og aktiviteter som utfører støtte en...