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:
- Sikre lyd- / videosamtaler og tekstchat
- Videokonferanse
- En til en videochat
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.
- Installer Spreed fra den offisielle PPA
- 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.
-
Installer Spreed fra den offisielle PPA
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
-
Installer Spreed via Snap
For å komme i gang, installer først Snap med kommandoene nedenfor.
sudo apt oppdater sudo apt installer snapd
Når du har installert Snap på systemet ditt, fortsett å installere Spreed WebRTC med kommandoen nedenfor:
sudo snap installere spreed-webrtc-snap
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
Hvis den ikke kjører, kan du starte Spreed snap med kommandoen nedenfor:
sudo snap start spreed-webrtc-snap
Du kan også aktivere Spreed å starte automatisk når systemet starter med kommandoen nedenfor:
sudo snap start - aktivere spreed-webrtc-snap
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.
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.
-
Nginx
For å installere Nginx på Ubuntu, utfør kommandoen nedenfor:
sudo apt installere 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;
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
Nå skal Spreed-WebRTC være tilgjengelig via en nettleser via det tildelte domenet. Se bildet nedenfor.
-
Apache
Hvis du vil bruke Apache, begynner du først å installere den med kommandoen nedenfor:
sudo apt installer apache2
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
Når du er ferdig, aktiver den virtuelle verten. Utfør kommandoen nedenfor:
sudo a2ensite spreed-webrtc.konf
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.
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
For Apache-brukere må du installere Certbot Apache-pluginet med kommandoen nedenfor:
sudo apt installer python3-certbot-apache
For Nginx-brukere, installer Certbot Nginx-plugin med kommandoen nedenfor:
sudo apt installere python3-certbot-nginx
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.
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
Når kommandoen er utført vellykket, starter coturn-tjenesten automatisk. Du kan sjekke statusen med kommandoen nedenfor:
systemctl status 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
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:
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:
- Bytt ut eksempel.com med domenenavnet du tildelte Spreed-WebRTC.
- Bytt ut IP-adressen
10.16.1.1
med den offentlige IP-adressen til serveren din. - Erstatte
sample-auth-secret
med din egen. Gjør den lang og sikker - helst en tilfeldig generert streng.
# 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
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
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.