Cara Pasang dan Konfigur CyberPanel pada Server CentOS 7 anda
Menggunakan Sistem Berbeza? Pengenalan CyberPanel adalah salah satu panel kawalan pertama di pasaran yang merupakan sumber terbuka dan menggunakan OpenLiteSpeed. Apa itu
Matrix adalah protokol komunikasi standard terbuka untuk komunikasi masa nyata yang terdesentralisasi. Matrix dilaksanakan sebagai pelayan rumah yang diedarkan melalui internet; oleh itu tidak ada satu titik kawalan atau kegagalan. Matrix menyediakan API HTTP RESTful untuk membuat dan mengurus pelayan sembang yang diedarkan yang merangkumi pengiriman dan penerimaan mesej, mengundang dan menguruskan ahli ruang sembang, menjaga akaun pengguna, dan menyediakan ciri-ciri sembang lanjutan seperti panggilan VoIP dan Video, dll. Matrix juga mewujudkan penyegerakan selamat antara pelayan rumah yang diedarkan ke seluruh dunia.
Synapse adalah pelaksanaan pelayan rumah Matrix yang ditulis oleh pasukan Matrix. Ekosistem Matrix terdiri daripada rangkaian banyak pelayan kediaman gabungan yang diedarkan di seluruh dunia. Seorang pengguna Matrix menggunakan klien sembang untuk menyambung ke pelayan rumah, yang seterusnya menyambung ke rangkaian Matrix. Homeserver menyimpan sejarah sembang dan maklumat log masuk pengguna tertentu.
Dalam tutorial ini, kami akan menggunakan matrix.example.com
sebagai nama domain yang digunakan untuk Matrix Synapse. Ganti semua kejadian matrix.example.com
dengan nama domain sebenar anda yang ingin anda gunakan untuk pelayan rumah Synapse anda.
Kemas kini sistem asas anda menggunakan panduan Cara Mengemas kini CentOS 7 . Setelah sistem anda dikemas kini, teruskan memasang Python.
Matrix Synapse memerlukan Python 2.7 untuk berfungsi. Python 2.7 hadir dalam semua pelayan CentOS. Anda boleh menyemak versi Python yang dipasang.
python -V
Anda harus mendapat output yang serupa.
[user@vultr ~]$ python -V
Python 2.7.5
Mengubah versi lalai Python boleh mematahkan pengurus repositori YUM. Walau bagaimanapun, jika anda mahukan versi terbaru Python, anda boleh membuat pemasangan alternatif, tanpa menggantikan Python lalai.
Pasang pakej dalam Development tools
kumpulan yang diperlukan untuk menyusun fail pemasang.
sudo yum groupinstall -y "Development tools"
Pasang beberapa pergantungan 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
Pasang Python pip. Pip adalah pengurus pergantungan untuk pakej Python.
wget https://bootstrap.pypa.io/get-pip.py
sudo python get-pip.py
Buat persekitaran maya untuk aplikasi Synapse anda. Persekitaran maya Python digunakan untuk membuat persekitaran maya terpencil untuk projek Python. Persekitaran maya mengandungi direktori pemasangannya sendiri dan tidak berkongsi perpustakaan dengan persekitaran maya global dan lain-lain.
sudo virtualenv -p python2.7 /opt/synapse
Berikan hak milik direktori kepada pengguna semasa.
sudo chown -R $USER:$USER /opt/synapse/
Sekarang aktifkan persekitaran maya.
source /opt/synapse/bin/activate
Pastikan bahawa anda mempunyai versi pip
dan setuptools
.
pip install --upgrade pip
pip install --upgrade setuptools
Pasang versi terbaru Synapse menggunakan pip.
pip install https://github.com/matrix-org/synapse/tarball/master
Perintah di atas akan memerlukan sedikit masa untuk dilaksanakan kerana menarik dan memasang versi terbaru Synapse dan semua pergantungan dari repositori Github.
Synapse menggunakan SQLite sebagai pangkalan data lalai. SQLite menyimpan data dalam pangkalan data yang disimpan sebagai fail rata pada cakera. Menggunakan SQLite sangat mudah, tetapi tidak digalakkan untuk pengeluaran kerana sangat lambat berbanding dengan PostgreSQL.
PostgreSQL adalah sistem pangkalan data hubungan objek. Anda perlu menambahkan repositori PostgreSQL di sistem anda, kerana aplikasi tersebut tidak tersedia di repositori YUM lalai.
sudo rpm -Uvh https://download.postgresql.org/pub/repos/yum/9.6/redhat/rhel-7-x86_64/pgdg-centos96-9.6-3.noarch.rpm
Pasang pelayan pangkalan data PostgreSQL.
sudo yum -y install postgresql96-server postgresql96-contrib
Inisialkan pangkalan data.
sudo /usr/pgsql-9.6/bin/postgresql96-setup initdb
Edit /var/lib/pgsql/9.6/data/pg_hba.conf
untuk membolehkan pengesahan berasaskan MD5.
sudo nano /var/lib/pgsql/9.6/data/pg_hba.conf
Cari baris berikut dan ubah peer
ke trust
dan idnet
ke 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 dikemas kini, konfigurasi harus kelihatan 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
Mulakan pelayan PostgreSQL dan aktifkan untuk memulakan secara automatik semasa boot.
sudo systemctl start postgresql-9.6
sudo systemctl enable postgresql-9.6
Tukar kata laluan untuk pengguna PostgreSQL lalai.
sudo passwd postgres
Log masuk.
sudo su - postgres
Buat pengguna PostgreSQL baru untuk Synapse.
createuser synapse
PostgreSQL menyediakan psql
shell untuk menjalankan pertanyaan pada pangkalan data. Tukar ke shell PostgreSQL dengan menjalankan.
psql
Tetapkan kata laluan untuk pengguna yang baru dibuat untuk pangkalan data Synapse.
ALTER USER synapse WITH ENCRYPTED password 'DBPassword';
Ganti DBPassword
dengan kata laluan yang kuat dan catatnya kerana kami akan menggunakan kata laluan kemudian. Buat pangkalan data baru untuk pangkalan data PostgreSQL.
CREATE DATABASE synapse ENCODING 'UTF8' LC_COLLATE='C' LC_CTYPE='C' template=template0 OWNER synapse;
Keluar dari psql
cangkerang.
\q
Tukar kepada sudo
pengguna dari postgres
pengguna semasa .
exit
Anda juga perlu memasang pakej yang diperlukan untuk Synapse untuk berkomunikasi dengan pelayan pangkalan data PostgreSQL.
sudo yum -y install postgresql-devel libpqxx-devel.x86_64
source /opt/synapse/bin/activate
pip install psycopg2
Synapse memerlukan fail konfigurasi sebelum dapat dimulakan. Fail konfigurasi menyimpan tetapan pelayan. Tukar ke persekitaran maya 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.com
dengan nama domain sebenar anda dan pastikan bahawa nama pelayan dapat diselesaikan ke alamat IP dari instance Vultr anda. Sediakan --report-stats=yes
jika anda mahu pelayan menghasilkan laporan, sediakan --report-stats=no
untuk melumpuhkan penghasilan laporan dan statistik.
Anda mesti 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 lalai, homeserver.yaml
dikonfigurasikan untuk menggunakan pangkalan data SQLite. Kita perlu mengubahnya untuk menggunakan pangkalan data PostgreSQL yang telah kita buat sebelumnya.
Edit yang baru dibuat homeserver.yaml
.
nano homeserver.yaml
Cari konfigurasi pangkalan data yang ada yang menggunakan SQLite3. Komen garis seperti di bawah. Juga, tambahkan konfigurasi pangkalan data baru untuk PostgreSQL. Pastikan bahawa anda menggunakan kelayakan pangkalan data yang betul.
# 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
Pendaftaran pengguna baru dari antara muka web dilumpuhkan secara lalai. Untuk mengaktifkan pendaftaran, anda boleh menetapkan enable_registration
ke True
. Anda juga boleh menetapkan kunci pendaftaran rahsia, yang membolehkan sesiapa sahaja mendaftar yang mempunyai kunci rahsia, walaupun pendaftaran dilumpuhkan.
enable_registration: False
registration_shared_secret: "YPPqCPYqCQ-Rj,ws~FfeLS@maRV9vz5MnnV^r8~pP.Q6yNBDG;"
Simpan fail dan keluar dari editor. Sekarang anda perlu mendaftarkan pengguna pertama anda. Sebelum anda dapat mendaftarkan pengguna baru, anda perlu memulakan 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 sepatutnya melihat perkara berikut.
(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.
Akhirnya, sebelum anda dapat menggunakan Homeserver, anda perlu membenarkan port 8448 melalui Firewall. Port 8448
digunakan sebagai pelabuhan persekutuan yang selamat. Pelayan rumah menggunakan port ini untuk berkomunikasi antara satu sama lain dengan selamat. Anda juga boleh menggunakan pelanggan sembang web Matrix terbina dalam melalui port ini.
sudo firewall-cmd --permanent --zone=public --add-port=8448/tcp
sudo firewall-cmd --reload
Anda kini boleh log masuk ke pelanggan sembang web Matrix dengan https://matrix.example.com:8448
melalui penyemak imbas kegemaran anda. Anda akan melihat amaran mengenai sijil SSL kerana sijil yang digunakan ditandatangani sendiri. Kami tidak akan menggunakan pelanggan sembang web ini kerana sudah lapuk dan tidak dikekalkan lagi. Cuba periksa sama ada anda boleh log masuk menggunakan akaun pengguna yang baru anda buat.
Daripada menggunakan sijil yang ditandatangani sendiri untuk mengamankan pelabuhan persekutuan, kami boleh menggunakan Let's Encrypt SSL percuma. Let's Encrypt SSL percuma boleh diperoleh melalui klien Let's Encrypt rasmi yang disebut Certbot.
Pasang Certbot.
sudo yum -y install certbot
Sesuaikan tetapan firewall anda untuk membolehkan standard HTTP
dan HTTPS
port melalui firewall. Certbot perlu membuat HTTP
sambungan untuk mengesahkan pihak berkuasa 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 sijil dari Let's Encrypt CA, anda mesti memastikan bahawa domain yang ingin anda hasilkan sijil dihalakan ke pelayan. Sekiranya tidak, buat perubahan yang diperlukan pada rekod DNS domain anda dan tunggu sehingga DNS disebarkan sebelum membuat permintaan sijil sekali lagi. Certbot memeriksa pihak berkuasa domain sebelum memberikan sijil.
Sekarang gunakan pelayan web terbina dalam Certbot untuk menghasilkan sijil untuk domain anda.
sudo certbot certonly --standalone -d matrix.example.com
Sijil yang dijana mungkin disimpan di dalam /etc/letsencrypt/live/matrix.example.com/
. Sijil SSL akan disimpan sebagai fullchain.pem
dan kunci persendirian akan disimpan sebagai privkey.pem
.
Salin sijil.
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 perlu menukar jalan ke sijil dan kunci dari homeserver.yaml
fail. Edit konfigurasi.
nano /opt/synapse/homeserver.yaml
Cari baris berikut dan ubah jalannya.
tls_certificate_path: "/opt/synapse/letsencrypt-fullchain.pem"
# PEM encoded private key for TLS
tls_private_key_path: "/opt/synapse/letsencrypt-privkey.pem"
Simpan fail dan keluar dari editor. Mulakan semula pelayan Synapse supaya perubahan dapat berlaku.
source /opt/synapse/bin/activate && cd /opt/synapse
synctl restart
Mari Sulitkan sijil akan berakhir dalam 90 hari, jadi disarankan agar anda menetapkan pembaharuan automatik untuk sijil menggunakan cron jobs. Cron adalah perkhidmatan sistem yang digunakan untuk menjalankan tugas berkala.
Buat skrip baru untuk memperbaharui sijil dan salin sijil yang diperbaharui ke direktori Synapse.
sudo nano /opt/renew-letsencypt.sh
Isi fail.
#!/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 kebenaran pelaksanaan.
sudo chmod +x /opt/renew-letsencypt.sh
Buka fail kerja cron.
sudo crontab -e
Tambahkan garisan berikut pada akhir fail.
30 5 * * 1 /opt/renew-letsencypt.sh
Pekerjaan cron di atas akan dijalankan setiap hari Isnin jam 5:30 pagi. Sekiranya sijil tamat tempoh, kad kredit akan diperbaharui secara automatik.
Sekarang anda boleh melawat https://matrix.example.com:8448
. Anda akan melihat bahawa tidak ada amaran SSL sebelum sambungan.
Selain dari pelabuhan persekutuan yang selamat 8448
, Synapse juga mendengarkan port pelanggan yang tidak terjamin 8008
. Kami sekarang akan mengkonfigurasi Nginx sebagai proksi terbalik kepada aplikasi Synapse.
sudo yum -y install nginx
Buat fail konfigurasi baru.
sudo nano /etc/nginx/conf.d/synapse.conf
Isi fail dengan kandungan 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;
}
}
Mulakan semula dan dayakan Nginx secara automatik bermula pada waktu boot.
sudo systemctl restart nginx
sudo systemctl enable nginx
Akhirnya, anda dapat mengesahkan sama ada Synapse dapat diakses melalui proksi terbalik.
curl https://matrix.example.com/_matrix/key/v2/server/auto
Anda mesti mendapat output 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"}}}
Sebaiknya gunakan perkhidmatan Systemd untuk menguruskan proses pelayan Synapse. Menggunakan Systemd akan memastikan bahawa pelayan dimulakan secara automatik pada permulaan dan kegagalan sistem.
Buat fail perkhidmatan Systemd baru.
sudo nano /etc/systemd/system/matrix-synapse.service
Isi fail.
[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 boleh memulakan pelayan Synapse dengan cepat.
sudo systemctl start matrix-synapse
Untuk menghentikan atau memulakan semula pelayan menggunakan arahan berikut.
sudo systemctl stop matrix-synapse
sudo systemctl restart matrix-synapse
Anda boleh menyemak status perkhidmatan.
sudo systemctl status matrix-synapse
Pelayan Matrix Synapse kini dipasang dan dikonfigurasi pada pelayan anda. Oleh kerana pelanggan web terbina dalam untuk Matrix sudah lapuk, anda boleh memilih dari pelbagai aplikasi klien yang tersedia untuk berbual. Riot adalah pelanggan sembang yang paling popular, yang terdapat di hampir semua platform. Anda boleh menggunakan versi hos klien sembang web Riot, atau anda juga dapat menghosting salinannya di pelayan anda sendiri. Selain itu, anda juga dapat menggunakan klien chat dan desktop Riot, yang tersedia untuk Windows, Mac, Linux, IOS dan Android.
Sekiranya anda ingin menghoskan salinan pelanggan web Riot anda sendiri, anda boleh membaca lebih lanjut untuk mendapatkan arahan untuk memasang Riot di pelayan anda. Untuk pelanggan yang dihoskan, desktop dan mudah alih, anda boleh menggunakan nama pengguna dan kata laluan anda untuk log masuk terus ke pelayan rumah anda. Cukup pilih my Matrix ID
dari menu lungsur Sign In
pilihan dan berikan nama pengguna dan kata laluan yang telah anda buat semasa pendaftaran pengguna baru. Klik pada Custom server
dan gunakan nama domain instance Synapse anda. Seperti yang telah kita konfigurasikan Nginx, kita hanya boleh menggunakannya https://matrix.example.com
sebagai pelayan Rumah dan https://matrix.org
sebagai URL pelayan Identiti.
Riot juga merupakan sumber terbuka dan bebas untuk dihoskan di pelayan anda sendiri. Ia tidak memerlukan pangkalan data atau pergantungan. Oleh kerana kami sudah menjalankan pelayan Nginx, kami dapat menghoskannya di pelayan yang sama.
Domain atau subdomain yang anda gunakan untuk Synapse dan Riot mestilah berbeza untuk mengelakkan skrip lintas-laman web. Walau bagaimanapun, anda boleh menggunakan dua subdomain dengan domain yang sama. Dalam tutorial ini, kita akan menggunakan
riot.example.com
sebagai domain untuk aplikasi Riot. Ganti semua kejadianriot.example.com
dengan domain atau subdomain sebenar anda untuk aplikasi Riot.
Muat turun Riot di pelayan anda.
cd /opt/
sudo wget https://github.com/vector-im/riot-web/releases/download/v0.12.3/riot-v0.12.3.tar.gz
Anda sentiasa boleh mendapatkan pautan ke versi terbaru di Riot's Github .
Ekstrak arkib.
sudo tar -xzf riot-v*.tar.gz
Namakan semula direktori untuk kemudahan pengendalian.
sudo mv riot-v*/ riot/
Kerana kami telah memasang Certbot, kami dapat menghasilkan sijil secara langsung. Pastikan domain atau subdomain yang anda gunakan dihalakan ke arah pelayan.
sudo systemctl stop nginx
sudo certbot certonly --standalone -d riot.example.com
Sijil yang dihasilkan kemungkinan akan disimpan dalam /etc/letsencrypt/live/riot.example.com/
direktori.
Buat hos maya untuk aplikasi Riot.
sudo nano /etc/nginx/conf.d/riot.conf
Isi fail.
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 fail konfigurasi sampel.
sudo cp /opt/riot/config.sample.json /opt/riot/config.json
Sekarang edit fail konfigurasi untuk membuat sedikit perubahan.
sudo nano /opt/riot/config.json
Cari baris berikut.
"default_hs_url": "https://matrix.org",
"default_is_url": "https://vector.im",
Gantikan nilai URL pelayan rumah lalai dengan URL pelayan Matrix anda. Untuk URL pelayan identiti, anda boleh menggunakan pilihan lalai, atau anda juga dapat memberikan nilainya ke pelayan identiti Matrix, yaitu https://matrix.org
.
"default_hs_url": "https://matrix.example.com",
"default_is_url": "https://matrix.org",
Simpan fail dan keluar. Berikan hak milik fail kepada pengguna Nginx.
sudo chown -R nginx:nginx /opt/riot/
Mulakan semula Nginx.
sudo systemctl restart nginx
Anda boleh mengakses Riot di https://riot.example.com
. Anda kini boleh log masuk menggunakan nama pengguna dan kata laluan yang telah anda buat sebelumnya. Anda boleh berhubung menggunakan pelayan lalai kerana kami telah mengubah pelayan Matriks lalai untuk aplikasi kami.
Anda kini mempunyai pelayan rumah Matrix Synapse dan berjalan. Anda juga mempunyai salinan Riot yang dihoskan, yang dapat anda gunakan untuk mengirim pesan kepada orang lain menggunakan ID Matriks, e-mel atau nombor telefon bimbit mereka. Mulakan dengan membuat ruang sembang di pelayan anda dan menjemput rakan anda di Matrix untuk menyertai ruang sembang yang telah anda buat.
Menggunakan Sistem Berbeza? Pengenalan CyberPanel adalah salah satu panel kawalan pertama di pasaran yang merupakan sumber terbuka dan menggunakan OpenLiteSpeed. Apa itu
Apache Maven adalah alat pengurusan projek perisian sumber terbuka dan bebas yang banyak digunakan untuk menyebarkan aplikasi berbasis Java. Prasyarat yang baru
FFmpeg adalah penyelesaian sumber terbuka yang popular untuk merakam, menukar, dan menstrim audio dan video, yang banyak digunakan dalam semua jenis perkhidmatan streaming dalam talian. Saya
Menggunakan Sistem Berbeza? Backdrop CMS 1.8.0 adalah Sistem Pengurusan Kandungan (CMS) sumber mudah alih, mudah alih, percuma dan terbuka yang membolehkan kami
Menggunakan Sistem Berbeza? AirSonic adalah pelayan streaming media sumber terbuka dan terbuka. Dalam tutorial ini, saya akan membimbing anda melalui proses penyebaran a
Pengenalan Komposer adalah pengurus pergantungan yang popular untuk PHP yang dapat mempermudah pemasangan dan kemas kini perpustakaan yang diperlukan untuk projek anda
RockMongo adalah alat Pengurusan MongoDB berasaskan web yang serupa dengan alat Pengurusan MySQL: phpMyAdmin. Tutorial ini akan merangkumi proses installin
.NET NET adalah rangka kerja pembangunan merentas platform terbuka yang disusun oleh Microsoft dan masyarakat NET yang semakin berkembang. Dengan bantuan .NE
Menggunakan Sistem yang berbeza? Netdata adalah bintang yang semakin meningkat dalam bidang pemantauan metrik sistem masa nyata. Berbanding dengan alat lain yang serupa, Netdata:
Menggunakan Sistem yang berbeza? Dalam tutorial ini, saya akan menerangkan cara menyediakan pelayan Starbound di CentOS 7. Prasyarat Anda perlu memiliki permainan ini untuk anda
Django adalah rangka kerja Python yang popular untuk menulis aplikasi web. Dengan Django, anda dapat membina aplikasi dengan lebih cepat, tanpa mencipta semula roda. Sekiranya anda mahu
Selamat datang ke tutorial Vultr yang lain. Di sini, anda akan belajar cara memasang dan menjalankan pelayan SAMP. Panduan ini ditulis untuk CentOS 6. Prasyarat Anda akan hadir
Revive Adserver adalah sistem penayangan iklan sumber terbuka dan bebas yang dapat digunakan untuk mengelola iklan di laman web, dalam aplikasi, dan / atau dalam pemutar video. Dalam artikel ini,
Parse Server adalah alternatif sumber terbuka untuk perkhidmatan backend Parse yang sedang ditutup. Sekiranya anda peminat perkhidmatan ini, anda masih boleh menikmati perkhidmatan ini
Menggunakan Sistem Berbeza? Elgg adalah mesin rangkaian sosial sumber terbuka yang membolehkan penciptaan persekitaran sosial seperti rangkaian sosial kampus dan
Pengenalan Caddy adalah program pelayan web yang muncul dengan sokongan asli untuk HTTP / 2 dan HTTPS automatik. Dengan kemudahan penggunaan dan keselamatan, Caddy dapat b
Gambaran Keseluruhan Artikel ini dimaksudkan untuk membantu anda mendapatkan cluster Kubernet dan berjalan dengan kubeadm dalam waktu singkat. Panduan ini akan menggunakan dua pelayan, di
Pengenalan Mengendalikan sistem Linux bermaksud seseorang menggunakan baris perintah lebih kerap daripada tidak. Perlu menaip nama direktori panjang berulang-ulang sebagai wel
OpenCart adalah penyelesaian keranjang belanja sumber terbuka yang popular yang direka untuk memberikan fungsi, kemudahan penggunaan, dan penampilan yang sangat baik. Dengan OpenCart, anda pasti
Menggunakan Sistem Berbeza? Pengenalan Sails.js adalah rangka kerja MVC untuk Node.js, mirip dengan Ruby on Rails. Ia menjadikan untuk mengembangkan aplikasi moden
Pandangan tentang 26 Teknik Analisis Data Besar: Bahagian 1
Ramai daripada anda tahu Switch akan keluar pada Mac 2017 dan ciri baharunya. Bagi yang tidak tahu, kami telah menyediakan senarai ciri yang menjadikan 'Tukar' sebagai 'gajet yang mesti ada'.
Adakah anda menunggu gergasi teknologi memenuhi janji mereka? semak apa yang masih belum dihantar.
Baca blog untuk mengetahui lapisan berbeza dalam Seni Bina Data Besar dan fungsinya dengan cara yang paling mudah.
Baca ini untuk mengetahui cara Kecerdasan Buatan semakin popular di kalangan syarikat berskala kecil dan cara ia meningkatkan kebarangkalian untuk menjadikan mereka berkembang dan memberikan pesaing mereka kelebihan.
CAPTCHA telah menjadi agak sukar untuk diselesaikan oleh pengguna dalam beberapa tahun kebelakangan ini. Adakah ia dapat kekal berkesan dalam pengesanan spam dan bot pada masa hadapan?
Apabila Sains Berkembang pada kadar yang pantas, mengambil alih banyak usaha kita, risiko untuk menundukkan diri kita kepada Ketunggalan yang tidak dapat dijelaskan juga meningkat. Baca, apakah makna ketunggalan bagi kita.
Apakah teleperubatan, penjagaan kesihatan jauh dan impaknya kepada generasi akan datang? Adakah ia tempat yang baik atau tidak dalam situasi pandemik? Baca blog untuk mencari paparan!
Anda mungkin pernah mendengar bahawa penggodam memperoleh banyak wang, tetapi pernahkah anda terfikir bagaimana mereka memperoleh wang seperti itu? Mari berbincang.
Baru-baru ini Apple mengeluarkan macOS Catalina 10.15.4 kemas kini tambahan untuk menyelesaikan masalah tetapi nampaknya kemas kini itu menyebabkan lebih banyak masalah yang membawa kepada pemusnahan mesin mac. Baca artikel ini untuk mengetahui lebih lanjut