Spreed är inte som någon annan videochattplattform - den är mycket bättre och kraftfull på alla sätt. Det är en gratis och öppen källkodsserver för ljud / video som är utformad med integritet i åtanke. Spreed använder WebRTC (Web Real-Time Communication), som gör det möjligt för webbläsare och mobilappar att kommunicera i realtid via API: er (Application Programming Interfaces). WebRTC möjliggör peer-to-peer-kommunikation vilket gör det möjligt för ljud och video att fungera på webbsidor.
Dessutom använder Spreed WebRTC end-to-end-kryptering, vilket säkerställer ultimat integritet och säkerhet för användarnas data.
Några av de uppgifter du kan utföra med Spreed inkluderar:
- Säkra ljud- / videosamtal och textchatt
- Videokonferenser
- En till en videochatt
Installerar Spreed WebRTC Server på Ubuntu
Om du undrar hur du kommer igång med Spreed kommer du på rätt spår. Det här inlägget ger dig en steg-för-steg-guide om installation och komma igång med Spreed WebRTC Server på Ubuntu. Låt oss dyka in!
Steg 1. Installera Spreed på Ubuntu
Vi kommer att titta på två sätt som du kan använda för att installera Spreed.
- Installera Spreed från den officiella PPA
- Installera Spreed via Snap
Notera: Installera Spreed via PPA fungerar bara på Ubuntu 16.04. Om du är på Ubuntu 18.04, Ubuntu 20.04 eller någon annan Ubuntu-variant måste du använda Snap.
-
Installera Spreed från den officiella PPA
Starta terminalen (Ctrl + Alt + T) och kör kommandona nedan på terminalen.
sudo apt-add-repository ppa: strukturag / spreed-webrtc sudo apt update sudo apt installera spreed-webrtc
-
Installera Spreed via Snap
För att komma igång, installera först Snap med kommandona nedan.
sudo apt uppdatera sudo apt installera snapd
När du har installerat Snap på ditt system, fortsätt med att installera Spreed WebRTC med kommandot nedan:
sudo snap installera spreed-webrtc-snap
När du väl har installerat Spreed-WebRTC via Snap startar den sin inbyggda webserver via localhost på port 8084 (127.0.0: 8084). Du kan bekräfta dess status på om den körs med kommandot nedan.
snap info spreed-webrtc-snap
Om den inte körs kan du starta Spreed snap med kommandot nedan:
sudo snap start spreed-webrtc-snap
Du kan också aktivera Spreed att starta automatiskt när systemet startar med kommandot nedan:
sudo snap start - aktivera spreed-webrtc-snap
Du kan bekräfta om Spreed-webbservern körs genom att söka i adressen 127.0.01: 8084 i webbläsaren. Du bör se Spreed-webbsidan som visas i bilden nedan.
Steg 2: Ställa in omvänd proxy
Som du kan se från ovanstående information är Spreed-WebRTC som standard endast tillgänglig via localhost. Därför kommer en annan användare i ett annat nätverk från dig inte att komma åt Spreed-WebRTC. För att lösa problemet måste du ställa in en omvänd proxy.
Dricks: En omvänd proxy är en proxyserver som begär nätverksresurser på uppdrag av en klient från lämplig backend-server.
Vi kommer att titta på hur man ställer in en omvänd proxy med Nginx och Apache. Du kan använda någon av dem.
-
Nginx
För att installera Nginx på Ubuntu, kör du kommandot nedan:
sudo apt installera nginx
När kommandot har körts framgångsrikt, fortsätt med att skapa ett serverblock för Spreed-WebRTC på Nginx. Utför kommandot nedan för att skapa spreed-webrtc.conf-fil med nano-redigeraren.
sudo nano / etc / nginx / conf.d / spreed-webrtc.konf
Kopiera nu innehållet nedan och klistra in dem i nano-redigeraren. Kom ihåg att byta ut domänen.exempel.com med ditt föredragna domännamn. Glöm inte att skapa en A-post.
Dricks: En DNS-A-post pekar underdomän eller domännamn till en IP-adress.
server lyssna 80; server_name spridning.exempel.com; plats / proxy_pass http: // 127.0.0.1: 8080; proxy_http_version 1.1; proxy_set_header Uppgradera $ http_upgrade; proxy_set_header Anslutning "uppgradering"; proxy_set_header X-Forwarded-Proto $ -schema; proxy_set_header Värd $ http_host; proxy_set_header X-Real-IP $ remote_addr; proxy_set_header X-vidarebefordras-för $ proxy_add_x_forwarded_for; proxy_buffering på; proxy_ignore_client_abort off; 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 fel timeout ogiltig_header http_502 http_503 http_504; plats ~ /.välkänd / acme-utmaning root / usr / share / nginx / spreed /; Tillåt alla;
Spara och stäng filen. (Ctrl + O och sedan Enter för att spara, Ctrl + X för att avsluta).
Du kan nu testa dina konfigurationer och ladda om Nginx med kommandona nedan.
sudo nginx -t sudo systemctl ladda om nginx
Nu bör Spreed-WebRTC vara tillgänglig via en webbläsare via den tilldelade domänen. Se bilden nedan.
-
Apache
Om du vill använda Apache, börja med att först installera den med kommandot nedan:
sudo apt installera apache2
När du är klar, precis som vi gjorde med Nginx, skapa en Spreed-WebRTC-serverblockfil. Utför kommandot för att skapa och öppna filen med nano-editor.
sudo nano / etc / apache2 / sites-available / spreed-webrtc.konf
Kopiera nu innehållet nedan och klistra in dem i nano-redigeraren. Kom ihåg att byta ut domänen.exempel.com med ditt föredragna domännamn. Glöm inte heller att skapa en A-post.
ServerName spridning.exempel.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
Spara och stäng filen. (Ctrl + O och sedan Enter för att spara, Ctrl + X för att avsluta).
Därefter måste vi aktivera proxy_http
Utför kommandot nedan:
sudo a2enmod proxy_http
När du är klar aktiverar du den virtuella värden. Utför kommandot nedan:
sudo a2ensite spreed-webrtc.konf
Du kan fortsätta testa dina konfigurationer och ladda om din Apache-server.
sudo apachectl configtest sudo systemctl ladda om apache2
Nu bör Spreed-WebRTC vara tillgänglig via en webbläsare via den tilldelade domänen. Se bilden nedan.
Steg 3: Aktivera HTTPS
Hittills är vår Spreed-WebRTC-server endast tillgänglig via HTTP, vilket kan ge vissa säkerhetsproblem. För att aktivera HTTPS måste vi skaffa ett SSL / TLS-certifikat.
Denna handledning använder Låt oss kryptera för att få ett gratis TLS-certifikat. Utför kommandona nedan för att installera Let's Encrypt-klienten -Certbot- från den officiella PPA.
sudo apt installera certbot
För Apache-användare måste du installera Certbot Apache-plugin med kommandot nedan:
sudo apt installera python3-certbot-apache
För Nginx-användare installerar du Certbot Nginx-plugin med kommandot nedan:
sudo apt installera python3-certbot-nginx
För att erhålla TLS-certifikatet för Apache-servern, kör du kommandot nedan:
sudo certbot --apache --agree-tos - omdirigera --hsts --staple-ocsp - maila dig @ exempel.com -d spridare.exempel.com
För att få ett TLS-certifikat för Nginx-servern, kör du kommandot nedan:
sudo certbot --nginx - accept-tos - omdirigera --hsts --staple-ocsp - maila dig @ exempel.com -d spridare.exempel.com
Notera: Kom ihåg att byta ut med de två kommandona ovan du @ exempel.com
med ditt officiella e-postmeddelande för registrering och spridare.exempel.com
med domännamnet använde du för din Spreed-WebRTC.
Du bör få meddelandet nedan om du framgångsrikt fått certifikatet.
Steg 4: Installera en TURN / STUN-server
Spreed-WebRTC-servern är väl inställd och tillgänglig online till denna punkt. Det finns dock en fråga vi måste lösa. Om du har användare bakom ett NAT-nätverk kommer de att blockeras och WebRTC fungerar inte. För att övervinna detta kommer vi att ställa in en TURN / STUN-server, som fungerar som ett relä mellan webbläsare. TURN står för Traversal Using Relays kring NAT, och STUN står för Session Traversal Utilities.
Vi kommer att använda Coturn-servern, vilket underlättar video- / ljudsamtal och konferenser genom att implementera TURN- och STUN-protokoll.
För att komma igång installerar du Coturn med kommandot nedan:
sudo apt installera coturn
När kommandot körs framgångsrikt startar coturn-tjänsten automatiskt. Du kan kontrollera statusen med kommandot nedan:
systemctl status coturn
Om coturn inte körs, starta det med kommandot nedan:
sudo systemctl starta coturn
För enkelhets skull kan du också ställa in att den ska starta automatiskt vid start med kommandot nedan:
sudo systemctl aktiverar coturn
Steg 5: Konfigurera Coturn
Med Coturn installerad och igång kan vi konfigurera den för Spreed-WebRTC.
Utför kommandot nedan för att redigera vändserver
konfigurationsfil.
sudo nano / etc / turnserver.konf
Du kommer att märka att alla rader kommenteras från den utdata du får. Som visas i bilden nedan:
För att göra ditt arbete mycket enklare, kopiera innehållet nedan och klistra in dem i slutet av din konfiguration vändserver
fil. Kom dock ihåg att göra ändringarna nedan:
- Ersätt exempel.com med domännamnet du tilldelade Spreed-WebRTC.
- Byt ut IP-adressen
10.16.1.1
med den offentliga IP-adressen till din server. - Byta ut
sample-auth-secret
med din egen. Vänligen gör den lång och säker - helst en slumpmässigt genererad sträng.
# Ange lyssningsport. Byt till 80 eller 443 för att gå runt några strikta NAT. lyssnande-port = 8443 tls-lyssnande-port = 5349 # Ange lyssnande IP, om inte inställt så lyssnar Coturn på alla system-IP: er. lyssnande-ip = 10.16.1.1 relä-ip = 10.16.1.1 # Dessa rader möjliggör stöd för WebRTC fingeravtryck lt-cred-mech realm = exempel.com # Autentiseringsmetod use-auth-secret static-auth-secret = sample-auth-secret total-quota = 100 # Total byte per sekund bandbredd som TURN-servern tillåter att allokera # för sessionerna, kombinerat (input och output nätverksströmmar behandlas separat). bps-capacity = 0 # Denna rad ger extra säkerhet. inaktuell nonce-loggfil = / var / log / turnserver / turn.logga no-loopback-peers no-multicast-peers
Spara konfigurationsfilen och starta om coturn med kommandot nedan:
sudo systemctl starta om coturn
Nu måste vi konfigurera Spreed-WEbRTC för Coturn. Utför kommandot nedan för att öppna serverkonfigurationsfilen.
Om du installerade Spreed via PPA, använd kommandot nedan:
sudo nano / etc / spreed / server.konf
Om du installerade Spreed via Snap använder du kommandot nedan:
sudo nano / var / snap / spreed-webrtc-snap / common / server.konf
Leta reda på appavsnittet och lägg till raderna nedan. Kom ihåg att ersätta den markerade texten därefter.
turnURIs = turn: coturn-server-ip: 8443?transport = udp turnSecret = exempel-auth-hemlighet
Spara och stäng filen. Starta om Spreed-WebRTC-servern med kommandot nedan:
Om du installerade Spreed via PPA, använd kommandot nedan:
sudo systemctl starta om spreed-webrtc
Om du installerade Spreed via Snap använder du kommandot nedan:
sudo snap starta om spreed-webrtc-snap
Det sista steget du behöver göra är att aktivera port 8843 på din brandvägg. Det beror på att Coturn lyssnar på port 8843. Utför kommandona för UFW-brandväggen.
sudo ufw allow 8443 / tcp sudo ufw allow 8443 / udp
Nu, med både Coturn och Spreed-WebRTC-installation, bör även användare bakom ett NAT-nätverk kunna ringa ljud- / videosamtal och till och med hålla onlinekonferenser.
Jag hoppas att det här inlägget gav dig en tydlig guide för installation av Spreed WebRTC Server på Ubuntu. Vissa konfigurationer som att ställa in en DNS A-post kan vara ganska utmanande för nybörjare, men jag tror att det finns guideartiklar på webbplatsen som du köpte din domän. Om du stöter på något problem är du välkommen att lämna en kommentar nedan.