GNU/Linux >> Belajar Linux >  >> Ubuntu

Cara Menginstal Obrolan Sinapsis Matriks di Ubuntu 20.04 LTS

Matrix adalah ekosistem baru untuk komunikasi terdesentralisasi secara real-time untuk pesan instan federasi terbuka dan layanan VoIP. Ini menyediakan RESTful HTTP JSON API untuk membangun server obrolan terdistribusi dan federasi tanpa satu titik kontrol dan kegagalan dan menyediakan semua referensi untuk API.

Synapse adalah implementasi dari server rumah matriks yang dibuat oleh tim matriks dan ditulis dengan Python/Twisted. Dengan perangkat lunak ini, kita dapat menerapkan cara matriks untuk komunikasi terdesentralisasi, kita dapat membuat server rumah kita dan menyimpan semua informasi pribadi pengguna, riwayat obrolan, membuat ruang untuk digunakan sendiri, dll.

Dalam tutorial ini, kami akan menunjukkan cara menginstal dan mengkonfigurasi Synapse Matrix di Ubuntu 20.04. Kami akan menyiapkan Matrix Synapse dengan Nginx sebagai proxy terbalik dan mengamankan instalasi menggunakan SSL yang disediakan oleh Letsencrypt.

Prasyarat

Untuk panduan ini, kami akan menginstal Matrix Synapse pada Ubuntu 20.04 terbaru dengan 1Gb RAM, 25GB ruang disk kosong, dan 2CPU. Selain itu, Anda harus memiliki akses ke server Anda dengan hak akses root di dalamnya.

Apa yang akan kita lakukan?

  • Instal Sinapsis Matriks
  • Mengonfigurasi Sinapsis Matriks
  • Buat SSL Letsencrypt
  • Siapkan Nginx sebagai Proxy Terbalik
  • Siapkan UFW Firewall
  • Daftarkan Pengguna Baru
  • Pengujian

Langkah 1 - Instal Matrix Synapse

Pertama, kita akan menginstal Matrix Synapse ke Server Ubuntu 20.04 terbaru. Untuk melakukannya, kita perlu menambahkan kunci GPG dan repositori resmi Matrix Synapse.

Sebelum melangkah lebih jauh, instal beberapa dependensi paket menggunakan perintah apt di bawah ini.

sudo apt install -y lsb-release wget apt-transport-https

Setelah itu, tambahkan kunci GPG dan repositori Matrix Synapse untuk sistem berbasis Debian/Ubuntu.

sudo wget -qO /usr/share/keyrings/matrix-org-archive-keyring.gpg https://packages.matrix.org/debian/matrix-org-archive-keyring.gpg
echo "deb [signed-by=/usr/share/keyrings/matrix-org-archive-keyring.gpg] https://packages.matrix.org/debian/ $(lsb_release -cs) main" |
    sudo tee /etc/apt/sources.list.d/matrix-org.list

Sekarang perbarui semua daftar repositori paket dan instal paket Matrix Synapse.

sudo apt update
sudo apt install matrix-synapse-py3

Sekarang Anda akan diminta untuk konfigurasi nama domain.

Ketik nama domain Anda untuk instalasi Matrix Synapse dan pilih 'OK ' untuk melanjutkan.

Untuk 'Statistik Data Anonim', pilih 'Tidak '.

Dan instalasi Matrix Synapse telah selesai.

Selanjutnya, mulai layanan 'matrix-synapse' dan tambahkan ke boot sistem.

systemctl start matrix-synapse
systemctl enable matrix-synapse

Matrix Synapse aktif dan berjalan, periksa menggunakan perintah berikut.

systemctl status matrix-synapse
ss -plnt

Di bawah ini adalah hasil yang akan Anda dapatkan.

Akibatnya, Synapse Matrix berjalan dengan port TCP default '8008' di Ubuntu 20.04.

Langkah 2 - Konfigurasikan Sinaps Matriks

Pada langkah ini, kita akan mengonfigurasi 'bind-addresses' untuk sinapsis Matrix, menonaktifkan pendaftaran di server kita, dan menyiapkan rahasia bersama pendaftaran.

Sebelum melangkah lebih jauh, buat rahasia pendaftaran Matrix Synapse menggunakan perintah berikut.

cat /dev/urandom | tr -dc 'a-zA-Z0-9' | fold -w 32 | head -n 1

Sekarang Anda akan mendapatkan kunci acak, salin kuncinya, dan simpan di catatan Anda.

GH7AP4Zcthz02Cmg58sqUgonm7zlwH0f

Selanjutnya, masuk ke direktori '/etc/matrix-synapse' dan edit konfigurasi 'homeserver.yaml' menggunakan editor vim.

cd /etc/matrix-synapse/
vim homeserver.yaml

Pindah ke bagian 'listeners' dan ubah nilai 'bind-addresses' dengan alamat IP lokal seperti di bawah ini.

listeners:

  - port: 8008
    tls: false
    type: http
    x_forwarded: true
    bind_addresses: ['127.0.0.1']

    resources:
      - names: [client, federation]
        compress: false

Sekarang nonaktifkan Matrix Synapse jika Anda menjalankan node hanya untuk Anda.

enable_registration: false

Ubah 'registration_shared_secret' dengan frasa sandi acak yang dibuat di atas.

registration_shared_secret: "GH7AP4Zcthz02Cmg58sqUgonm7zlwH0f"

Simpan dan tutup.

Selanjutnya, restart layanan Matrix Synapse untuk menerapkan konfigurasi baru.

systemctl restart matrix-synapse

Periksa layanan menggunakan perintah berikut.

ss -plnt
systemctl status matrix-synapse

Di bawah ini adalah hasil yang akan Anda dapatkan.

Akibatnya, layanan Matrix Synapse aktif dan berjalan dengan konfigurasi baru.

Langkah 3 - Buat SSL Letsencrypt

Pada langkah ini, kami akan membuat SSL Letsencrypt menggunakan alat certbot. Matrix Synapse akan berjalan di bawah koneksi HTTPS yang aman menggunakan sertifikat SSL yang disediakan oleh Letsencrypt.

Instal alat certbot menggunakan perintah apt di bawah ini.

sudo apt install certbot -y

Setelah itu, buat sertifikat SSL baru menggunakan perintah certbot di bawah ini, dan pastikan untuk mengubah alamat email dan nama domain Anda sendiri.

certbot certonly --rsa-key-size 2048 --standalone --agree-tos --no-eff-email --email [email protected] -d hakase-labs.io

Setelah semuanya selesai, sertifikat SSL Anda akan tersedia di direktori '/etc/letsencrypt/live/domain.com/'.

ls -lah /etc/letsencrypt/live/domain.com/

'fullchain.pem' adalah kunci publik, dan 'privkey.pem' adalah kunci pribadi.

Langkah 4 - Siapkan Nginx sebagai Proxy Terbalik

Untuk tutorial ini, kita akan menjalankan Matrix Synapse di bawah proxy Nginx Reverse. Dan untuk langkah ini, kita akan menginstal paket Nginx dan mengaturnya sebagai Proxy Terbalik.

Server web Nginx akan berjalan pada 3 port, port HTTP default '80', port HTTPS aman '443', dan port TCP '8448' yang akan digunakan untuk federasi Matrix Synapse.

Instal paket Nginx menggunakan perintah apt di bawah ini.

sudo apt install nginx -y

Setelah semua instalasi selesai, buka direktori '/etc/nginx/sites-available' dan buat konfigurasi virtualhost baru bernama 'matrix' menggunakan editor vim.

cd /etc/nginx/sites-available/
vim matrix

Ubah nama domain dan jalur sertifikat SSL dengan milik Anda, rekatkan konfigurasi ke dalamnya.

server {
    listen 80;
    server_name hakase-labs.io;
    return 301 https://$host$request_uri;
}

server {
    listen 443 ssl;
    server_name hakase-labs.io;

    ssl_certificate /etc/letsencrypt/live/hakase-labs.io/fullchain.pem;
    ssl_certificate_key /etc/letsencrypt/live/hakase-labs.io/privkey.pem;

    location /_matrix {
        proxy_pass http://localhost:8008;
        proxy_set_header X-Forwarded-For $remote_addr;
        # Nginx by default only allows file uploads up to 1M in size
        # Increase client_max_body_size to match max_upload_size defined in homeserver.yaml
        client_max_body_size 10M;
    }
}

# This is used for Matrix Federation
# which is using default TCP port '8448'
server {
    listen 8448 ssl;
    server_name hakase-labs.io;

    ssl_certificate /etc/letsencrypt/live/hakase-labs.io/fullchain.pem;
    ssl_certificate_key /etc/letsencrypt/live/hakase-labs.io/privkey.pem;

    location / {
        proxy_pass http://localhost:8008;
        proxy_set_header X-Forwarded-For $remote_addr;
    }
}

Simpan dan tutup.

Selanjutnya, aktifkan virtualhost 'matriks' dan uji konfigurasi Nginx. Juga, pastikan tidak ada kesalahan.

ln -s /etc/nginx/sites-available/matrix /etc/nginx/sites-enabled/
nginx -t

Sekarang restart layanan Nginx dan tambahkan ke boot sistem.

systemctl restart nginx
systemctl enable nginx

Setelah itu, periksa layanan Nginx menggunakan perintah di bawah ini.

ss -plnt
systemctl status nginx

Di bawah ini adalah hasil yang akan Anda dapatkan.

Akibatnya, layanan Nginx aktif dan berjalan di Ubuntu 20.04 dengan tiga port berbeda, port HTTP default 80 yang akan secara otomatis dialihkan ke port HTTPS aman, dan port '8448' yang akan digunakan untuk Matrix Synapse Federation.

Langkah 5 - Firewall UFW

Untuk tutorial ini, kita akan menjalankan Matrix Synapse di Ubuntu 20.04 dengan firewall UFW diaktifkan.

Tambahkan ssh, http, https, dan port TCP '8448' ke firewall UFW menggunakan perintah di bawah ini.

for svc in ssh http https 8448
do
ufw allow $svc
done

Setelah itu, jalankan dan aktifkan firewall UFW.

ufw enable

Ketik 'y ' untuk mengonfirmasi dan firewall UFW aktif dan berjalan, periksa semua aturan yang tersedia di firewall UFW menggunakan perintah di bawah ini.

ufw status numbered

Di bawah ini adalah hasil yang akan Anda dapatkan.

Hasilnya, konfigurasi firewall UFW telah selesai.

Langkah 6 - Daftarkan Pengguna

Pada tahap ini, instalasi dan konfigurasi server rumah sinapsis matriks selesai. Dan pada langkah ini, kami akan menunjukkan cara menambahkan pengguna matriks baru dari server baris perintah.

Untuk membuat pengguna matriks baru, jalankan perintah di bawah ini.

sudo register_new_matrix_user -c /etc/matrix-synapse/homeserver.yaml http://localhost:8008

Sekarang ketik nama pengguna dan kata sandi untuk pengguna Anda, untuk menjadikan pengguna sebagai administrator, ketik 'ya'.

New user localpart [root]: changbin
Password:
Confirm password:
Make admin [no]:
Sending registration request...
Success!

Hasilnya, pengguna Matrix baru telah dibuat.

Langkah 7 - Pengujian

Untuk langkah ini, kami akan menguji instalasi server Matrix Synapse kami.

- Menguji Federasi Sinaps Matriks

Buka URL Penguji Federasi Sinapsis Matrix di bawah ini.

https://federationtester.matrix.org/

Sekarang ketik nama domain Matrix Synapse Anda dan klik 'Go ', dan Anda akan mendapatkan hasil sukses seperti di bawah ini.

Seperti yang bisa dilihat, Matrix Synapse Federation bekerja melalui port '8448'.

- Uji Login Matriks dengan Pengguna dan Kata Sandi

Buka klien Matrix berbasis web yang disebut 'riot.im' sebagai URL di bawah ini.

https://riot.im/app/

Klik 'Masuk ' dan Anda dapat menggunakan server Matrix Synapse kustom Anda.

Ketik nama domain Anda dan klik 'Berikutnya '.

Sekarang ketik nama pengguna dan kata sandi Anda, lalu klik 'Masuk '.

Anda akan ditanyai pertanyaan keamanan tambahan.

Setelah Anda masuk, Anda akan mendapatkan halaman berikut.

Hasilnya, penginstalan Matrix Synapse dengan proksi terbalik Nginx dan Federasi yang diaktifkan di Ubuntu 20.04 telah berhasil diselesaikan.


Ubuntu
  1. Cara Menginstal Docker di Ubuntu 22.04 / 20.04 LTS

  2. Cara Menginstal PlayOnLinux di Ubuntu 20.04 LTS

  3. Cara Menginstal MariaDB di Ubuntu 20.04 LTS

  1. Cara Menginstal Ansible di Ubuntu 20.04 LTS / 21.04

  2. Cara Menginstal Minikube di Ubuntu 20.04 LTS / 21.04

  3. Cara Menginstal Obrolan Sinapsis Matriks di Ubuntu 18.04 LTS

  1. Cara Menginstal Spotify di Ubuntu 18.04 LTS

  2. Cara Menginstal Prometheus di Ubuntu 18.04 LTS

  3. Cara Menginstal Memcached di Ubuntu 18.04 LTS