Mattermost adalah layanan pesan instan sumber terbuka. Muncul dalam versi gratis dan berbayar. Ini dapat dioperasikan baik di cloud atau di tempat sebagai aplikasi web. Di sini kita belajar cara menginstal dan mengkonfigurasi Mattermost di Rocky Linux.
Mattermost memungkinkan komunikasi antara individu dan kelompok. Komunikasi dapat berlangsung sebagai obrolan, panggilan video, atau panggilan telepon biasa. Pertukaran data dan tautan juga dimungkinkan. Mattermost dapat dilihat sebagai pesaing langsung MS Teams atau Slack dalam hal ini. Jika Anda adalah pengguna cloud seperti AWS, Google, Azure, dan gambar sumber terbuka pra-bangun lainnya, tersedia bersama mereka untuk menginstal dan menyebarkan Mattermost di cloud secepat mungkin. Setelah instalasi, antarmuka webnya dapat diakses menggunakan browser atau Aplikasi Seluler &Desktop di Windows, Linux, dan Mac, iOS, dan Android.
Di bawah nama Omnibus, paket Mattermost yang dirilis, tumpukan lengkap sistem pengiriman pesan gratis, dapat diinstal hanya dengan beberapa perintah. Selain Mattermost itu sendiri, administrator dapat mengatur PostgreSQL sebagai database, Nginx sebagai server web proxy, dan Certbot untuk menerbitkan dan memperbarui sertifikat SSL dalam waktu singkat. Namun, Omnibus hanya untuk Debian sistem berbasis dan tidak akan bekerja pada RHEL atau turunannya, maka kita harus mengatur Mattermost di Rocky Linux langkah demi langkah.
Langkah-Langkah Menginstal Mattermost di Rocky Linux 8
1. Jalankan pembaruan sistem
Pertama, perbarui paket yang ada yang tersedia di Rocky Linux Anda untuk memastikan semuanya dalam kondisi terbaru.
sudo dnf update
2. Instal Server MySQL di Rocky Linux
Jika Anda sudah menginstal server dengan database MySQL maka Anda dapat melewati langkah ini. Jika tidak, gunakan perintah yang diberikan di bawah ini untuk menginstal server MySQL di Rocky Linux untuk menyimpan data yang akan dihasilkan oleh Mattermost.
sudo dnf install mysql-server
Setelah penginstalan selesai, pastikan layanan MySQL diaktifkan dan berjalan…
sudo systemctl enable --now mysqld sudo systemctl start mysqld
Periksa status-
sudo systemctl status mysqld
Amankan instalasi server Database Anda.
sudo mysql_secure_installation
Saat kita menjalankan perintah di atas, ia akan meminta kita untuk menetapkan kata sandi untuk MySQL dan menghapus hal-hal lain yang membuat database rentan.
3. Buat Basis Data untuk Mattermost
Sekarang, mari masuk ke server MySQL kita dan buat Database untuk digunakan nanti dengan instalasi Mattermost.
Untuk masuk sebagai pengguna root, ketik-
mysql -u root -p
Buat Basis Data:
Ganti h2sdb dengan nama yang ingin Anda berikan ke database Anda.
CREATE DATABASE h2sdb;
Selanjutnya, buat pengguna database.
Di sini h2suser nama pengguna dan pass adalah kata sandi yang kami gunakan untuk itu. Anda dapat mengubah nilai ini…
CREATE USER 'h2suser'@'localhost' IDENTIFIED BY 'pass';
Tetapkan semua hak dari database ke pengguna yang dibuat.
grant all privileges on h2sdb.* to h2suser@localhost;
Muat ulang tabel hibah dan keluar-
flush privileges; exit;
4. Instal Server Mattermost di Rocky Linux 8
Sekarang, mari unduh versi terbaru server Mattermost untuk diinstal. Untuk itu, buka situs web resmi halaman unduh dan salin URL unduhan file tar terbaru dan gunakan dengan wget
perintah di terminal Rocky Linux Anda untuk mendapatkannya. Saat menulis artikel ini, versi terbaru yang tersedia adalah 5.34.2, jika sama dengan kasus Anda, Anda juga dapat menggunakan perintah di bawah ini.
sudo dnf instal wget -y
wget https://releases.mattermost.com/5.34.2/mattermost-5.34.2-linux-amd64.tar.gz
Ekstrak dan pindahkan file yang diunduh ke /opt direktori. Agar kami tidak menghapusnya secara tidak sengaja.
tar -xf mattermost-*-linux-amd64.tar.gz
sudo mv mattermost /opt
Buat direktori Data di folder yang disalin untuk menyimpan data-
sudo mkdir /opt/mattermost/data
5. Buat pengguna dan Grup
Untuk alasan keamanan, kami akan membuat pengguna dan grup terpisah untuk Mattermost di Rocky Linux. Ini akan memiliki hak untuk mengelola dan mengakses layanan Mattermost.
Tambahkan pengguna dan grup yang disebut paling penting –
sudo useradd --system --user-group mattermost
Beri pengguna yang baru dibuat hak untuk mengelola folder yang disalin di /opt direktori.
sudo chown -R mattermost:mattermost /opt/mattermost
Menyetel izin Baca dan tulis.
sudo chmod -R g+w /opt/mattermost
6. Siapkan driver database &sumber data di
Edit file konfigurasi dan ubah dua hal- Nama driver database dan Sumber Data-
sudo dnf install nano -y
sudo nano /opt/mattermost/config/config.json
Pengandar Basis Data:
Gunakan tombol panah keyboard Anda dan gulir ke bawah hingga Anda menemukan nilai DriverName Di bawah Pengaturan SQL. Secara default, ini akan disetel untuk PostgreSQL dan jika Anda menggunakan MySQL, ubah menjadi mysql
.
Setel “DriverName ” :”mysql ”
Selanjutnya, tepat di bawahnya, Anda akan menemukan Sumber Data baris yang-"postgres://mmuser:<mmuser-password>@<host-name-or-IP>:5432/mattermost?sslmode=disable&connect_timeout=10".
Ubah itu dengan yang di bawah ini dan juga ganti tebal teks
"mmuser:<mmuser-password>@tcp(<host-name-or-IP>:3306)/mattermost?charset=utf8mb4,utf8&readTimeout=30s&writeTimeout=30s"
Ganti –
mmuser
– Dengan pengguna database MySQL Anda
mmuser-password-
Ganti dengan kata sandi Database
<host-name-or-IP>
– Ketik Alamat Ip server basis data . Jika Anda menggunakan server yang sama untuk database Mattermost dan MySQL, lalu ganti dengan localhost
atau 127.0.0.1
mattermost
– Hapus itu ketik nama database Anda.
Contoh – Jika Anda menggunakan nilai database MySQL kami maka baris sumber data ini akan menjadi seperti ini
"h2suser:pass@tcp(127.0.0.1:3306)/h2sdb?charset=utf8mb4,utf8&readTimeout=30s&writeTimeout=30s"
Simpan dan tutup file dengan menekan Ctrrl+X , ketik y, dan tekan tombol Enter Kunci.
Uji semuanya berfungsi dengan baik
Beralih ke direktori yang paling penting dan mulai servernya-
cd /opt/mattermost sudo -u mattermost ./bin/mattermost
Anda akan melihat beberapa teks di mana server mendengarkan pada port 8065 yang menunjukkan bahwa itu berfungsi dan file konfigurasi valid. Untuk menghentikannya, tekan Ctrl+C.
7. Buat file layanan sistem Mattermost di Rocky Linux
Untuk menjalankan layanan platform perpesanan gratis ini agar berjalan di latar belakang yang dapat dihentikan atau mulai menggunakan perintah systemctl, mari buat file konfigurasi untuk hal yang sama.
sudo nano /etc/systemd/system/mattermost.service
Salin kode yang diberikan di bawah ini.
[Unit] Description=Mattermost After=syslog.target network.target mysqld.service [Service] Type=notify WorkingDirectory=/opt/mattermost User=mattermost ExecStart=/opt/mattermost/bin/mattermost PIDFile=/var/spool/mattermost/pid/master.pid TimeoutStartSec=3600 LimitNOFILE=49152 [Install] WantedBy=multi-user.target
Simpan file dengan menekan ctrl+x lalu ketik- Y dan tekan tombol Enter Kunci.
Jadikan file dapat dieksekusi-
sudo chmod 664 /etc/systemd/system/mattermost.service
Muat ulang layanan systemd-
sudo systemctl daemon-reload
8. Aktifkan dan Mulai Layanannya
Sekarang, aktifkan file layanan yang dibuat di atas untuk dijalankan dengan boot sistem dan juga memulai hal yang sama.
sudo systemctl enable mattermost.service
Mulailah-
sudo systemctl start mattermost.service
Periksa Status-
sudo systemctl status mattermost.service
Untuk keluar- Ctrl+C
9. Akses antarmuka web Mattermost
Jika Anda ingin mengakses server chatting ini menggunakan Ip-address, maka pertama buka nomor port 8065 di Rocky Linux Anda
sudo firewall-cmd --zone=public --add-port=8065/tcp
Sekarang, buka browser web Anda dan arahkan ke alamat IP server tempat Anda menginstal Mattermost. Misalnya- jika alamat IP server Anda adalah 192.168.0.108, maka URL-nya akan seperti ini-
192.168.0.108:8065
Anda akan menemukan ini-
Masukkan alamat email Anda dan hal-hal lain untuk membuat akun.
10:Gunakan domain yang sepenuhnya memenuhi syarat dan port 80/443
Ada dua cara untuk menggunakan FQDn, namun keduanya membutuhkan pemetaan domain terlebih dahulu dengan alamat IP server menggunakan server DNS.
Metode Pertama:
Jika Anda ingin menggunakan FQDn standar alih-alih alamat IP untuk mengakses server, maka pertama arahkan domain ke alamat IP layanan Mattermost dan setelah itu buka Konsol sistem dan pilih server web .
Di sana masukkan domain situs web atau URL yang harus Anda arahkan ke servernya. Dan jika Anda tidak ingin menggunakan nomor port 8065 dengan domain, ganti dengan 80 atau 445.
Setelah disetel, Uji URL Langsung. Jika berfungsi dengan baik, maka Anda dapat menggunakan opsi Let's Encrypt yang diberikan di sana untuk mendapatkan sertifikat SSL gratis.
Metode ke-2
Menggunakan Proksi Terbalik Nginx
Meskipun kami dapat langsung mengarahkan nama domain ke alamat IP server Anda untuk mengakses Mattermost menggunakan domain yang sepenuhnya memenuhi syarat, namun, untuk meningkatkan keamanan, mari kita instal dan Nginx sebagai proxy Terbalik.
sudo dnf install epel-release sudo dnf install nginx
Aktifkan dan mulai
sudo systemctl enable --now nginx sudo systemctl start nginx
Buat file konfigurasi
sudo nano /etc/nginx/conf.d/mattermost.conf
Rekatkan kode di bawah ini dan ganti mattermost.how2shout.com dengan nama domain yang ingin Anda gunakan…
upstream backend { server 127.0.0.1:8065; keepalive 32; } proxy_cache_path /var/cache/nginx levels=1:2 keys_zone=mattermost_cache:10m max_size=3g inactive=120m use_temp_path=off; server { listen 80; server_name mattermost.how2shout.com; location ~ /api/v[0-9]+/(users/)?websocket$ { proxy_set_header Upgrade $http_upgrade; proxy_set_header Connection "upgrade"; client_max_body_size 50M; 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_set_header X-Forwarded-Proto $scheme; proxy_set_header X-Frame-Options SAMEORIGIN; proxy_buffers 256 16k; proxy_buffer_size 16k; client_body_timeout 60; send_timeout 300; lingering_timeout 5; proxy_connect_timeout 90; proxy_send_timeout 300; proxy_read_timeout 90s; proxy_pass http://backend; } location / { client_max_body_size 50M; proxy_set_header Connection ""; 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_set_header X-Forwarded-Proto $scheme; proxy_set_header X-Frame-Options SAMEORIGIN; proxy_buffers 256 16k; proxy_buffer_size 16k; proxy_read_timeout 600s; proxy_cache mattermost_cache; proxy_cache_revalidate on; proxy_cache_min_uses 2; proxy_cache_use_stale timeout; proxy_cache_lock on; proxy_http_version 1.1; proxy_pass http://backend; } }
Simpan file- Ctrl+X , tekan Y, dan tekan Enter kunci.
Periksa file konfigurasi berfungsi tanpa kesalahan-
sudo nginx -t
Mulai Ulang Server Nginx
sudo systemctl restart nginx
Buka port 80 dan 443 di firewall server
sudo firewall-cmd --add-service={http,https} --permanent sudo firewall-cmd --reload
Sekarang, jika Anda telah mengarahkan domain Anda ke Server Ip-address maka Anda akan dapat mengaksesnya di browser. Namun, kesalahan sertifikat SSL akan ada di sana. Jadi, untuk menghapus instalasi itu menggunakan Let's Encrypt.
Untuk mengetahui lebih lanjut, lihat dokumentasi resmi Mattermost.