Buat Server Obrolan Menggunakan Matriks Sinapsis dan Kerusuhan di CentOS 7

Matrix adalah protokol komunikasi standar terbuka untuk komunikasi real-time yang terdesentralisasi. Matrix diimplementasikan sebagai server rumah yang didistribusikan melalui internet; karenanya tidak ada titik kontrol atau kegagalan tunggal. Matrix menyediakan RESTful HTTP API untuk membuat dan mengelola server obrolan terdistribusi yang mencakup mengirim dan menerima pesan, mengundang dan mengelola anggota ruang obrolan, memelihara akun pengguna, dan menyediakan fitur obrolan canggih seperti VoIP dan panggilan Video, dll. Matrix juga menetapkan sinkronisasi aman antara server rumah yang didistribusikan di seluruh dunia.

Synapse adalah implementasi dari server rumah Matrix yang ditulis oleh tim Matrix. Ekosistem Matrix terdiri dari jaringan banyak server rumah gabungan yang didistribusikan di seluruh dunia. Seorang pengguna Matrix menggunakan klien obrolan untuk terhubung ke server rumah, yang pada gilirannya terhubung ke jaringan Matrix. Homeserver menyimpan riwayat obrolan dan informasi masuk dari pengguna tersebut.

Prasyarat

Dalam tutorial ini, kita akan menggunakan matrix.example.comnama domain yang digunakan untuk Matrix Synapse. Ganti semua kemunculan matrix.example.comdengan nama domain Anda yang sebenarnya yang ingin Anda gunakan untuk server rumah Synapse Anda.

Perbarui sistem basis Anda menggunakan panduan Cara Memperbarui CentOS 7 . Setelah sistem Anda diperbarui, lanjutkan untuk menginstal Python.

Instal Alat Pengembangan

Matriks Synapse membutuhkan Python 2.7 untuk bekerja. Python 2.7 telah diinstal sebelumnya di semua instance server CentOS. Anda dapat memeriksa versi Python yang diinstal.

python -V

Anda harus mendapatkan hasil yang serupa.

[user@vultr ~]$ python -V
Python 2.7.5

Mengubah versi default Python dapat merusak pengelola repositori YUM. Namun, jika Anda menginginkan versi Python terbaru, Anda dapat membuat instalasi alternatif, tanpa mengganti Python default.

Instal paket dalam Development toolsgrup yang diperlukan untuk mengkompilasi file installer.

sudo yum groupinstall -y "Development tools"

Instal beberapa dependensi yang diperlukan.

sudo yum -y install libtiff-devel libjpeg-devel libzip-devel freetype-devel lcms2-devel libwebp-devel tcl-devel tk-devel redhat-rpm-config python-virtualenv libffi-devel openssl-devel 

Instal Python pip. Pip adalah manajer dependensi untuk paket Python.

wget https://bootstrap.pypa.io/get-pip.py
sudo python get-pip.py

Instal Synapse

Buat lingkungan virtual untuk aplikasi Synapse Anda. Lingkungan virtual Python digunakan untuk membuat lingkungan virtual yang terisolasi untuk proyek Python. Lingkungan virtual berisi direktori pemasangannya sendiri dan tidak berbagi perpustakaan dengan lingkungan virtual global dan lainnya.

sudo virtualenv -p python2.7 /opt/synapse

Berikan kepemilikan direktori kepada pengguna saat ini.

sudo chown -R $USER:$USER /opt/synapse/

Sekarang aktifkan lingkungan virtual.

source /opt/synapse/bin/activate

Pastikan Anda memiliki versi terbaru pipdan setuptools.

pip install --upgrade pip 
pip install --upgrade setuptools

Instal versi terbaru Synapse menggunakan pip.

pip install https://github.com/matrix-org/synapse/tarball/master

Perintah di atas akan memakan waktu untuk dieksekusi karena ia menarik dan menginstal versi terbaru dari Synapse dan semua dependensi dari repositori Github.

Menginstal dan Mengkonfigurasi PostgreSQL

Synapse menggunakan SQLite sebagai database default. SQLite menyimpan data dalam database yang disimpan sebagai file flat pada disk. Menggunakan SQLite sangat sederhana, tetapi tidak direkomendasikan untuk produksi karena sangat lambat dibandingkan dengan PostgreSQL.

PostgreSQL adalah sistem database relasional objek. Anda perlu menambahkan repositori PostgreSQL di sistem Anda, karena aplikasi tidak tersedia di repositori YUM default.

sudo rpm -Uvh https://download.postgresql.org/pub/repos/yum/9.6/redhat/rhel-7-x86_64/pgdg-centos96-9.6-3.noarch.rpm

Instal server database PostgreSQL.

sudo yum -y install postgresql96-server postgresql96-contrib

Inisialisasi basis data.

sudo /usr/pgsql-9.6/bin/postgresql96-setup initdb

Edit /var/lib/pgsql/9.6/data/pg_hba.confuntuk mengaktifkan otentikasi berbasis MD5.

sudo nano /var/lib/pgsql/9.6/data/pg_hba.conf

Temukan baris berikut dan ubah peerke trustdan idnetke md5.

# TYPE  DATABASE        USER            ADDRESS                 METHOD

# "local" is for Unix domain socket connections only
local   all             all                                     peer
# IPv4 local connections:
host    all             all             127.0.0.1/32            idnet
# IPv6 local connections:
host    all             all             ::1/128                 idnet

Setelah diperbarui, konfigurasi akan terlihat seperti ini.

# TYPE  DATABASE        USER            ADDRESS                 METHOD

# "local" is for Unix domain socket connections only
local   all             all                                     trust
# IPv4 local connections:
host    all             all             127.0.0.1/32            md5
# IPv6 local connections:
host    all             all             ::1/128                 md5

Mulai server PostgreSQL dan aktifkan untuk memulai secara otomatis saat boot.

sudo systemctl start postgresql-9.6
sudo systemctl enable postgresql-9.6

Ubah kata sandi untuk pengguna PostgreSQL default.

sudo passwd postgres

Gabung.

sudo su - postgres

Buat pengguna PostgreSQL baru untuk Synapse.

createuser synapse

PostgreSQL menyediakan psqlshell untuk menjalankan query pada database. Beralih ke shell PostgreSQL dengan menjalankan.

psql

Tetapkan kata sandi untuk pengguna yang baru dibuat untuk basis data Synapse.

ALTER USER synapse WITH ENCRYPTED password 'DBPassword';

Ganti DBPassworddengan kata sandi yang kuat dan catat karena kami akan menggunakan kata sandi nanti. Buat database baru untuk database PostgreSQL.

CREATE DATABASE synapse ENCODING 'UTF8' LC_COLLATE='C' LC_CTYPE='C' template=template0 OWNER synapse;

Keluar dari psqlshell.

\q

Beralih ke sudopengguna dari postgrespengguna saat ini .

exit

Anda juga perlu menginstal paket yang diperlukan untuk Synapse untuk berkomunikasi dengan server database PostgreSQL.

sudo yum -y install postgresql-devel libpqxx-devel.x86_64
source /opt/synapse/bin/activate
pip install psycopg2

Mengkonfigurasi Sinaps

Synapse memerlukan file konfigurasi sebelum dapat dimulai. File konfigurasi menyimpan pengaturan server. Beralih ke lingkungan virtual dan hasilkan konfigurasi untuk Synapse.

source /opt/synapse/bin/activate
cd /opt/synapse
python -m synapse.app.homeserver --server-name matrix.example.com --config-path homeserver.yaml --generate-config --report-stats=yes

Ganti matrix.example.comdengan nama domain Anda yang sebenarnya dan pastikan bahwa nama server dapat diatasi ke alamat IP instance Vultr Anda. Berikan --report-stats=yesjika Anda ingin server membuat laporan, berikan --report-stats=nountuk menonaktifkan pembuatan laporan dan statistik.

Anda akan melihat output yang serupa.

(synapse)[user@vultr synapse]$ python -m synapse.app.homeserver --server-name matrix.example.com --config-path homeserver.yaml --generate-config --report-stats=yes
A config file has been generated in 'homeserver.yaml' for server name 'matrix.example.com' with corresponding SSL keys and self-signed certificates. Please review this file and customise it to your needs.
If this server name is incorrect, you will need to regenerate the SSL certificates

Secara default, homeserver.yamlini dikonfigurasi untuk menggunakan database SQLite. Kita perlu memodifikasinya untuk menggunakan database PostgreSQL yang telah kita buat sebelumnya.

Edit yang baru dibuat homeserver.yaml.

nano homeserver.yaml

Temukan konfigurasi basis data yang ada yang menggunakan SQLite3. Komentari baris seperti yang ditunjukkan di bawah ini. Juga, tambahkan konfigurasi database baru untuk PostgreSQL. Pastikan Anda menggunakan kredensial database yang benar.

# Database configuration
#database:
  # The database engine name
  #name: "sqlite3"
  # Arguments to pass to the engine
  #args:
    # Path to the database
    #database: "/opt/synapse/homeserver.db"


database:
    name: psycopg2
    args:
        user: synapse
        password: DBPassword
        database: synapse
        host: localhost
        cp_min: 5
        cp_max: 10

Registrasi pengguna baru dari antarmuka web dinonaktifkan secara default. Untuk mengaktifkan pendaftaran, Anda dapat mengatur enable_registrationke True. Anda juga dapat mengatur kunci pendaftaran rahasia, yang memungkinkan siapa pun untuk mendaftar yang memiliki kunci rahasia, bahkan jika pendaftaran dinonaktifkan.

enable_registration: False

registration_shared_secret: "YPPqCPYqCQ-Rj,ws~FfeLS@maRV9vz5MnnV^r8~pP.Q6yNBDG;"

Simpan file dan keluar dari editor. Sekarang Anda harus mendaftarkan pengguna pertama Anda. Sebelum Anda dapat mendaftarkan pengguna baru, Anda harus memulai aplikasi terlebih dahulu.

source /opt/synapse/bin/activate && cd /opt/synapse
synctl start

Anda harus melihat baris berikut.

2017-09-05 11:10:41,921 - twisted - 131 - INFO - - SynapseSite starting on 8008
2017-09-05 11:10:41,921 - twisted - 131 - INFO - - Starting factory <synapse.http.site.SynapseSite instance at 0x44bbc68>
2017-09-05 11:10:41,921 - synapse.app.homeserver - 201 - INFO - - Synapse now listening on port 8008
2017-09-05 11:10:41,922 - synapse.app.homeserver - 442 - INFO - - Scheduling stats reporting for 3 hour intervals
started synapse.app.homeserver('homeserver.yaml')

Daftarkan pengguna Matrix baru.

register_new_matrix_user -c homeserver.yaml https://localhost:8448

Anda harus melihat yang berikut ini.

(synapse)[user@vultr synapse]$ register_new_matrix_user -c homeserver.yaml https://localhost:8448
New user localpart [user]: admin
Password:
Confirm password:
Make admin [no]: yes
Sending registration request...
Success.

Terakhir, sebelum Anda dapat menggunakan Homeserver, Anda harus mengizinkan port 8448 melalui Firewall. Port 8448digunakan sebagai port federasi yang diamankan. Pemilik rumah menggunakan port ini untuk berkomunikasi satu sama lain dengan aman. Anda juga dapat menggunakan klien obrolan web Matrix bawaan melalui port ini.

sudo firewall-cmd --permanent --zone=public --add-port=8448/tcp
sudo firewall-cmd --reload

Sekarang Anda dapat masuk ke klien obrolan web Matrix dengan membuka https://matrix.example.com:8448peramban favorit Anda. Anda akan melihat peringatan tentang sertifikat SSL karena sertifikat yang digunakan ditandatangani sendiri. Kami tidak akan menggunakan klien obrolan web ini karena sudah usang dan tidak terawat lagi. Coba saja periksa apakah Anda dapat masuk menggunakan akun pengguna yang baru saja Anda buat.

Menyiapkan Let's Encrypt Certificates

Alih-alih menggunakan sertifikat yang ditandatangani sendiri untuk mengamankan port federasi, kita dapat menggunakan Let's Encrypt SSL gratis. Let's Encrypt SSL gratis dapat diperoleh melalui klien resmi Let's Encrypt yang disebut Certbot.

Instal Certbot.

sudo yum -y install certbot

Sesuaikan pengaturan firewall Anda untuk memungkinkan standar HTTPdan HTTPSport melalui firewall. Certbot perlu membuat HTTPkoneksi untuk memverifikasi otoritas domain.

sudo firewall-cmd --permanent --zone=public --add-service=http
sudo firewall-cmd --permanent --zone=public --add-service=https
sudo firewall-cmd --reload

Untuk mendapatkan sertifikat dari Let's Encrypt CA, Anda harus memastikan bahwa domain yang Anda inginkan untuk menghasilkan sertifikat diarahkan ke server. Jika tidak, maka buat perubahan yang diperlukan pada catatan DNS domain Anda dan tunggu sampai DNS menyebar sebelum membuat permintaan sertifikat lagi. Certbot memeriksa otoritas domain sebelum memberikan sertifikat.

Sekarang gunakan server web bawaan di Certbot untuk menghasilkan sertifikat untuk domain Anda.

sudo certbot certonly --standalone -d matrix.example.com

Sertifikat yang dihasilkan cenderung disimpan di /etc/letsencrypt/live/matrix.example.com/. Sertifikat SSL akan disimpan sebagai fullchain.pemdan kunci pribadi akan disimpan sebagai privkey.pem.

Salin sertifikat.

sudo cp /etc/letsencrypt/live/matrix.example.com/fullchain.pem /opt/synapse/letsencrypt-fullchain.pem

sudo cp /etc/letsencrypt/live/matrix.example.com/privkey.pem /opt/synapse/letsencrypt-privkey.pem

Anda harus mengubah jalur ke sertifikat dan kunci dari homeserver.yamlfile. Edit konfigurasinya.

nano /opt/synapse/homeserver.yaml

Temukan baris berikut dan ubah jalurnya.

tls_certificate_path: "/opt/synapse/letsencrypt-fullchain.pem"

# PEM encoded private key for TLS
tls_private_key_path: "/opt/synapse/letsencrypt-privkey.pem"

Simpan file dan keluar dari editor. Mulai ulang server Synapse agar perubahan dapat diterapkan.

source /opt/synapse/bin/activate && cd /opt/synapse
synctl restart

Enkripsi sertifikat Let's akan kedaluwarsa dalam 90 hari, jadi disarankan agar Anda mengatur pembaruan otomatis untuk sertifikat menggunakan pekerjaan cron. Cron adalah layanan sistem yang digunakan untuk menjalankan tugas-tugas berkala.

Buat skrip baru untuk memperbarui sertifikat dan menyalin sertifikat yang diperbarui ke direktori Synapse.

sudo nano /opt/renew-letsencypt.sh  

Mengisi file.

#!/bin/sh

/usr/bin/certbot renew --quiet --nginx
cp /etc/letsencrypt/live/matrix.example.com/fullchain.pem /opt/synapse/letsencrypt-fullchain.pem
cp /etc/letsencrypt/live/matrix.example.com/privkey.pem /opt/synapse/letsencrypt-privkey.pem

Berikan izin eksekusi.

sudo chmod +x /opt/renew-letsencypt.sh

Buka file tugas cron.

sudo crontab -e

Tambahkan baris berikut di akhir file.

30 5 * * 1 /opt/renew-letsencypt.sh

Pekerjaan cron di atas akan berjalan setiap hari Senin jam 5:30 pagi. Jika sertifikat itu akan kedaluwarsa, maka secara otomatis akan memperbaruinya.

Sekarang kamu bisa berkunjung https://matrix.example.com:8448. Anda akan melihat bahwa tidak ada peringatan SSL sebelum koneksi.

Setup Nginx With Let's Encrypt

Terlepas dari port federasi yang diamankan 8448, Synapse juga mendengarkan port klien yang tidak aman 8008. Kami sekarang akan mengkonfigurasi Nginx sebagai proksi terbalik ke aplikasi Synapse.

sudo yum -y install nginx

Buat file konfigurasi baru.

sudo nano /etc/nginx/conf.d/synapse.conf

Isi file dengan konten berikut.

server {
    listen 80;
    server_name matrix.example.com;
    return 301 https://$host$request_uri;
}
server {

    listen 443;
    server_name matrix.example.com;

    ssl_certificate           /etc/letsencrypt/live/matrix.example.com/fullchain.pem;
    ssl_certificate_key       /etc/letsencrypt/live/matrix.example.com/privkey.pem;

    ssl on;
    ssl_session_cache  builtin:1000  shared:SSL:10m;
    ssl_protocols  TLSv1 TLSv1.1 TLSv1.2;
    ssl_ciphers HIGH:!aNULL:!eNULL:!EXPORT:!CAMELLIA:!DES:!MD5:!PSK:!RC4;
    ssl_prefer_server_ciphers on;

    access_log    /var/log/nginx/synapse.access.log;

    location /_matrix {

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

    }
  }

Mulai ulang dan aktifkan Nginx untuk mulai secara otomatis saat boot.

sudo systemctl restart nginx
sudo systemctl enable nginx

Terakhir, Anda dapat memverifikasi apakah Synapse dapat diakses melalui proksi terbalik.

curl https://matrix.example.com/_matrix/key/v2/server/auto

Anda harus mendapatkan hasil yang serupa.

[user@vultr ~]$ curl https://matrix.example.com/_matrix/key/v2/server/auto
{"old_verify_keys":{},"server_name":"matrix.example.com","signatures":{"matrix.example.com":{"ed25519:a_ffMf":"T/Uq/UN5vyc4w7v0azALjPIJeZx1vQ+HC6ohUGkTSqiFI4WI/ojGpb2763arwSSQLr/tP/2diCi1KLU2DEnOCQ"}},"tls_fingerprints":[{"sha256":"eorhQj/kubI2PEQZyBZvGV7K1x3EcQ7j/AO2MtZMplw"}],"valid_until_ts":1504876080512,"verify_keys":{"ed25519:a_ffMf":{"key":"Gc1hxkpPmQv71Cvjyk+uzR5UtrpmgV/UwlsLtosawEs"}}}

Menyiapkan Layanan Systemd

Disarankan untuk menggunakan layanan Systemd untuk mengelola proses server Synapse. Menggunakan Systemd akan memastikan bahwa server secara otomatis dimulai pada startup dan kegagalan sistem.

Buat file layanan Systemd baru.

sudo nano /etc/systemd/system/matrix-synapse.service

Mengisi file.

[Unit]
Description=Matrix Synapse service
After=network.target

[Service]
Type=forking
WorkingDirectory=/opt/synapse/
ExecStart=/opt/synapse/bin/synctl start
ExecStop=/opt/synapse/bin/synctl stop
ExecReload=/opt/synapse/bin/synctl restart
Restart=always
StandardOutput=syslog
StandardError=syslog
SyslogIdentifier=synapse

[Install]
WantedBy=multi-user.target

Sekarang Anda dapat dengan cepat memulai server Synapse.

sudo systemctl start matrix-synapse

Untuk menghentikan atau memulai ulang server menggunakan perintah berikut.

sudo systemctl stop matrix-synapse
sudo systemctl restart matrix-synapse

Anda dapat memeriksa status layanan.

sudo systemctl status matrix-synapse

Menggunakan Kerusuhan

Server Matriks Synapse sekarang diinstal dan dikonfigurasi pada server Anda. Karena klien web bawaan untuk Matrix sudah ketinggalan zaman, Anda dapat memilih dari beragam aplikasi klien yang tersedia untuk obrolan. Riot adalah klien obrolan paling populer, yang tersedia di hampir semua platform. Anda dapat menggunakan versi klien obrolan web Riot yang di-host, atau Anda juga dapat menghosting salinannya di server Anda sendiri. Selain itu, Anda juga dapat menggunakan klien obrolan desktop dan seluler Riot, yang tersedia untuk Windows, Mac, Linux, iOS, dan Android.

Jika Anda ingin meng-host salinan klien web Riot Anda sendiri, Anda dapat membaca lebih lanjut untuk instruksi menginstal Riot di server Anda. Untuk klien yang dihosting, desktop dan seluler, Anda dapat menggunakan nama pengguna dan kata sandi Anda untuk login langsung ke server rumah Anda. Cukup pilih my Matrix IDdari menu dropdown Sign Inopsi dan berikan nama pengguna dan kata sandi yang telah Anda buat selama pendaftaran pengguna baru. Klik pada Custom serverdan gunakan nama domain dari instance Synapse Anda. Karena kita sudah mengkonfigurasi Nginx, kita bisa menggunakan https://matrix.example.comsebagai server Home dan https://matrix.orgsebagai URL server Identity.

Contoh Login Kerusuhan

Setup Kerusuhan di Server Anda Sendiri.

Kerusuhan juga merupakan open source dan bebas untuk di-host di server Anda sendiri. Itu tidak memerlukan database atau dependensi. Karena kita sudah memiliki server Nginx yang berjalan, kita dapat menyimpannya di server yang sama.

Domain atau subdomain yang Anda gunakan untuk Sinaps dan Kerusuhan harus berbeda untuk menghindari skrip lintas situs. Namun, Anda dapat menggunakan dua subdomain dari domain yang sama. Dalam tutorial ini, kita akan menggunakan riot.example.comsebagai domain untuk aplikasi Riot. Ganti semua kemunculan riot.example.comdengan domain atau subdomain Anda yang sebenarnya untuk aplikasi Riot.

Unduh Kerusuhan di server Anda.

cd /opt/
sudo wget https://github.com/vector-im/riot-web/releases/download/v0.12.3/riot-v0.12.3.tar.gz

Anda selalu dapat menemukan tautan ke versi terbaru di Riot's Github .

Ekstrak arsipnya.

sudo tar -xzf riot-v*.tar.gz

Ganti nama direktori untuk kenyamanan penanganan.

sudo mv riot-v*/ riot/

Karena kami telah menginstal Certbot, kami dapat langsung menghasilkan sertifikat. Pastikan bahwa domain atau subdomain yang Anda gunakan diarahkan ke server.

sudo systemctl stop nginx
sudo certbot certonly --standalone -d riot.example.com

Sertifikat yang dihasilkan cenderung disimpan di /etc/letsencrypt/live/riot.example.com/direktori.

Buat host virtual untuk aplikasi Kerusuhan.

sudo nano /etc/nginx/conf.d/riot.conf

Mengisi file.

server {
    listen 80;
    server_name riot.example.com;
    return 301 https://$host$request_uri;
}
server {

    listen 443;
    server_name riot.example.com;

    ssl_certificate           /etc/letsencrypt/live/riot.example.com/fullchain.pem;
    ssl_certificate_key       /etc/letsencrypt/live/riot.example.com/privkey.pem;

    ssl on;
    ssl_session_cache  builtin:1000  shared:SSL:10m;
    ssl_protocols  TLSv1 TLSv1.1 TLSv1.2;
    ssl_ciphers HIGH:!aNULL:!eNULL:!EXPORT:!CAMELLIA:!DES:!MD5:!PSK:!RC4;
    ssl_prefer_server_ciphers on;

    root /opt/riot;
    index index.html index.htm;

    location / {
            try_files $uri $uri/ =404;
    }

    access_log    /var/log/nginx/riot.access.log;

  }

Salin file konfigurasi sampel.

sudo cp /opt/riot/config.sample.json /opt/riot/config.json

Sekarang edit file konfigurasi untuk membuat beberapa perubahan.

sudo nano /opt/riot/config.json

Temukan baris berikut.

"default_hs_url": "https://matrix.org",
"default_is_url": "https://vector.im",

Ganti nilai URL server rumah default dengan URL server Matrix Anda. Untuk URL server identitas, Anda dapat menggunakan opsi default, atau Anda juga dapat memberikan nilainya ke server identitas Matrix, yaitu https://matrix.org.

"default_hs_url": "https://matrix.example.com",
"default_is_url": "https://matrix.org",

Simpan file dan keluar. Berikan kepemilikan file kepada pengguna Nginx.

sudo chown -R nginx:nginx /opt/riot/

Mulai ulang Nginx.

sudo systemctl restart nginx

Anda dapat mengakses Kerusuhan pada https://riot.example.com. Anda sekarang dapat masuk menggunakan nama pengguna dan kata sandi yang telah Anda buat sebelumnya. Anda dapat terhubung menggunakan server default karena kami telah mengubah server Matrix default untuk aplikasi kami.

Anda sekarang memiliki server rumahan Matriks Synapse dan berjalan. Anda juga memiliki salinan Riot yang di-host, yang dapat Anda gunakan untuk mengirim pesan ke orang lain menggunakan ID Matrix, email atau nomor ponsel mereka. Mulailah dengan membuat ruang obrolan di server Anda dan undang teman Anda di Matrix untuk bergabung dengan ruang obrolan yang telah Anda buat.



Leave a Comment

Cara Memasang Graylog Server pada CentOS 7

Cara Memasang Graylog Server pada CentOS 7

Menggunakan Sistem yang Berbeda? Graylog server adalah perangkat lunak manajemen log sumber terbuka siap pakai perusahaan. Ia mengumpulkan log dari berbagai sumber dan menganalisis

Atur Akun Pengguna khusus SFTP di CentOS 7

Atur Akun Pengguna khusus SFTP di CentOS 7

Pada kesempatan tertentu, Administrator Sistem mungkin perlu membuat akun pengguna dan membatasi akses mereka untuk hanya mengelola file mereka sendiri melalui sFTP, tetapi tidak

Cara Memasang Chamilo 1.11.8 pada CentOS 7

Cara Memasang Chamilo 1.11.8 pada CentOS 7

Menggunakan Sistem yang Berbeda? Chamilo adalah sistem manajemen pembelajaran (LMS) gratis dan open source yang banyak digunakan untuk pendidikan online dan kolaborasi tim

Menginstal Komunitas Odoo 9 di CentOS 7

Menginstal Komunitas Odoo 9 di CentOS 7

Odoo, sebelumnya dikenal sebagai OpenERP, adalah platform bisnis ERP open source yang terkenal. Perusahaan dengan ukuran berapa pun dapat mengambil manfaat dari Odoo, berkat lisnya yang berlimpah

Cara Memasang CMS CMS 2.0 pada CentOS 7 LAMP VPS

Cara Memasang CMS CMS 2.0 pada CentOS 7 LAMP VPS

Menggunakan Sistem yang Berbeda? Couch CMS adalah Content Management System (CMS) sederhana dan fleksibel, gratis dan open source yang memungkinkan desainer web untuk mendesain

Cara Memasang NextCloud 9 pada CentOS 7

Cara Memasang NextCloud 9 pada CentOS 7

NextCloud, seperti namanya, adalah alternatif yang menjanjikan dari solusi hosting file sumber terbuka lainnya OwnCloud. Dalam artikel ini, saya akan menunjukkan kepada Anda ho

Menginstal Netdata di CentOS 7

Menginstal Netdata di CentOS 7

Menggunakan Sistem yang Berbeda? Netdata adalah bintang yang naik di bidang pemantauan metrik sistem waktu-nyata. Dibandingkan dengan alat lain dengan jenis yang sama, Netdata:

Cara Menginstal ERPNext Open Source ERP pada CentOS 7

Cara Menginstal ERPNext Open Source ERP pada CentOS 7

Menggunakan Sistem yang Berbeda? ERP atau Enterprise Resource Planning adalah rangkaian aplikasi perusahaan yang digunakan untuk mengelola proses bisnis inti. ERPNext adalah gratis

Menyiapkan SA-MP San Andreas Multiplayer Server pada CentOS 6

Menyiapkan SA-MP San Andreas Multiplayer Server pada CentOS 6

Selamat datang di tutorial Vultr lainnya. Di sini, Anda akan belajar cara menginstal dan menjalankan server SAMP. Panduan ini ditulis untuk CentOS 6. Prasyarat Anda akan tahu

Instal Elgg pada CentOS 7

Instal Elgg pada CentOS 7

Menggunakan Sistem yang Berbeda? Elgg adalah mesin jejaring sosial open source yang memungkinkan penciptaan lingkungan sosial seperti jejaring sosial kampus

Menginstal Bolt CMS pada CentOS 7

Menginstal Bolt CMS pada CentOS 7

Bolt adalah CMS open source yang ditulis dalam PHP. Kode sumber baut di-host di GitHub. Panduan ini akan menunjukkan kepada Anda cara menginstal Bolt CMS pada CentOS 7 Vult yang baru

Cara Memasang Bugzilla 5.0.x di CentOS 7

Cara Memasang Bugzilla 5.0.x di CentOS 7

Bugzilla adalah sistem pelacakan bug sumber bebas dan terbuka yang banyak digunakan oleh berbagai vendor untuk terus meningkatkan softwar mereka

Menyebarkan Kubernet Dengan Kubeadm di CentOS 7

Menyebarkan Kubernet Dengan Kubeadm di CentOS 7

Ikhtisar Artikel ini dimaksudkan untuk membantu Anda mendapatkan kluster Kubernet dan menjalankan dengan kubeadm dalam waktu singkat. Panduan ini akan menggunakan dua server, pada

Setup Sails.js untuk Pengembangan pada CentOS 7

Setup Sails.js untuk Pengembangan pada CentOS 7

Menggunakan Sistem yang Berbeda? Pendahuluan Sails.js adalah kerangka kerja MVC untuk Node.js, mirip dengan Ruby on Rails. Itu membuat untuk mengembangkan aplikasi modern ver

Menyiapkan Server Half Life 2 Pada CentOS 6

Menyiapkan Server Half Life 2 Pada CentOS 6

Tutorial ini akan membahas proses pemasangan server game Half Life 2 pada Sistem CentOS 6. Langkah 1: Menginstal prasyarat Untuk mengatur ou

Alat Pemantauan Yang Lebih Baik Untuk Ubuntu Dan CentOS

Alat Pemantauan Yang Lebih Baik Untuk Ubuntu Dan CentOS

Pendahuluan Sistem Linux dilengkapi dengan alat pemantauan secara default seperti top, df, dan du yang membantu memonitor proses dan ruang disk. Namun sering kali, mereka ar

Cara Memasang Kolab Groupware di CentOS 7

Cara Memasang Kolab Groupware di CentOS 7

Menggunakan Sistem yang Berbeda? Kolab Groupware adalah aplikasi groupware berbasis web gratis dan open source. Fitur-fiturnya terdiri dari komunikasi email, acara

Cara Memasang Koel di CentOS 7

Cara Memasang Koel di CentOS 7

Menggunakan Sistem yang Berbeda? Koel adalah aplikasi streaming audio pribadi sederhana berbasis web yang ditulis dalam Vue di sisi klien dan Laravel di sisi server. Koe

Cara Memasang GDB pada CentOS 6

Cara Memasang GDB pada CentOS 6

GDB adalah debugger untuk C, C ++, Objective-C, Pascal, Fortran, Go, D, OpenCL C, Ada, dan Modula-2. CentOS didasarkan pada RHEL (Red Hat Enterprise Linux). Salah satu th

Menginstal Akaunting di CentOS 7

Menginstal Akaunting di CentOS 7

Menggunakan Sistem yang Berbeda? Akaunting adalah perangkat lunak akuntansi sumber terbuka dan gratis yang dirancang untuk usaha kecil dan freelancer. Itu dibangun kecerdasan

Wawasan tentang 26 Teknik Analisis Data Besar: Bagian 1

Wawasan tentang 26 Teknik Analisis Data Besar: Bagian 1

Wawasan tentang 26 Teknik Analisis Data Besar: Bagian 1

6 Hal yang Sangat Menggila dari Nintendo Switch

6 Hal yang Sangat Menggila dari Nintendo Switch

Banyak dari Anda tahu Switch keluar pada Maret 2017 dan fitur-fitur barunya. Bagi yang belum tahu, kami sudah menyiapkan daftar fitur yang membuat 'Switch' menjadi 'gadget yang wajib dimiliki'.

Janji Teknologi Yang Masih Belum Ditepati

Janji Teknologi Yang Masih Belum Ditepati

Apakah Anda menunggu raksasa teknologi untuk memenuhi janji mereka? periksa apa yang belum terkirim.

Fungsionalitas Lapisan Arsitektur Referensi Big Data

Fungsionalitas Lapisan Arsitektur Referensi Big Data

Baca blog untuk mengetahui berbagai lapisan dalam Arsitektur Big Data dan fungsinya dengan cara yang paling sederhana.

Bagaimana AI Dapat Membawa Otomatisasi Proses ke Tingkat Selanjutnya?

Bagaimana AI Dapat Membawa Otomatisasi Proses ke Tingkat Selanjutnya?

Baca ini untuk mengetahui bagaimana Kecerdasan Buatan menjadi populer di antara perusahaan skala kecil dan bagaimana hal itu meningkatkan kemungkinan untuk membuat mereka tumbuh dan memberi keunggulan pada pesaing mereka.

CAPTCHA: Berapa Lama Itu Bisa Tetap Menjadi Teknik yang Layak Untuk Perbedaan Human-AI?

CAPTCHA: Berapa Lama Itu Bisa Tetap Menjadi Teknik yang Layak Untuk Perbedaan Human-AI?

CAPTCHA telah berkembang cukup sulit bagi pengguna untuk dipecahkan dalam beberapa tahun terakhir. Apakah itu akan tetap efektif dalam deteksi spam dan bot di masa mendatang?

Singularitas Teknologi: Masa Depan Peradaban Manusia yang Jauh?

Singularitas Teknologi: Masa Depan Peradaban Manusia yang Jauh?

Saat Sains Berkembang dengan kecepatan tinggi, mengambil alih banyak upaya kita, risiko menundukkan diri kita pada Singularitas yang tidak dapat dijelaskan juga meningkat. Baca, apa arti singularitas bagi kita.

Telemedicine Dan Perawatan Kesehatan Jarak Jauh: Masa Depan Ada Di Sini

Telemedicine Dan Perawatan Kesehatan Jarak Jauh: Masa Depan Ada Di Sini

Apa itu telemedicine, perawatan kesehatan jarak jauh dan dampaknya terhadap generasi mendatang? Apakah itu tempat yang bagus atau tidak dalam situasi pandemi? Baca blog untuk menemukan tampilan!

Pernahkah Anda Bertanya-tanya Bagaimana Hacker Menghasilkan Uang?

Pernahkah Anda Bertanya-tanya Bagaimana Hacker Menghasilkan Uang?

Anda mungkin pernah mendengar bahwa peretas menghasilkan banyak uang, tetapi pernahkah Anda bertanya-tanya bagaimana cara mereka mendapatkan uang sebanyak itu? mari berdiskusi.

Pembaruan Tambahan macOS Catalina 10.15.4 Menyebabkan Lebih Banyak Masalah Daripada Menyelesaikan

Pembaruan Tambahan macOS Catalina 10.15.4 Menyebabkan Lebih Banyak Masalah Daripada Menyelesaikan

Baru-baru ini Apple merilis macOS Catalina 10.15.4 pembaruan suplemen untuk memperbaiki masalah tetapi tampaknya pembaruan menyebabkan lebih banyak masalah yang mengarah ke bricking mesin mac. Baca artikel ini untuk mempelajari lebih lanjut