Spreed tidak seperti platform sembang video lain - jauh lebih baik dan hebat dalam semua cara. Ini adalah pelayan panggilan audio / video sumber terbuka dan percuma yang direka dengan mempertimbangkan privasi. Spreed menggunakan WebRTC (Komunikasi Masa Nyata Web), yang membolehkan penyemak imbas web dan aplikasi mudah alih berkomunikasi dalam masa nyata melalui API (Antaramuka Pengaturcaraan Aplikasi). WebRTC membolehkan komunikasi peer-to-peer memungkinkan audio dan video berfungsi di dalam laman web.
Selain itu, Spreed WebRTC menggunakan enkripsi end-to-end, sehingga memastikan privasi dan keselamatan tertinggi terhadap data pengguna.
Beberapa tugas yang dapat anda laksanakan dengan Spreed termasuk:
- Panggilan Audio / Video selamat dan sembang Teks
- Persidangan video
- Sembang video satu demi satu
Memasang Spreed WebRTC Server di Ubuntu
Sekiranya anda tertanya-tanya bagaimana untuk memulakan dengan Spreed, anda akan berada di landasan yang betul. Catatan ini akan memberi anda panduan langkah demi langkah mengenai Memasang dan memulakan Spreed WebRTC Server di Ubuntu. Mari selami!
Langkah 1. Pasang Spreed di Ubuntu
Kami akan melihat dua cara yang boleh anda gunakan untuk memasang Spreed.
- Pasang Spreed dari PPA rasmi
- Pasang Spreed melalui Snap
Nota: Memasang Spreed melalui PPA hanya akan berfungsi di Ubuntu 16.04. Sekiranya anda menggunakan Ubuntu 18.04, Ubuntu 20.04, atau varian Ubuntu yang lain, anda perlu menggunakan Snap.
-
Pasang Spreed dari PPA rasmi
Lancarkan Terminal (Ctrl + Alt + T) dan jalankan perintah di bawah di Terminal.
sudo apt-add-repository ppa: strukturag / spreed-webrtc sudo apt update sudo apt install spreed-webrtc
-
Pasang Spreed melalui Snap
Untuk memulakan, pasang Snap terlebih dahulu dengan arahan di bawah.
sudo apt update sudo apt install snapd
Setelah anda memasang Snap pada sistem anda, teruskan memasang Spreed WebRTC dengan arahan di bawah:
sudo snap install spreed-webrtc-snap
Setelah berjaya memasang Spreed-WebRTC melalui Snap, ia akan memulakan pelayan web terbina dalam melalui localhost pada port 8084 (127.0.0: 8084). Anda boleh mengesahkan statusnya sama ada ia berjalan dengan arahan di bawah.
maklumat snap spreed-webrtc-snap
Sekiranya tidak berjalan, anda boleh memulakan snap Spreed dengan arahan di bawah:
sudo snap mula spreed-webrtc-snap
Anda juga boleh mengaktifkan Spreed untuk memulakan secara automatik apabila sistem melakukan boot dengan arahan di bawah:
sudo start start - aktifkan spreed-webrtc-snap
Anda boleh mengesahkan sama ada pelayan web Spreed berjalan dengan mencari alamat 127.0.01: 8084 di penyemak imbas web. Anda harus melihat halaman web Spreed seperti yang ditunjukkan dalam gambar di bawah.
Langkah 2: Menetapkan Proksi Terbalik
Seperti yang anda lihat dari maklumat di atas, Spreed-WebRTC, secara lalai, hanya dapat diakses melalui localhost. Oleh itu, pengguna lain di rangkaian yang berbeza dari anda tidak akan mengakses Spreed-WebRTC. Untuk mengatasi masalah ini, anda perlu menyediakan proksi terbalik.
Petua: Reverse Proxy adalah pelayan proksi yang meminta sumber rangkaian bagi pihak pelanggan dari pelayan backend yang sesuai.
Kami akan melihat cara mengatur proksi terbalik menggunakan Nginx dan Apache. Anda boleh menggunakan salah satu daripadanya.
-
Nginx
Untuk memasang Nginx di Ubuntu, jalankan arahan di bawah:
sudo apt pasang nginx
Setelah arahan berjaya dilaksanakan, teruskan membuat blok pelayan untuk Spreed-WebRTC di Nginx. Jalankan arahan di bawah untuk membuat spreed-webrtc.fail conf dengan penyunting nano.
sudo nano / etc / nginx / conf.d / spreed-webrtc.pengesahan
Sekarang, sila salin kandungan di bawah dan tampalkan di editor nano. Ingatlah untuk mengganti domain spreed.contoh.com dengan nama domain pilihan anda. Juga, jangan lupa untuk menyediakan rekod A.
Petua: Rekod DNS-A menunjukkan subdomain atau nama domain ke alamat IP.
pelayan dengar 80; nama_pengguna pelayan.contoh.com; lokasi / proxy_pass http: // 127.0.0.1: 8080; proksi_http_versi 1.1; proxy_set_header Naik taraf $ http_upgrade; proxy_set_header Connection "peningkatan"; proxy_set_header X-Forwarded-Proto $ skema; proxy_set_header Host $ http_host; proxy_set_header X-Real-IP $ remote_addr; proxy_set_header X-Forwarded-For $ proxy_add_x_forwarded_for; proxy_buffering dihidupkan; proxy_ignore_client_abort off; proksi_redirect dimatikan; proxy_connect_timeout 90; proxy_send_timeout 90; proxy_read_timeout 90; proxy_buffer_size 4k; proxy_buffers 4 32k; proksi_busy_buffers_size 64k; proxy_temp_file_write_size 64k; proxy_next_upstream ralat tamat masa tidak valid_header http_502 http_503 http_504; lokasi ~ /.terkenal / acme-cabaran root / usr / share / nginx / spreed /; membenarkan semua;
Simpan dan tutup fail. (Ctrl + O kemudian Enter untuk menyimpan, Ctrl + X untuk keluar).
Anda kini boleh menguji konfigurasi anda dan memuatkan semula Nginx dengan arahan di bawah.
sudo nginx -t sudo systemctl muat semula nginx
Sekarang, Spreed-WebRTC seharusnya dapat diakses melalui penyemak imbas web melalui domain yang ditetapkan. Lihat gambar di bawah.
-
Apache
Sekiranya anda ingin menggunakan Apache, mulakan dengan memasangnya terlebih dahulu dengan arahan di bawah:
sudo apt install apache2
Setelah selesai, seperti yang kami lakukan dengan Nginx, buat fail blok pelayan Spreed-WebRTC. Jalankan perintah untuk membuat dan membuka fail dengan penyunting nano.
sudo nano / etc / apache2 / sites-available / spreed-webrtc.pengesahan
Sekarang, sila salin kandungan di bawah dan tampalkan di editor nano. Ingatlah untuk mengganti domain spreed.contoh.com dengan nama domain pilihan anda. Juga, jangan lupa untuk menyediakan rekod A.
Nama Pelayan meningkat.contoh.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
Simpan dan tutup fail. (Ctrl + O kemudian Enter untuk menyimpan, Ctrl + X untuk keluar).
Seterusnya, kita perlu mengaktifkan proksi_http
Jalankan arahan di bawah:
sudo a2enmod proxy_http
Setelah selesai, aktifkan hos maya. Jalankan arahan di bawah:
sudo a2ensite spreed-webrtc.pengesahan
Anda boleh meneruskan untuk menguji konfigurasi dan memuatkan semula pelayan Apache anda.
sudo apachectl configtest sudo systemctl reload apache2
Sekarang, Spreed-WebRTC seharusnya dapat diakses melalui penyemak imbas web melalui domain yang ditetapkan. Lihat gambar di bawah.
Langkah 3: Dayakan HTTPS
Hingga kini, pelayan Spreed-WebRTC kami hanya dapat diakses melalui HTTP, yang mungkin menimbulkan beberapa masalah keselamatan. Untuk mengaktifkan HTTPS, kita perlu mendapatkan sijil SSL / TLS.
Tutorial ini akan menggunakan Let's Encrypt untuk mendapatkan sijil TLS percuma. Jalankan arahan di bawah untuk memasang klien Let's Encrypt -Certbot- dari PPA rasmi.
sudo apt pasang certbot
Untuk pengguna Apache, anda akan diminta untuk memasang plugin Certbot Apache dengan arahan di bawah:
sudo apt install python3-certbot-apache
Untuk pengguna Nginx, pasang plugin Certbot Nginx dengan arahan di bawah:
sudo apt pasangkan python3-certbot-nginx
Untuk mendapatkan sijil TLS untuk pelayan Apache, jalankan perintah di bawah:
sudo certbot --apache --agree-tos --redirect --hsts --staple-ocsp - email anda @ contoh.com -d spreed.contoh.com
Untuk mendapatkan sijil TLS untuk pelayan Nginx, jalankan arahan di bawah:
sudo certbot --nginx --agree-tos --redirect --hsts --staple-ocsp - email anda @ contoh.com -d spreed.contoh.com
Nota: Dengan dua arahan di atas, ingatlah untuk mengganti anda @ contoh.com
dengan e-mel rasmi anda untuk pendaftaran dan spreed.contoh.com
dengan nama domain, anda gunakan untuk Spreed-WebRTC anda.
Anda harus mendapatkan mesej di bawah ini sekiranya berjaya memperoleh sijil.
Langkah 4: Pasang Pelayan TURN / STUN
Pelayan Spreed-WebRTC disiapkan dengan baik dan boleh diakses dalam talian sehingga kini. Namun, ada satu masalah yang perlu kita selesaikan. Sekiranya anda mempunyai pengguna di belakang rangkaian NAT, mereka akan disekat dan WebRTC tidak akan berfungsi. Untuk mengatasinya, kami akan menyediakan pelayan TURN / STUN, yang akan bertindak sebagai penyampai antara penyemak imbas web. TURN bermaksud Traversal Using Relay sekitar NAT, dan STUN bermaksud Session Traversal Utilities.
Kami akan menggunakan pelayan Coturn, yang memudahkan panggilan dan persidangan Video / Audio dengan melaksanakan protokol TURN dan STUN.
Untuk memulakan, pasang Coturn dengan arahan di bawah:
sudo apt pasang coturn
Setelah perintah berjaya dilaksanakan, perkhidmatan coturn akan bermula secara automatik. Anda boleh menyemak status dengan arahan di bawah:
status ccturn systemctl
Sekiranya coturn tidak berjalan, mulakan dengan arahan di bawah:
sudo systemctl mula coturn
Untuk kemudahan, anda juga boleh menetapkannya untuk memulakan secara automatik semasa boot dengan arahan di bawah:
sudo systemctl mengaktifkan coturn
Langkah 5: Konfigurasikan Coturn
Dengan Coturn dipasang dan berjalan, kita dapat mengkonfigurasinya untuk Spreed-WebRTC.
Jalankan arahan di bawah untuk mengedit pemusing
fail konfigurasi.
sudo nano / etc / turnerver.pengesahan
Anda akan melihat bahawa semua baris dikomentari dari output yang anda dapat. Seperti yang ditunjukkan dalam gambar di bawah:
Untuk menjadikan kerja anda lebih mudah, salin kandungan di bawah dan tampalkannya di akhir konfigurasi anda pemusing
fail. Namun, ingatlah untuk membuat perubahan di bawah:
- Ganti contoh.com dengan nama domain yang anda tetapkan Spreed-WebRTC.
- Ganti alamat IP
10.16.1.1
dengan alamat IP awam pelayan anda. - Ganti
contoh-auth-rahsia
dengan anda sendiri. Sila buat panjang dan selamat - sebaiknya rentetan yang dihasilkan secara rawak.
# Tentukan port mendengar. Tukar kepada 80 atau 443 untuk menggunakan beberapa NAT yang ketat. port pendengaran = 8443 tls-port-dengar = 5349 # Tentukan IP pendengaran, jika tidak ditetapkan maka Coturn mendengar semua IP sistem. mendengar-ip = 10.16.1.1 geganti-ip = 10.16.1.1 # Garis-garis ini membolehkan sokongan untuk jejak jari WebRTC lt-cred-mech realm = contoh.com # Kaedah pengesahan menggunakan-auth-secret static-auth-secret = sample-auth-secret total-quota = 100 # Lebar lebar keseluruhan byte-per-detik pelayan TURN dibenarkan untuk memperuntukkan # untuk sesi, digabungkan (input dan output aliran rangkaian diperlakukan secara berasingan). bps-capacity = 0 # Garis ini memberikan keselamatan tambahan. stale-nonce log-file = / var / log / Turnerver / turn.log no-loopback-peers no-multicast-peers
Simpan fail konfigurasi dan mulakan semula coturn dengan arahan di bawah:
sudo systemctl mulakan semula coturn
Sekarang, kita perlu mengkonfigurasi Spreed-WEbRTC untuk Coturn. Jalankan arahan di bawah untuk membuka fail konfigurasi pelayan.
Sekiranya anda memasang Spreed melalui PPA, gunakan arahan di bawah:
sudo nano / etc / spreed / pelayan.pengesahan
Sekiranya anda memasang Spreed via Snap, gunakan arahan di bawah:
sudo nano / var / snap / spreed-webrtc-snap / common / pelayan.pengesahan
Cari bahagian aplikasi dan tambahkan baris di bawah. Ingatlah untuk mengganti teks yang diserlahkan dengan sewajarnya.
turnURIs = turn: coturn-server-ip: 8443?transport = udp turnSecret = contoh-auth-rahsia
Simpan dan tutup fail. Sekali lagi, mulakan semula pelayan Spreed-WebRTC dengan arahan di bawah:
Sekiranya anda memasang Spreed melalui PPA, gunakan arahan di bawah:
sudo systemctl mulakan semula spreed-webrtc
Sekiranya anda memasang Spreed via Snap, gunakan arahan di bawah:
sudo snap restart spreed-webrtc-snap
Langkah terakhir yang perlu anda lakukan ialah mengaktifkan port 8843 di Firewall anda. Ini kerana Coturn mendengar di port 8843. Jalankan perintah untuk firewall UFW.
sudo ufw membenarkan 8443 / tcp sudo ufw membenarkan 8443 / udp
Sekarang, dengan penyediaan Coturn dan Spreed-WebRTC, bahkan pengguna di belakang rangkaian NAT seharusnya dapat membuat panggilan Audio / Video dan bahkan mengadakan persidangan dalam talian.
Saya harap siaran ini memberi anda panduan yang jelas mengenai pemasangan Spreed WebRTC Server di Ubuntu. Beberapa konfigurasi seperti Menetapkan rekod DNS A agak mencabar bagi pemula, tetapi saya yakin ada artikel panduan di laman web yang anda beli domain anda. Sekiranya anda menghadapi sebarang masalah, sila berikan komen di bawah.