„Spreed“ nėra kaip bet kuri kita vaizdo pokalbių platforma - ji yra daug geresnė ir visais atžvilgiais galinga. Tai nemokamas ir atviro kodo garso / vaizdo skambučių serveris, sukurtas atsižvelgiant į privatumą. „Spreed“ naudoja „WebRTC“ („Web Real-Time Communication“), kuri leidžia interneto naršyklėms ir programoms mobiliesiems realiuoju laiku bendrauti per API („Application Programming Interfaces“). „WebRTC“ suteikia galimybę bendrauti tarpusavyje, todėl garso ir vaizdo įrašai gali veikti tinklalapiuose.
Be to, „Spreed WebRTC“ naudoja „end-to-end“ šifravimą, taip užtikrindamas galutinį vartotojų duomenų privatumą ir saugumą.
Kai kurias užduotis, kurias galite atlikti naudodami „Spreed“, yra:
- Saugūs garso / vaizdo skambučiai ir teksto pokalbiai
- Vaizdo konferencija
- Vaizdo pokalbis vienas prie kito
„Spreed WebRTC Server“ diegimas „Ubuntu“
Jei įdomu, kaip pradėti naudotis „Spreed“, eisite teisingu keliu. Šis įrašas suteiks jums išsamų „Spreed WebRTC Server“ diegimo ir darbo su „Ubuntu“ pradžios vadovą. Pasinerkime!
1 žingsnis. Įdiekite „Spreed“ „Ubuntu“
Mes apsvarstysime du būdus, kuriuos galite naudoti įdiegdami „Spreed“.
- Įdiekite „Spreed“ iš oficialaus PPA
- Įdiekite „Spreed“ per „Snap“
Pastaba: „Spreed“ įdiegimas per PPA veiks tik „Ubuntu 16“.04. Jei naudojate „Ubuntu 18“.04, Ubuntu 20.04 ar bet kurį kitą „Ubuntu“ variantą, turėsite naudoti „Snap“.
-
Įdiekite „Spreed“ iš oficialaus PPA
Paleiskite terminalą („Ctrl“ + „Alt“ + T) ir vykdykite toliau pateiktas komandas terminale.
sudo apt-add-repository ppa: strukturag / spreed-webrtc sudo apt update sudo apt install spreed-webrtc
-
Įdiekite „Spreed“ per „Snap“
Norėdami pradėti, pirmiausia įdiekite „Snap“ naudodami toliau pateiktas komandas.
atnaujinti sudo apt įdiegti
Įdiegę „Snap“ savo sistemoje, toliau įdiekite „Spreed WebRTC“ naudodami toliau pateiktą komandą:
sudo snap įdiekite spreed-webrtc-snap
Kai sėkmingai įdiegsite „Spreed-WebRTC“ per „Snap“, jis paleis savo įmontuotą tinklo serverį per „localhost“ 8084 prievade (127.0.0: 8084). Galite patvirtinti jo būseną pagal tai, ar jis veikia, naudodamiesi toliau pateikta komanda.
informacija spreed-webrtc-snap
Jei jis neveikia, galite paleisti „Spreed Snap“ naudodami toliau pateiktą komandą:
sudo snap start spreed-webrtc-snap
Taip pat galite įgalinti „Spreed“ paleidimą automatiškai, kai sistema įsijungia naudodama toliau pateiktą komandą:
„sudo snap start“ - įgalinamas „spreed-webrtc-snap“
Galite patvirtinti, ar veikia „Spreed“ žiniatinklio serveris, ieškodami 127 adreso.0.01: 8084 žiniatinklio naršyklėje. Turėtumėte pamatyti „Spreed“ tinklalapį, kaip parodyta žemiau esančiame paveikslėlyje.
2 veiksmas: nustatykite atvirkštinį tarpinį serverį
Kaip matote iš pirmiau pateiktos informacijos, „Spreed-WebRTC“ pagal nutylėjimą yra prieinama tik per „localhost“. Todėl kitas vartotojas, esantis kitame tinkle nei jūs, nepasieks „Spreed-WebRTC“. Norėdami išspręsti šią problemą, turėsite nustatyti atvirkštinį tarpinį serverį.
Patarimas: Atvirkštinis tarpinis serveris yra tarpinis serveris, kuris kliento vardu prašo tinklo išteklių iš atitinkamo vidinio serverio.
Mes pažvelgsime, kaip nustatyti atvirkštinį tarpinį serverį naudojant „Nginx“ ir „Apache“. Galite naudoti bet kurį iš jų.
-
Nginx
Norėdami įdiegti „Nginx“ „Ubuntu“, vykdykite toliau nurodytą komandą:
sudo apt įdiegti nginx
Kai komanda bus sėkmingai įvykdyta, sukurkite „Spreed-WebRTC“ serverio bloką „Nginx“. Norėdami sukurti „spreed-webrtc“, vykdykite toliau pateiktą komandą.conf failas su nano redaktoriumi.
sudo nano / etc / nginx / conf.d / spreed-webrtc.konf
Dabar nukopijuokite žemiau esantį turinį ir įklijuokite juos į nano redaktorių. Nepamirškite pakeisti domeno.pavyzdys.com su jūsų pageidaujamu domeno vardu. Taip pat nepamirškite nustatyti A rekordo.
Patarimas: DNS-A įrašas nurodo padomenį arba domeno pavadinimą į IP adresą.
serveris klausyti 80; serverio_vardas išplito.pavyzdys.com; vieta / proxy_pass http: // 127.0.0.1: 8080; proxy_http_version 1.1; proxy_set_header Atnaujinti $ http_upgrade; proxy_set_header Ryšio „atnaujinimas“; „proxy_set_header“ X-Forwarded-Proto $ schema; proxy_set_header Pagrindinis kompiuteris $ 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 išjungtas; 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“ klaidos skirtasis laikas netinkamas__ antraštė http_502 http_503 http_504; vieta ~ /.gerai žinomas / acme-challenge root / usr / share / nginx / spreed /; leisti visiems;
Išsaugokite ir uždarykite failą. („Ctrl“ + O, tada „Enter“, kad išsaugotumėte, „Ctrl“ + X, kad išeitumėte).
Dabar galite patikrinti savo konfigūracijas ir iš naujo įkelti „Nginx“ naudodami toliau pateiktas komandas.
sudo nginx -t sudo systemctl perkrauti nginx
Dabar „Spreed-WebRTC“ turėtų būti pasiekiama per interneto naršyklę per priskirtą domeną. Žiūrėkite žemiau esantį vaizdą.
-
Apache
Jei norite naudoti „Apache“, pirmiausia įdiekite jį naudodami toliau nurodytą komandą:
sudo apt install apache2
Atlikę, kaip ir „Nginx“, sukurkite „Spreed-WebRTC“ serverio bloko failą. Vykdykite komandą, kad sukurtumėte ir atidarytumėte failą naudodami „nano“ redaktorių.
sudo nano / etc / apache2 / sites-available / spreed-webrtc.konf
Dabar nukopijuokite žemiau esantį turinį ir įklijuokite juos į nano redaktorių. Nepamirškite pakeisti domeno.pavyzdys.com su jūsų pageidaujamu domeno vardu. Taip pat nepamirškite nustatyti A rekordo.
ServerName išplito.pavyzdys.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“
Išsaugokite ir uždarykite failą. („Ctrl“ + O, tada „Enter“, kad išsaugotumėte, „Ctrl“ + X, kad išeitumėte).
Toliau turime įgalinti proxy_http
Vykdykite toliau pateiktą komandą:
sudo a2enmod proxy_http
Baigę įgalinkite virtualųjį pagrindinį kompiuterį. Vykdykite toliau pateiktą komandą:
sudo a2ensite spreed-webrtc.konf
Galite tęsti savo konfigūracijų bandymą ir iš naujo įkelti „Apache“ serverį.
sudo apachectl configtest sudo systemctl perkrauti apache2
Dabar „Spreed-WebRTC“ turėtų būti pasiekiama per interneto naršyklę per priskirtą domeną. Žiūrėkite žemiau esantį vaizdą.
3 veiksmas: įgalinkite HTTPS
Iki šiol mūsų „Spreed-WebRTC“ serveris pasiekiamas tik per HTTP, o tai gali kelti tam tikrų saugumo problemų. Norėdami įgalinti HTTPS, turėsime gauti SSL / TLS sertifikatą.
Šioje mokymo programoje bus naudojamas „Encrypt“, kad gautume nemokamą TLS sertifikatą. Vykdykite toliau pateiktas komandas, kad įdiegtume „Encrypt“ klientą „Certbot“ iš oficialaus PPA.
sudo apt įdiekite certbot
„Apache“ vartotojams turėsite įdiegti „Certbot Apache“ papildinį naudodami toliau nurodytą komandą:
sudo apt įdiekite python3-certbot-apache
„Nginx“ vartotojams įdiekite „Certbot Nginx“ papildinį naudodami toliau nurodytą komandą:
sudo apt įdiekite python3-certbot-nginx
Norėdami gauti „Apache“ serverio TLS sertifikatą, vykdykite toliau nurodytą komandą:
sudo certbot --apache --agree-tos - peradresuoti --hsts --staple-ocsp --paštu jums @ pavyzdys.com -d paplitimas.pavyzdys.com
Norėdami gauti „Nginx“ serverio TLS sertifikatą, vykdykite toliau nurodytą komandą:
sudo certbot --nginx --sutinku-tos - peradresuoti --hsts --staple-ocsp --paštu jums @ pavyzdys.com -d paplitimas.pavyzdys.com
Pastaba: Su dviem aukščiau pateiktomis komandomis nepamirškite pakeisti jūs @ pavyzdys.com
su savo oficialiu elektroniniu paštu registracijai ir paplitimas.pavyzdys.com
su domeno vardu naudojote savo „Spreed-WebRTC“.
Jei sėkmingai įgijote sertifikatą, turėtumėte gauti toliau pateiktą pranešimą.
4 žingsnis: įdiekite TURN / STUN serverį
„Spreed-WebRTC“ serveris yra gerai sukonfigūruotas ir prieinamas iki šiol internete. Tačiau turime išspręsti vieną problemą. Jei turite vartotojų už NAT tinklo, jie bus užblokuoti ir „WebRTC“ neveiks. Norėdami tai įveikti, sukursime TURN / STUN serverį, kuris veiks kaip žiniatinklio naršyklių perdavimo priemonė. TURN reiškia „Traversal Using Relays around NAT“, o STUN - „Session Traversal Utilities“.
Mes naudosime „Coturn“ serverį, kuris palengvina vaizdo / garso skambučius ir konferencijas, įgyvendindamas TURN ir STUN protokolus.
Norėdami pradėti, įdiekite „Coturn“ naudodami toliau pateiktą komandą:
sudo apt install coturn
Kai komanda sėkmingai įvykdoma, „coturn“ paslauga bus paleista automatiškai. Būseną galite patikrinti naudodami žemiau esančią komandą:
systemctl būsenos įvertinimas
Jei „coturn“ neveikia, paleiskite jį naudodami žemiau esančią komandą:
sudo systemctl start coturn
Be to, patogumo dėlei galite nustatyti, kad jis būtų paleistas automatiškai paleidus, naudodamiesi toliau pateikta komanda:
sudo systemctl įgalinti coturn
5 veiksmas: konfigūruokite „Coturn“
Įdiegę ir veikdami „Coturn“, galime jį sukonfigūruoti „Spreed-WebRTC“.
Norėdami redaguoti, vykdykite toliau pateiktą komandą turnerveris
konfigūracijos failas.
sudo nano / etc / turnserver.konf
Jūs pastebėsite, kad visos eilutės yra komentuojamos iš gauto išvesties. Kaip parodyta paveikslėlyje žemiau:
Norėdami palengvinti savo darbą, nukopijuokite žemiau esantį turinį ir įklijuokite juos konfigūracijos pabaigoje turnerveris
failą. Tačiau nepamirškite atlikti toliau nurodytų pakeitimų:
- Pakeiskite pavyzdį.com su domeno vardu, kurį priskyrėte „Spreed-WebRTC“.
- Pakeiskite IP adresą
10.16.1.1
su viešuoju jūsų serverio IP adresu. - Pakeiskite
pavyzdys-aut. paslaptis
su savaisiais. Padarykite jį ilgą ir saugų - pageidautina atsitiktinai sugeneruotą eilutę.
# Nurodykite klausymo prievadą. Pakeiskite į 80 arba 443, kad apeitumėte griežtus NAT. listening-port = 8443 tls-listening-port = 5349 # Nurodykite klausymo IP, jei nenustatyta, tada „Coturn“ klausosi visų sistemos IP. klausymas-ip = 10.16.1.1 relė-ip = 10.16.1.1 # Šios eilutės leidžia palaikyti „WebRTC“ pirštų atspaudus lt-cred-mech realm = example.lt tinklo srautai nagrinėjami atskirai). bps-capacity = 0 # Ši eilutė suteikia papildomą saugumą. pasenęs nonce žurnalo failas = / var / log / turnerver / turn.log no-loopback-peers no-multicast-peers
Išsaugokite konfigūracijos failą ir iš naujo paleiskite „coturn“ naudodami toliau pateiktą komandą:
sudo systemctl paleiskite „coturn“ iš naujo
Dabar turėsime sukonfigūruoti „Spreed-WEbRTC“, skirtą „Coturn“. Norėdami atidaryti serverio konfigūracijos failą, vykdykite toliau pateiktą komandą.
Jei įdiegėte „Spreed“ per PPA, naudokite toliau pateiktą komandą:
sudo nano / etc / spreed / server.konf
Jei įdiegėte „Spreed“ per „Snap“, naudokite toliau pateiktą komandą:
sudo nano / var / snap / spreed-webrtc-snap / common / server.konf
Suraskite programos skiltį ir pridėkite toliau pateiktas eilutes. Nepamirškite atitinkamai pakeisti paryškinto teksto.
turnURIs = turn: coturn-server-ip: 8443?transport = udp turnSecret = pavyzdys-auth-paslaptis
Išsaugokite ir uždarykite failą. Dar kartą paleiskite „Spreed-WebRTC“ serverį naudodami toliau nurodytą komandą:
Jei įdiegėte „Spreed“ per PPA, naudokite toliau pateiktą komandą:
sudo systemctl paleiskite iš naujo spreed-webrtc
Jei įdiegėte „Spreed“ per „Snap“, naudokite toliau pateiktą komandą:
sudo snap paleiskite iš naujo spreed-webrtc-snap
Paskutinis veiksmas, kurį turite padaryti, yra įjungti ugniasienėje 8843 prievadą. Taip yra todėl, kad Coturnas klausosi 8843 uosto. Vykdykite UFW užkardos komandas.
sudo ufw leisti 8443 / tcp sudo ufw leisti 8443 / udp
Dabar, atlikus „Coturn“ ir „Spreed-WebRTC“ sąranką, net ir NAT tinkle esantys vartotojai turėtų galėti skambinti garso / vaizdo įrašais ir netgi rengti internetines konferencijas.
Tikiuosi, kad šis pranešimas davė jums aiškų „Spreed WebRTC Server“ diegimo „Ubuntu“ vadovą. Kai kurios konfigūracijos, pvz., DNS nustatymas, įrašas gali būti gana sudėtingas pradedantiesiems, bet manau, kad svetainėje, kurią įsigijote, yra domeno straipsnių. Jei susiduriate su kokia nors problema, nedvejodami palikite komentarą žemiau.