कैसे स्थापित करें और अपने CentOS 7 सर्वर पर CyberPanel कॉन्फ़िगर करें
एक अलग प्रणाली का उपयोग? परिचय CyberPanel बाजार पर पहला नियंत्रण पैनल है जो दोनों खुला स्रोत है और OpenLiteSpeed का उपयोग करता है। क्या थी?
मैट्रिक्स विकेंद्रीकृत वास्तविक समय संचार के लिए एक खुला मानक संचार प्रोटोकॉल है। मैट्रिक्स को घर के सर्वर के रूप में लागू किया जाता है जो इंटरनेट पर वितरित किए जाते हैं; इसलिए नियंत्रण या विफलता का एक भी बिंदु नहीं है। मैट्रिक्स वितरित चैट सर्वर को बनाने और प्रबंधित करने के लिए एक RESTful HTTP API प्रदान करता है जिसमें चैट रूम के सदस्यों को संदेश भेजना और प्राप्त करना, आमंत्रित करना और प्रबंधित करना, उपयोगकर्ता खाते बनाए रखना और उन्नत चैट सुविधाएँ जैसे कि वीओआईपी और वीडियो कॉल आदि प्रदान करना शामिल है, मैट्रिक्स भी एक की स्थापना करता है। दुनिया भर में वितरित किए जाने वाले होम सर्वर के बीच सुरक्षित सिंक्रनाइज़ेशन।
Synapse मैट्रिक्स टीम द्वारा लिखित मैट्रिक्स होम सर्वर का कार्यान्वयन है। मैट्रिक्स इकोसिस्टम में दुनिया भर में वितरित कई फ़ेडरेटेड होम सर्वर के नेटवर्क होते हैं। एक मैट्रिक्स उपयोगकर्ता होम सर्वर से कनेक्ट करने के लिए एक चैट क्लाइंट का उपयोग करता है, जो बदले में मैट्रिक्स नेटवर्क से जुड़ता है। गृहस्वामी चैट इतिहास और उस विशेष उपयोगकर्ता की लॉगिन जानकारी संग्रहीत करता है।
इस ट्यूटोरियल में, हम matrix.example.com
मैट्रिक्स सिंकैप के लिए डोमेन नाम का उपयोग करेंगे। matrix.example.com
अपने Synapse होम सर्वर के लिए अपने वास्तविक डोमेन नाम के साथ होने वाली सभी घटनाओं को प्रतिस्थापित करें।
सेंटोस 7 को अपडेट करने के लिए गाइड का उपयोग करके अपनी आधार प���रणाली को अपडेट करें । एक बार आपका सिस्टम अपडेट हो जाने के बाद, पायथन को स्थापित करने के लिए आगे बढ़ें।
मैट्रिक्स Synapse को काम करने के लिए पायथन 2.7 की आवश्यकता है। पायथन 2.7 सभी CentOS सर्वर इंस्टेंस में प्रीइंस्टॉल्ड आता है। आप पायथन के स्थापित संस्करण की जांच कर सकते हैं।
python -V
आपको एक समान आउटपुट मिलना चाहिए।
[user@vultr ~]$ python -V
Python 2.7.5
पायथन के डिफ़ॉल्ट संस्करण को बदलने से यम भंडार प्रबंधक टूट सकता है। हालांकि, यदि आप पायथन का सबसे हालिया संस्करण चाहते हैं, तो आप डिफ़ॉल्ट पायथन की जगह के बिना, एक वैकल्पिक इंस्टॉल कर सकते हैं।
Development tools
इंस्टॉलर फ़ाइलों को संकलित करने के लिए आवश्यक समूह में संकुल को स्थापित करें।
sudo yum groupinstall -y "Development tools"
कुछ और आवश्यक निर्भरताएँ स्थापित करें।
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
अजगर पाइप स्थापित करें। पिप पायथन पैकेज के लिए निर्भरता प्रबंधक है।
wget https://bootstrap.pypa.io/get-pip.py
sudo python get-pip.py
अपने Synapse अनुप्रयोग के लिए एक आभासी वातावरण बनाएँ। पायथन प्रोजेक्ट के लिए एक अलग आभासी वातावरण बनाने के लिए पायथन वर्चुअल वातावरण का उपयोग किया जाता है। एक आभासी वातावरण की अपनी स्थापना निर्देशिकाएं होती हैं और यह वैश्विक और अन्य आभासी वातावरणों के साथ पुस्तकालयों को साझा नहीं करता है।
sudo virtualenv -p python2.7 /opt/synapse
वर्तमान उपयोगकर्ता को निर्देशिका का स्वामित्व प्रदान करें।
sudo chown -R $USER:$USER /opt/synapse/
अब वर्चुअल वातावरण सक्रिय करें।
source /opt/synapse/bin/activate
सुनिश्चित करें कि आप का नवीनतम संस्करण है कि pip
और setuptools
।
pip install --upgrade pip
pip install --upgrade setuptools
पाइप का उपयोग करके Synapse का नवीनतम संस्करण स्थापित करें।
pip install https://github.com/matrix-org/synapse/tarball/master
उपरोक्त कमांड को निष्पादित होने में कुछ समय लगेगा क्योंकि यह सिनाप्स का नवीनतम संस्करण और गितुब भंडार से सभी निर्भरता को खींचता है और स्थापित करता है।
Synapse डिफ़ॉल्ट डेटाबेस के रूप में SQLite का उपयोग करता है। SQLite एक डेटाबेस में डेटा संग्रहीत करता है जिसे डिस्क पर एक फ्लैट फ़ाइल के रूप में रखा जाता है। SQLite का उपयोग करना बहुत सरल है, लेकिन उत्पादन के लिए अनुशंसित नहीं है क्योंकि यह PostgreSQL की तुलना में बहुत धीमा है।
PostgreSQL एक ऑब्जेक्ट रिलेशनल डेटाबेस सिस्टम है। आपको अपने सिस्टम में PostgreSQL रिपॉजिटरी को जोड़ना होगा, क्योंकि एप्लिकेशन डिफ़ॉल्ट YUM रिपॉजिटरी में उपलब्ध नहीं है।
sudo rpm -Uvh https://download.postgresql.org/pub/repos/yum/9.6/redhat/rhel-7-x86_64/pgdg-centos96-9.6-3.noarch.rpm
PostgreSQL डेटाबेस सर्वर स्थापित करें।
sudo yum -y install postgresql96-server postgresql96-contrib
डेटाबेस को प्रारंभ करें।
sudo /usr/pgsql-9.6/bin/postgresql96-setup initdb
/var/lib/pgsql/9.6/data/pg_hba.conf
MD5 आधारित प्रमाणीकरण सक्षम करने के लिए संपादित करें ।
sudo nano /var/lib/pgsql/9.6/data/pg_hba.conf
निम्नलिखित पंक्तियों को खोजें और उनमें peer
से trust
और idnet
को बदलें 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
एक बार अद्यतन करने के बाद, कॉन्फ़िगरेशन इस तरह दिखना चाहिए।
# 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
PostgreSQL सर्वर शुरू करें और इसे बूट पर स्वचालित रूप से शुरू करने के लिए सक्षम करें।
sudo systemctl start postgresql-9.6
sudo systemctl enable postgresql-9.6
डिफ़ॉल्ट PostgreSQL उपयोगकर्ता के लिए पासवर्ड बदलें।
sudo passwd postgres
लॉग इन करें।
sudo su - postgres
Synapse के लिए एक नया PostgreSQL उपयोगकर्ता बनाएं।
createuser synapse
PostgreSQL psql
डेटाबेस पर प्रश्नों को चलाने के लिए शेल प्रदान करता है । चल कर PostgreSQL शेल पर स्विच करें।
psql
Synapse डेटाबेस के लिए नए बनाए गए उपयोगकर्ता के लिए एक पासवर्ड सेट करें।
ALTER USER synapse WITH ENCRYPTED password 'DBPassword';
DBPassword
एक मजबूत पासवर्ड के साथ बदलें और इसका एक नोट बनाएं क्योंकि हम बाद में पासवर्ड का उपयोग करेंगे। PostgreSQL डेटाबेस के लिए एक नया डेटाबेस बनाएँ।
CREATE DATABASE synapse ENCODING 'UTF8' LC_COLLATE='C' LC_CTYPE='C' template=template0 OWNER synapse;
psql
खोल से बाहर निकलें ।
\q
sudo
वर्तमान postgres
उपयोगकर्ता से उपयोगकर्ता पर स्विच करें।
exit
PostgreSQL डेटाबेस सर्वर के साथ संवाद करने के लिए आपको Synapse के लिए आवश्यक पैकेजों को भी स्थापित करना होगा।
sudo yum -y install postgresql-devel libpqxx-devel.x86_64
source /opt/synapse/bin/activate
pip install psycopg2
Synapse को प्रारंभ करने से पहले कॉन्फ़िगरेशन फ़ाइल की आवश्यकता होती है। कॉन्फ़िगरेशन फ़ाइल सर्वर सेटिंग्स संग्रहीत करता है। वर्चुअल वातावरण में स्विच करें और 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
matrix.example.com
अपने वास्तविक डोमेन नाम से प्रतिस्थापित करें और सुनिश्चित करें कि सर्वर का नाम आपके वल्चर उदाहरण के आईपी पते के लिए resolvable है। --report-stats=yes
यदि आप सर्वर को रिपोर्ट जनरेट करना चाहते हैं तो प्रदान करें , --report-stats=no
रिपोर्ट और आंकड़ों की पीढ़ी को अक्षम करने के लिए प्रदान करें।
आपको एक समान आउटपुट देखना चाहिए।
(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
डिफ़ॉल्ट रूप से, homeserver.yaml
SQLite डेटाबेस का उपयोग करने के लिए कॉन्फ़िगर किया गया है। हमें पहले बनाए गए PostgreSQL डेटाबेस का उपयोग करने के लिए इसे संशोधित करने की आवश्यकता है।
नए बनाए गए को संपादित करें homeserver.yaml
।
nano homeserver.yaml
मौजूदा डेटाबेस कॉन्फ़िगरेशन का पता लगाएं जो SQLite3 का उपयोग करता है। नीचे दी गई लाइनों के अनुसार टिप्पणी करें। इसके अलावा, PostgreSQL के लिए नया डेटाबेस कॉन्फ़िगरेशन जोड़ें। सुनिश्चित करें कि आप सही डेटाबेस क्रेडेंशियल्स का उपयोग करते हैं।
# 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
वेब इंटरफ़ेस से नए उपयोगकर्ता का पंजीकरण डिफ़ॉल्ट रूप से अक्षम है। पंजीकरण सक्षम करने के लिए, आप सेट कर सकते हैं enable_registration
करने के लिए True
। आप एक गुप्त पंजीकरण कुंजी भी सेट कर सकते हैं, जो किसी को भी पंजीकरण करने की अनुमति देता है, जिसके पास गुप्त कुंजी है, भले ही पंजीकरण अक्षम हो।
enable_registration: False
registration_shared_secret: "YPPqCPYqCQ-Rj,ws~FfeLS@maRV9vz5MnnV^r8~pP.Q6yNBDG;"
फ़ाइल को सहेजें और संपादक से बाहर निकलें। अब आपको अपना पहला उपयोगकर्ता पंजीकृत करना होगा। इससे पहले कि आप एक नया उपयोगकर्ता पंजीकृत कर सकें, हालांकि, आपको पहले आवेदन शुरू करना होगा।
source /opt/synapse/bin/activate && cd /opt/synapse
synctl start
आपको निम्नलिखित पंक्तियाँ देखनी चाहिए।
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')
एक नया मैट्रिक्स उपयोगकर्ता पंजीकृत करें।
register_new_matrix_user -c homeserver.yaml https://localhost:8448
आपको निम्नलिखित देखना चाहिए।
(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.
अंत में, होमर्सवर का उपयोग करने से पहले, आपको फ़ायरवॉल के माध्यम से पोर्ट 8448 को अनुमति देने की आवश्यकता होगी। पोर्ट 8448
का उपयोग सुरक्षित फेडरेशन पोर्ट के रूप में किया जाता है। गृहस्वामी इस बंदरगाह का उपयोग सुरक्षित रूप से एक दूसरे के साथ संवाद करने के लिए करते हैं। आप इस पोर्ट के माध्यम से अंतर्निहित मैट्रिक्स वेब चैट क्लाइंट का भी उपयोग कर सकते हैं।
sudo firewall-cmd --permanent --zone=public --add-port=8448/tcp
sudo firewall-cmd --reload
अब आप https://matrix.example.com:8448
अपने पसंदीदा ब्राउज़र के माध्यम से जाकर मैट्रिक्स वेब चैट क्लाइंट में लॉग इन कर सकते हैं । SSL प्रमाणपत्र के बारे में आपको एक चेतावनी दिखाई देगी क्योंकि उपयोग किए गए प्रमाणपत्र स्व-हस्ताक्षरित हैं। हम इस वेब चैट क्लाइंट का उपयोग नहीं करेंगे क्योंकि यह पुराना है और इसका रखरखाव नहीं किया गया है। बस यह जांचने की कोशिश करें कि क्या आप अपने द्वारा बनाए गए उपयोगकर्ता खाते का उपयोग करके लॉग इन कर सकते हैं।
फेडरेशन पोर्ट को सुरक्षित करने के लिए स्व-हस्ताक्षरित प्रमाण पत्र का उपयोग करने के बजाय, हम लेट्स एनक्रिप्ट फ्री एसएसएल का उपयोग कर सकते हैं। आइए एनक्रिप्ट फ्री एसएसएल को आधिकारिक के माध्यम से प्राप्त किया जा सकता है।
प्रमाण पत्र स्थापित करें।
sudo yum -y install certbot
फ़ायरवॉल के माध्यम से मानक HTTP
और HTTPS
बंदरगाहों की अनुमति देने के लिए अपनी फ़ायरवॉल सेटिंग को समायोजित करें । सर्टिफिकेट HTTP
को डोमेन अथॉरिटी को सत्यापित करने के लिए एक कनेक्शन बनाने की जरूरत है ।
sudo firewall-cmd --permanent --zone=public --add-service=http
sudo firewall-cmd --permanent --zone=public --add-service=https
sudo firewall-cmd --reload
लेट्स एनक्रिप्ट क्रॉ से सर्टिफिकेट प्राप्त करने के लिए, आपको यह सुनिश्चित करना होगा कि जिस सर्टिफिकेट के लिए आप सर्टिफिकेट जनरेट करना चाहते हैं, वह सर्वर की ओर इंगित किया गया है। यदि ऐसा नहीं है, तो अपने डोमेन के DNS रिकॉर्ड्स में आवश्यक परिवर्तन करें और फिर से प्रमाणपत्र अनुरोध करने से पहले DNS के प्रचार के लिए प्रतीक्षा करें। सर्टिफिकेट सर्टिफिकेट प्रदान करने से पहले डोमेन प्राधिकरण की जांच करता है।
अब अपने डोमेन के लिए प्रमाणपत्र बनाने के लिए सर्टिफिकेट में बिल्ट-इन वेब सर्वर का उपयोग करें।
sudo certbot certonly --standalone -d matrix.example.com
जनरेट किए गए प्रमाणपत्रों को संग्रहीत किए जाने की संभावना है /etc/letsencrypt/live/matrix.example.com/
। एसएसएल प्रमाण पत्र के रूप में संग्रहीत किया जाएगा fullchain.pem
और निजी कुंजी के रूप में संग्रहीत किया जाएगा privkey.pem
।
प्रमाणपत्रों की प्रतिलिपि बनाएँ।
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
आपको homeserver.yaml
फ़ाइल से प्रमाणपत्र और कुंजियों के लिए पथ बदलना होगा । कॉन्फ़िगरेशन संपादित करें।
nano /opt/synapse/homeserver.yaml
निम्नलिखित पंक्तियों को खोजें और पथ को संशोधित करें।
tls_certificate_path: "/opt/synapse/letsencrypt-fullchain.pem"
# PEM encoded private key for TLS
tls_private_key_path: "/opt/synapse/letsencrypt-privkey.pem"
फ़ाइल को सहेजें और संपादक से बाहर निकलें। Synapse सर्वर को पुनरारंभ करें ताकि परिवर्तन प्रभावी हो सकें।
source /opt/synapse/bin/activate && cd /opt/synapse
synctl restart
मान लें कि 90 दिनों में समाप्त हो जाने के कारण एन्क्रिप्ट किए गए प्रमाण पत्र हैं, इसलिए यह अनुशंसा की जाती है कि आप क्रोन नौकरियों का उपयोग करके प्रमाण पत्र के लिए ऑटो नवीनीकरण सेटअप करें। क्रोन एक प्रणाली सेवा है जिसका उपयोग आवधिक कार्यों को चलाने के लिए किया जाता है।
प्रमाणपत्रों को नवीनीकृत करने के लिए एक नई स्क्रिप्ट बनाएं और नए प्रमाणपत्रों को Synapse निर्देशिका में कॉपी करें।
sudo nano /opt/renew-letsencypt.sh
फ़ाइल को पॉप्युलेट करें।
#!/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
निष्पादन की अनुमति प्रदान करें।
sudo chmod +x /opt/renew-letsencypt.sh
क्रोन जॉब फ़ाइल खोलें।
sudo crontab -e
फ़ाइल के अंत में निम्न पंक्ति जोड़ें।
30 5 * * 1 /opt/renew-letsencypt.sh
उपरोक्त क्रोन नौकरी प्रत्येक सोमवार को सुबह 5:30 बजे चलेगी। यदि प्रमाणपत्र समाप्त होने के कारण है, तो यह स्वचालित रूप से उन्हें नवीनीकृत करेगा।
अब आप यात्रा कर सकते हैं https://matrix.example.com:8448
। आप देखेंगे कि कनेक्शन से पहले कोई एसएसएल चेतावनी नहीं है।
सुरक्षित फेडरेशन पोर्ट के अलावा 8448
, Synapse भी असुरक्षित क्लाइंट पोर्ट को सुनता है 8008
। अब हम Nginx को Synapse एप्लिकेशन के लिए एक रिवर्स प्रॉक्सी के रूप में कॉन्फ़िगर करेंगे।
sudo yum -y install nginx
एक नई कॉन्फ़िगरेशन फ़ाइल बनाएँ।
sudo nano /etc/nginx/conf.d/synapse.conf
फ़ाइल को निम्न सामग्री से आबाद करें।
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;
}
}
बूट समय पर स्वचालित रूप से प्रारंभ करने के लिए Nginx को पुनरारंभ करें और सक्षम करें।
sudo systemctl restart nginx
sudo systemctl enable nginx
अंत में, आप सत्यापित कर सकते हैं कि क्या Synapse को रिवर्स प्रॉक्सी के माध्यम से एक्सेस किया जा सकता है।
curl https://matrix.example.com/_matrix/key/v2/server/auto
आपको इसी तरह का आउटपुट मिलना चाहिए।
[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"}}}
Synapse सर्वर प्रक्रिया का प्रबंधन करने के लिए Systemd सेवा का उपयोग करने की अनुशंसा की जाती है। Systemd का उपयोग यह सुनिश्चित करेगा कि सर्वर स्वचालित रूप से सिस्टम स्टार्टअप और विफलताओं पर शुरू किया गया है।
एक नई Systemd सेवा फ़ाइल बनाएँ।
sudo nano /etc/systemd/system/matrix-synapse.service
फ़ाइल को पॉप्युलेट करें।
[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
अब आप जल्दी से Synapse सर्वर शुरू कर सकते हैं।
sudo systemctl start matrix-synapse
निम्न आदेशों का उपयोग करके सर्वर को रोकने या पुनः आरंभ करने के लिए।
sudo systemctl stop matrix-synapse
sudo systemctl restart matrix-synapse
आप सेवा की स्थिति देख सकते हैं।
sudo systemctl status matrix-synapse
मैट्रिक्स सिंकैप सर्वर अब आपके सर्वर पर स्थापित और कॉन्फ़िगर किया गया है। जैसा कि मैट्रिक्स के लिए अंतर्निहित वेब क्लाइंट पुराना है, आप चैट के लिए उपलब्ध क्लाइंट एप्लिकेशन की विविधता से चुन सकते हैं । दंगा सबसे लोकप्रिय चैट क्लाइंट है, जो लगभग सभी प्लेटफार्मों पर उपलब्ध है। आप दंगा के वेब चैट क्लाइंट के होस्ट किए गए संस्करण का उपयोग कर सकते हैं, या आप इसकी प्रतिलिपि अपने स्वयं के सर्वर पर भी होस्ट कर सकते हैं। इसके अलावा आप दंगा के डेस्कटॉप और मोबाइल चैट क्लाइंट का भी उपयोग कर सकते हैं, जो विंडोज, मैक, लिनक्स, आईओएस और एंड्रॉइड के लिए उपलब्ध हैं।
यदि आप दंगा वेब क्लाइंट की अपनी प्रति होस्ट करना चाहते हैं, तो आप अपने सर्वर पर दंगा स्थापित करने के निर्देशों के लिए आगे पढ़ सकते हैं। होस्ट किए गए डेस्कटॉप और मोबाइल क्लाइंट के लिए, आप अपने उपयोगकर्ता नाम और पासवर्ड का उपयोग करके सीधे अपने होमसर्वर में प्रवेश कर सकते हैं। बस विकल्प my Matrix ID
के ड्रॉपडाउन मेनू से Sign In
चुनें और एक नए उपयोगकर्ता के पंजीकरण के दौरान आपके द्वारा बनाया गया उपयोगकर्ता नाम और पासवर्ड प्रदान करें। Custom server
अपने Synapse उदाहरण के डोमेन नाम पर क्लिक करें और उसका उपयोग करें। जैसा कि हमने पहले ही Nginx को कॉन्फ़िगर किया है, हम केवल https://matrix.example.com
होम सर्वर और https://matrix.org
आइडेंटिटी सर्वर URL के रूप में उपयोग कर सकते हैं ।
दंगा भी खुला स्रोत है और अपने स्वयं के सर्वर पर होस्ट करने के लिए स्वतंत्र है। इसके लिए किसी डेटाबेस या निर्भरता की आवश्यकता नहीं है। जैसा कि हमारे पास पहले से ही Nginx सर्वर चल रहा है, हम इसे उसी सर्वर पर होस्ट कर सकते हैं।
आपके द्वारा Synapse और Riot के लिए उपयोग किए जा रहे डोमेन या सबडोमेन क्रॉस-साइट स्क्रिप्टिंग से बचने के लिए अलग-अलग होने चाहिए। हालाँकि, आप एक ही डोमेन के दो उप डोमेन का उपयोग कर सकते हैं। इस ट्यूटोरियल में, हम
riot.example.com
दंगा अनुप्रयोग के लिए डोमेन के रूप में उपयोग करेंगे।riot.example.com
दंगा आवेदन के लिए अपने वास्तविक डोमेन या उपडोमेन की सभी घटनाओं को बदलें ।
अपने सर्वर पर दंगा डाउनलोड करें।
cd /opt/
sudo wget https://github.com/vector-im/riot-web/releases/download/v0.12.3/riot-v0.12.3.tar.gz
आप हमेशा दंगा के गितुब पर नवीनतम संस्करण का लिंक पा सकते हैं ।
संग्रह निकालें।
sudo tar -xzf riot-v*.tar.gz
सुविधा को संभालने के लिए निर्देशिका का नाम बदलें।
sudo mv riot-v*/ riot/
क्योंकि हमने पहले ही सर्टिफिकेट स्थापित कर लिया है, हम सीधे सर्टिफिकेट तैयार कर सकते हैं। सुनिश्चित करें कि आपके द्वारा उपयोग किया जा रहा डोमेन या उपडोमेन सर्वर की ओर इंगित किया गया है।
sudo systemctl stop nginx
sudo certbot certonly --standalone -d riot.example.com
जेनरेट किए गए प्रमाणपत्रों को /etc/letsencrypt/live/riot.example.com/
निर्देशिका में संग्रहीत किए जाने की संभावना है ।
दंगा आवेदन के लिए एक आभासी मेजबान बनाएँ।
sudo nano /etc/nginx/conf.d/riot.conf
फ़ाइल को पॉप्युलेट करें।
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;
}
नमूना कॉन्फ़िगरेशन फ़ाइल की प्रतिलिपि बनाएँ।
sudo cp /opt/riot/config.sample.json /opt/riot/config.json
अब कुछ बदलाव करने के लिए कॉन्फ़िगरेशन फ़ाइल को संपादित करें।
sudo nano /opt/riot/config.json
निम्नलिखित पंक्तियों का पता लगाएं।
"default_hs_url": "https://matrix.org",
"default_is_url": "https://vector.im",
अपने मैट्रिक्स सर्वर के URL के साथ डिफ़ॉल्ट होम सर्वर URL के मूल्य को बदलें। पहचान सर्वर URL के लिए, आप डिफ़ॉल्ट विकल्प का उपयोग कर सकते हैं, या आप इसकी पहचान मैट्रिक्स पहचान सर्वर को भी प्रदान कर सकते हैं, जो है https://matrix.org
।
"default_hs_url": "https://matrix.example.com",
"default_is_url": "https://matrix.org",
फ़ाइल सहेजें और बाहर निकलें। Nginx उपयोगकर्ता को फ़ाइलों का स्वामित्व प्रदान करें।
sudo chown -R nginx:nginx /opt/riot/
Nginx को पुनरारंभ करें।
sudo systemctl restart nginx
आप दंगा पर पहुंच सकते हैं https://riot.example.com
। अब आप उस उपयोगकर्ता नाम और पासवर्ड का उपयोग करके लॉग इन कर सकते हैं, जिसे आपने पहले बनाया है। आप डिफ़ॉल्ट सर्वर का उपयोग करके कनेक्ट कर सकते हैं क्योंकि हमने अपने एप्लिकेशन के लिए पहले से ही डिफ़ॉल्ट मैट्रिक्स सर्वर को बदल दिया है।
अब आपके पास मैट्रिक्स सिनैप्स होम सर्वर अप और रनिंग है। आपके पास Riot की एक होस्टेड प्रति भी है, जिसका उपयोग आप अन्य लोगों को अपनी मैट्रिक्स आईडी, ईमेल य��� मोबाइल नंबर का उपयोग करके संदेश भेजने के लिए कर सकते हैं। अपने सर्वर पर एक चैट रूम बनाकर शुरुआत करें और अपने दोस्तों को अपने द्वारा बनाए गए चैट रूम में शामिल होने के लिए मैट्रिक्स पर आमंत्रित करें।
एक अलग प्रणाली का उपयोग? परिचय CyberPanel बाजार पर पहला नियंत्रण पैनल है जो दोनों खुला स्रोत है और OpenLiteSpeed का उपयोग करता है। क्या थी?
FFmpeg ऑडियो और वीडियो रिकॉर्ड करने, कन्वर्ट करने और स्ट्रीम करने के लिए एक लोकप्रिय ओपन सोर्स समाधान है, जो सभी प्रकार की ऑनलाइन स्ट्रीमिंग सेवाओं में व्यापक रूप से उपयोग किया जाता है। मैं
एलयूकेएस (लिनक्स यूनिफाइड की सेटअप) लिनक्स के लिए उपलब्ध विभिन्न डिस्क एन्क्रिप्शन प्रारूपों में से एक है जो प्लेटफॉर्म एग्नॉस्टिक है। यह ट्यूटोरियल आपको बुद्धि प्रदान करेगा
अक्टूबर एक खुला स्रोत सामग्री प्रबंधन प्रणाली है जो लारवेल PHP फ्रेमवर्क पर आधारित है। एक सुरुचिपूर्ण इंटरफ़ेस और एक संक्षिप्त मॉड्यूलर वास्तुकला के साथ
RockMongo एक वेब-आधारित MongoDB प्रबंधन उपकरण है जो MySQL प्रबंधन उपकरण के समान है: phpMyAdmin। यह ट्यूटोरियल इंस्टॉलिन की प्रक्रिया को कवर करेगा
एक अलग प्रणाली का उपयोग? आवश्यकताएँ एक Vultr CentOS 7 सर्वर उदाहरण। एक sudo यूजर। चरण 1: सिस्टम को पहले अपडेट करें, अपने सिस्टम सर्वर को वें में अपडेट करें
एक अलग प्रणाली का उपयोग? नेटडाटा रियल-टाइम सिस्टम मेट्रिक्स मॉनिटरिंग के क्षेत्र में एक उभरता हुआ सितारा है। एक ही तरह के अन्य उपकरणों की तुलना में, नेटडाटा:
एक अलग प्रणाली का उपयोग? इस ट्यूटोरियल में, बीमार समझा जा रहा है कि CentOS 7 पर एक स्टारबाउंड सर्वर को कैसे सेटअप किया जाए। आवश्यक शर्तें आपको इस गेम को खुद पर बनाना होगा।
वेब एप्लिकेशन लिखने के लिए Django एक लोकप्रिय पायथन फ्रेमवर्क है। Django के साथ, आप तेजी से अनुप्रयोगों का निर्माण कर सकते हैं, पहिया को फिर से बनाए बिना। अगर आप चाहते हैं
एक अन्य Vultr ट्यूटोरियल में आपका स्वागत है। यहां, आप सीखेंगे कि एसएएमपी सर्वर कैसे स्थापित करें और चलाएं। यह गाइड CentOS 6 के लिए लिखा गया था
Revive Adserver एक स्वतंत्र और खुला स्रोत विज्ञापन सेवारत प्रणाली है जिसका उपयोग वेबसाइटों पर, ऐप्स में और / या वीडियो खिलाड़ियों में विज्ञापनों को प्रबंधित करने के लिए किया जा सकता है। इस लेख में,
पार्स सर्वर पार्स बैकेंड सेवा के लिए खुला स्रोत विकल्प है जिसे बंद किया जा रहा है। यदि आप इस सेवा के प्रशंसक हैं, तो आप अभी भी वें का आनंद ले सकते हैं
एक अलग प्रणाली का उपयोग? एल्ग एक खुला स्रोत सोशल नेटवर्किंग इंजन है जो परिसर के सामाजिक नेटवर्क जैसे सामाजिक वातावरण के निर्माण की अनुमति देता है
एक अलग प्रणाली का उपयोग? डायस्पोरा एक गोपनीयता-जागरूक, ओपन सोर्स सोशल नेटवर्क है। इस ट्यूटोरियल में, आप सीखेंगे कि डायस्पोरा पो को कैसे सेट और कॉन्फ़िगर करें
अवलोकन यह लेख आपको कुबेरनेट क्लस्टर प्राप्त करने और कुछ ही समय में कुबेदम के साथ चलने में मदद करने के लिए है। यह गाइड दो सर्वरों को तैनात करेगा
परिचय लिनक्स सिस्टम पर काम करने का मतलब है कि कोई कमांड लाइन का उपयोग अधिक बार नहीं कर रहा है। स्वागत के रूप में बार-बार लंबी निर्देशिका के नाम टाइप करना
ओपनकार्ट एक लोकप्रिय ओपन सोर्स शॉपिंग कार्ट सॉल्यूशन है जिसे उत्कृष्ट कार्यक्षमता, उपयोग में आसानी और उपस्थिति प्रदान करने के लिए डिज़ाइन किया गया है। OpenCart के साथ, आप सीए
एक अलग प्रणाली का उपयोग? परिचय Sails.js Node.js के लिए MVC फ्रेमवर्क है, जो रूबी ऑन रेल्स के समान है। यह आधुनिक अनुप्रयोगों को विकसित करने के लिए बनाता है
एक अलग प्रणाली का उपयोग? NGINX को HTTP / HTTPS सर्वर, रिवर्स प्रॉक्सी सर्वर, मेल प्रॉक्सी सर्वर, लोड बैलेंसर, TLS टर्मिनेटर, या कैचिन के रूप में उपयोग किया जा सकता है
एक अलग प्रणाली का उपयोग? dotCMS जावा में लिखा एक ओपन सोर्स एंटरप्राइज ग्रेड कंटेंट मैनेजमेंट सिस्टम है। इसमें लगभग हर सुविधा आवश्यक टी होती है
LiteCart PHP, jQuery और HTML में लिखा गया एक स्वतंत्र और ओपन सोर्स शॉपिंग कार्ट प्लेटफॉर्म है। यह ई-कॉमर्स सॉफ्टवेअर का उपयोग करने के लिए एक सरल, हल���का और आसान है
एनएफएस एक नेटवर्क-आधारित फाइल सिस्टम है जो कंप्यूटरों को कंप्यूटर नेटवर्क पर फाइलों तक पहुंचने की अनुमति देता है। यह मार्गदर्शिका बताती है कि आप एनएफ पर फ़ोल्डर्स को कैसे उजागर कर सकते हैं
एक अलग प्रणाली का उपयोग? माटोमो (पूर्व में पिविक) एक ओपन सोर्स एनालिटिक्स प्लेटफॉर्म है, जो गूगल एनालिटिक्स का एक खुला विकल्प है। Matomo स्रोत को होस्ट किया गया है
टीमटॉक एक कॉन्फ्रेंसिंग प्रणाली है जो उपयोगकर्ताओं को उच्च-गुणवत्ता वाले ऑडियो / वीडियो वार्तालाप, टेक्स्ट चैट, स्थानांतरण फ़ाइलें और स्क्रीन साझा करने की अनुमति देती है। यह मैं
परिचय यह आलेख बताएगा कि विंडोज सर्वर 2012 पर गारस मोड सर्वर को कैसे डाउनलोड और इंस्टॉल किया जाए। यह गाइड गहराई में होने के लिए बनाया गया है।
एक अलग प्रणाली का उपयोग? परिचय CyberPanel बाजार पर पहला नियंत्रण पैनल है जो दोनों खुला स्रोत है और OpenLiteSpeed का उपयोग करता है। क्या थी?
FFmpeg ऑडियो और वीडियो रिकॉर्ड करने, कन्वर्ट करने और स्ट्रीम करने के लिए एक लोकप्रिय ओपन सोर्स समाधान है, जो सभी प्रकार की ऑनलाइन स्ट्रीमिंग सेवाओं में व्यापक रूप से उपयोग किया जाता है। मैं
एलयूकेएस (लिनक्स यूनिफाइड की सेटअप) लिनक्स के लिए उपलब्ध विभिन्न डिस्क एन्क्रिप्शन प्रारूपों में से एक है जो प्लेटफॉर्म एग्नॉस्टिक है। यह ट्यूटोरियल आपको बुद्धि प्रदान करेगा
Vultr अपने VPS को कॉन्फ़िगर करने, स्थापित करने और उपयोग करने के लिए कई अलग-अलग तरीके प्रदान करता है। क्रेडेंशियल एक्सेस करें आपके VPS के लिए डिफ़ॉल्ट एक्सेस क्रेडेंशियल ar
अक्टूबर एक खुला स्रोत सामग्री प्रबंधन प्रणाली है जो लारवेल PHP फ्रेमवर्क पर आधारित है। एक सुरुचिपूर्ण इंटरफ़ेस और एक संक्षिप्त मॉड्यूलर वास्तुकला के साथ