Az IRC népszerű a nyílt forráskódú szoftverek fejlesztői és felhasználói körében. Az IRC egyik hátránya, hogy amikor nem vagy online, lemaradhatsz a fontos beszélgetésekről vagy a beceneved említéséről. A Quassel és egy kis VPS segítségével IRC-kitartás érhető el, web alapú felhasználói felülettel és kereshető hátralékkal kiegészítve.
Feltételezem, hogy már tudja, hogyan kell VPS-t létrehozni a Vultr vezérlőpultján.
Először is be kell jelentkeznie a Vultr vezérlőpultjára, és létre kell hoznia magának egy vadonatúj VPS-t. Ebben a példában egy Debian 9-et állítottam be, 2,50 USD/hó VPS-t. Bármilyen méretet választhat, de a cél a lehető legalacsonyabb költség. Adnia kell egy nevet, például, quassel.example.netés győződjön meg arról, hogy be van állítva egy DNS A rekord.
Mivel ezek az utasítások a Debianra összpontosítanak, kissé módosítania kell őket, ha más Linux-disztribúciót, például Ubuntut vagy CentOS-t kíván használni.
Miután a VPS fut, telepítenie kell néhány csomagot az alapok használatához.
Telepítenie kell a Quassel-Core-t, a PostgreSQL-t, az Apache-t és a PHP-t, valamint néhány további könyvtárat, hogy kommunikáljon az SQL-kiszolgálóval.
apt-get install quassel-core postgresql libqt5sql5-psql apache2 php php-pgsql
Szüksége lesz a Node.js-re is. A személyes IRC felhőszerver webes részéhez Node szükséges. A teljes telepítési utasítás itt található , de csak erre a két sorra lesz szüksége:
# curl -sL https://deb.nodesource.com/setup_8.x | bash -
# apt-get install -y nodejs
Ezután létre kell hoznia egy adatbázist a Quassel maghoz. Váltson a Postgres felhasználóra, és futtassa psql.
# su - postgres
$ psql
Miután a PostgreSQL promptnál van, létre kell hoznia egy felhasználót a Quasselhez és az adatbázisához:
CREATE USER quassel ENCRYPTED PASSWORD 'somepassword';
CREATE DATABASE quassel WITH OWNER quassel ENCODING 'UTF8';
Most, hogy az alapok konfigurálva vannak, elindíthatja a Quassel klienst, és csatlakozhat a magjához.
Amikor elindítja a Quassel klienst a helyi gépen, megjelenik egy csatlakozási párbeszédpanel. Adja meg a VPS IP-címét vagy gazdagépnevét és a portszámot (alapértelmezett: 4242), majd válassza az SSL lehetőséget. Ha rendelkezik proxyszerverrel, a párbeszédablakban megadhatja a proxy adatait.
Az első csatlakozás során egy másik varázslón keresztül konfigurálhatja a magot. Adja meg első Quasselcore felhasználónevét és jelszavát. Az első felhasználó a rendszergazda lesz. Ezután válassza ki a PostgreSQL adatbázis-háttérprogramot, és adja meg a Quassel-adatbázis felhasználónevét és jelszavát az előző lépésben meghatározottak szerint.
Miután konfigurálta a mag alapjait, beállíthatja a webes részt. Ez lehetővé teszi, hogy bármely webböngészőből csatlakozzon a magjához. A Quassel-Webservert fogjuk használni .
Felhasználó létrehozása a webszolgáltatáshoz:
# useradd -d /opt/quassel-webserver -M -r quassel-webserver
Most húzza le a Quassel webszervert, és módosítsa a tulajdonjogot a korábban létrehozott felhasználóra:
# git clone https://github.com/magne4000/quassel-webserver.git /opt/quassel-webserver
# chown -R quassel-webserver:quasselweb-server /opt/quassel-webserver
Ezután "telepítenie" kell a Node.js alkalmazást:
# su - quassel-webserver
$ npm install --production
Másolja át a settings.js, settings-user.js és módosítsa a host, forcedefaultés prefixpathértékeket:
host: 'localhost',
forcedefault: 'true',
prefixpath: '/app'
Amikor /opt/quassel-webserverrootként van az elérési úton, telepítheti a Systemd szolgáltatásfájlját.
# cp scripts/quassel-webserver.service /lib/systemd/system/quassel-webserver.service
Meg kell majd szerkeszteni /lib/systemd/system/quassel-webserver.service, és módosítsa a ExecStartsort:
ExecStart=/usr/bin/node /opt/quassel-webserver/app.js -l 127.0.0.1 -m http
Most már engedélyezheti és elindíthatja a Quassel webszervert:
systemctl enable quassel-webserver.service
systemctl start quassel-webserver.service
A parancs végrehajtásával ellenőrizheti, hogy a quassel-webszerver fut-e systemctl status quassel-webserver.service. Ha látod Active: active (running), minden készen áll!
Ezután konfiguráljuk az Apache-t.
A kezdéshez engedélyeznie kell néhány modult, például a proxy_http, proxy_wstunnelés a rewrite.
# a2enmod proxy_http proxy_wstunnel rewrite
Hozzon létre egy új konfigurációs fájlt Quassel számára:
# nano /etc/apache2/sites-available/quassel.conf
<VirtualHost *:80>
ServerName quassel.example.net
ServerAdmin quassel@example.net
DocumentRoot /var/www/html
ErrorLog ${APACHE_LOG_DIR}/error.log
CustomLog ${APACHE_LOG_DIR}/access.log combined
# Enable Rewrite
RewriteEngine on
# Redirect to /app by default
RedirectMatch ^/$ /app
# Quassel Webserver
RewriteRule /app/p/socket(.*) ws://127.0.0.1:64080/app/p/socket$1 [P,L]
ProxyPass /app http://127.0.0.1:64080/app
</VirtualHost>
És engedélyezze webhelyét:
a2ensite quassel
A módosítások alkalmazásához indítsa újra az Apache-ot:
systemctl restart apache2
Ha minden jól ment, most megkeresheti a quassel-webserverpéldányát a következő címen: http://quassel.example.net.
Ezután beállítjuk a hátralékos keresést . Ehhez az quassel-coreadatbázis módosítására lesz szükség . Először is kezdjük a forráskód klónozásával:
# git clone https://github.com/justjanne/quassel-rest-search.git /opt/quassel-rest-search
A klónozás után nevezze át a fájlt qrs_config.default.phperre, qrs_config.phpés szerkessze a fájlt. Meg kell határoznia az adatbázist db_name, db_user, db_pathés path_prefix. Valahogy így kell kinéznie a végén:
<?php
define('db_host', 'localhost');
define('db_port', 5432);
define('db_name', 'quassel');
//Only change this if you know what you are doing
define('db_connector', null);
define('db_user', 'quassel');
define('db_pass', 'somepassword');
define('backend', 'pgsql-smart');
define('path_prefix', '/search');
Ezt követően módosítjuk az adatbázist, amelyet használjon quassel-rest-search:
Váltson a postgresfelhasználóra, és futtassa psql:
# su - postgres
$ psql quassel
Először adjon hozzá egy új oszlopot a hátraléktáblázathoz:
ALTER TABLE backlog ADD COLUMN tsv tsvector;
Másodszor, adja hozzá a két új indexet:
CREATE INDEX backlog_tsv_idx
ON backlog
USING gin(tsv);
CREATE INDEX backlog_tsv_filtered_idx
ON backlog
USING gin(tsv)
WHERE (type & 23559) > 0;
Harmadszor, állítson be egy triggert a tsv oszlop feltöltéséhez:
CREATE TRIGGER tsvectorupdate
BEFORE INSERT OR UPDATE
ON backlog
FOR EACH ROW
EXECUTE PROCEDURE tsvector_update_trigger('tsv', 'pg_catalog.english', 'message');
Negyedszer töltse fel a " tsv" oszlopot:
UPDATE backlog SET messageid = messageid;
Most frissítheti a korábban létrehozott Apache konfigurációt, és hozzáadhatja:
# Quassel Search
Alias /search /opt/quassel-rest-search
<Directory /opt/quassel-rest-search>
Require all granted
</Directory>
Indítsa újra az Apache-ot:
systemctl restart apache2
Ha minden jól ment, navigálhat ide, http://quassel.example.net/searchés megjelenik egy bejelentkezési képernyő.
Jó alkalom lehet webszerverének biztonságba helyezésére a Let's Encrypt segítségével. A Let's Encrypt telepítésével és konfigurálásával kapcsolatos részletek az EFF webhelyén vagy itt, a Vultr docs oldalán találhatók .
Abban az esetben, ha attól tart, hogy kifogy a RAM, érdemes lehet engedélyezni a cserét a VPS-en. Kérjük, kövesse ezt a Linux-csere oktatóanyagot .