Cum se instalează Quassel pe Debian 9

IRC este popular printre dezvoltatorii și utilizatorii de software open source. Unul dintre dezavantajele IRC este atunci când nu sunteți on-line, puteți rata conversațiile sau mențiunile importante despre porecla dvs. Cu Quassel și un VPS mic, puteți avea persistență IRC, completată cu o UI bazată pe web și un backlog de căutare.

Voi presupune că știți deja cum puteți crea un VPS în panoul de control Vultr.

În primul rând, va trebui să vă conectați la panoul dvs. de control Vultr și să vă creați un VPS nou. În acest exemplu, am configurat un VPS Debian 9, 2,50 USD / lună VPS. Puteți alege orice dimensiune, dar scopul acesta este să fie cât mai mic posibil. Va trebui să îi dați un nume, precum quassel.example.netși să vă asigurați că aveți o înregistrare DNS A configurată.

Deoarece aceste instrucțiuni sunt concentrate în jurul Debian, va trebui să le modificați ușor dacă intenționați să utilizați o distribuție Linux diferită, cum ar fi Ubuntu sau CentOS.

Odată ce VPS-ul dvs. funcționează, veți dori să instalați câteva pachete pentru a începe elementele de bază.

Va trebui să instalați Quassel-Core, PostgreSQL, Apache și PHP, împreună cu alte câteva biblioteci pentru a vorbi cu serverul SQL.

apt-get install quassel-core postgresql libqt5sql5-psql apache2 php php-pgsql

De asemenea, veți avea nevoie de Node.js. Porțiunea web a serverului dvs. nor IRC personal necesită Nod. Instrucțiuni complete de instalare pot fi găsite aici , dar acestea sunt singurele două linii de care aveți nevoie:

# curl -sL https://deb.nodesource.com/setup_8.x | bash -
# apt-get install -y nodejs

În continuare, va trebui să creați o bază de date pentru nucleul Quassel. Comutați la utilizatorul Postgres și rulați psql.

# su - postgres
$ psql

După ce ați ajuns la promptul PostgreSQL, va trebui să creați un utilizator pentru Quassel și baza sa de date:

CREATE USER quassel ENCRYPTED PASSWORD 'somepassword';
CREATE DATABASE quassel WITH OWNER quassel ENCODING 'UTF8';

Acum că elementele de bază sunt configurate, acum puteți lansa clientul Quassel și vă puteți conecta la centrul dvs.

Când porniți clientul Quassel pe mașina dvs. locală, vi se va afișa un dialog de conectare. Introdu adresa IP sau numele gazdei VPS și numărul portului (implicit: 4242) și selectează SSL. Dacă aveți un server proxy, puteți introduce detaliile proxy în dialog.

În timpul primei conexiuni, vei fi ghidat de un alt vrăjitor pentru a configura miezul. Introduceți primul nume de utilizator și parola Quasselcore. Primul utilizator va fi administratorul. Apoi, selectați backend-ul bazei de date PostgreSQL și furnizați numele de utilizator și parola bazei de date Quassel așa cum sunt definite la pasul anterior.

După ce ați configurat elementele de bază ale nucleului dvs., puteți configura acum porțiunea web. Acest lucru vă permite să vă conectați la core cu orice browser web. Vom folosi Quassel-Webserver .

Creați un utilizator pentru serviciul web:

# useradd -d /opt/quassel-webserver -M -r quassel-webserver

Acum trageți jos serverul Quassel și schimbați proprietatea la utilizatorul creat anterior:

# git clone https://github.com/magne4000/quassel-webserver.git /opt/quassel-webserver
# chown -R quassel-webserver:quasselweb-server /opt/quassel-webserver

Apoi, trebuie să „instalați” aplicația Node.js:

# su - quassel-webserver
$ npm install --production

Copiază settings.jssettings-user.js și schimba host, forcedefaultși prefixpathvalori:

host: 'localhost',
forcedefault: 'true',
prefixpath: '/app'

În timp ce se află pe /opt/quassel-webservercalea ca root, puteți instala fișierul de service pentru Systemd.

# cp scripts/quassel-webserver.service /lib/systemd/system/quassel-webserver.service

Va trebui să editați /lib/systemd/system/quassel-webserver.serviceși să modificați ExecStartlinia:

ExecStart=/usr/bin/node /opt/quassel-webserver/app.js -l 127.0.0.1 -m http

Acum puteți activa și porni serverul web Quassel:

systemctl enable quassel-webserver.service
systemctl start quassel-webserver.service

Puteți verifica dacă quassel-webserver-ul se execută executând systemctl status quassel-webserver.service. Dacă vedeți Active: active (running), sunteți cu toții pregătiți!

În continuare, vom configura configurația Apache.

Va trebui să activați câteva module pentru a începe, cum ar fi proxy_http, proxy_wstunnelși rewrite.

# a2enmod proxy_http proxy_wstunnel rewrite

Creați un nou fișier de configurare pentru Quassel:

# nano /etc/apache2/sites-available/quassel.conf

<VirtualHost *:80>

        ServerName quassel.example.net
        ServerAdmin [email protected]
        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>

Și activați site-ul:

a2ensite quassel

Reporniți Apache pentru a aplica modificările:

systemctl restart apache2

Dacă totul a decurs bine, puteți naviga acum la quassel-webserverinstanța dvs. la http://quassel.example.net.

În continuare, vom configura o căutare în retard . Acest lucru va necesita modificări ale quassel-corebazei de date. În primul rând, să începem cu clonarea codului sursă:

# git clone https://github.com/justjanne/quassel-rest-search.git /opt/quassel-rest-search

Odată clonate, redenumiți fișierul qrs_config.default.phppentru a qrs_config.phpși edita fișierul. Veți avea nevoie pentru a defini baza de date db_name, db_user, db_pathși path_prefix. Ar trebui să ajungă să arate așa ceva:

<?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');

În continuare, modificăm baza de date pentru a fi utilizate de quassel-rest-search:

Comutați la postgresutilizator și rulați psql:

# su - postgres
$ psql quassel

Mai întâi, adăugați o nouă coloană la tabelul de backlog:

ALTER TABLE backlog ADD COLUMN tsv tsvector;

În al doilea rând, adăugați cei doi noi indici:

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;

În al treilea rând, configurați un declanșator pentru a popula coloana tsv:

CREATE TRIGGER tsvectorupdate
  BEFORE INSERT OR UPDATE
  ON backlog
  FOR EACH ROW
  EXECUTE PROCEDURE tsvector_update_trigger('tsv', 'pg_catalog.english', 'message');

În al patrulea rând, populează tsvcoloana " ":

UPDATE backlog SET messageid = messageid;

Acum puteți actualiza configurația Apache pe care am creat-o anterior și adăugați:

# Quassel Search
Alias /search /opt/quassel-rest-search
<Directory /opt/quassel-rest-search>
        Require all granted
</Directory>

Reporniți Apache:

systemctl restart apache2

Dacă toate au decurs bine, puteți naviga la http://quassel.example.net/searchși veți vedea un ecran de logare.

Acum poate fi un moment bun pentru a vă asigura serverul web utilizând Let's Encrypt. Detalii despre cum se instalează și se configurează „Encrypt Let's” pot fi găsite pe site-ul web al EFF sau aici în documentele Vultr .

În cazul în care vă faceți griji cu privire la rămânerea RAM, este posibil să doriți să activați swap-ul pe VPS. Vă rugăm să urmați acest tutorial de swap pentru Linux .



Leave a Comment

Configurare partajare NFS pe Debian

Configurare partajare NFS pe Debian

NFS este un sistem de fișiere bazat pe rețea care permite computerelor să acceseze fișiere într-o rețea de calculatoare. Acest ghid explică modul în care puteți expune folderele peste NF

Utilizarea vizualizărilor MySQL pe Debian 7

Utilizarea vizualizărilor MySQL pe Debian 7

Introducere MySQL are o caracteristică excelentă cunoscută sub numele de vizualizări. Vizualizările sunt interogări stocate. Gândiți-vă la ele ca la un alias pentru o întrebare altfel lungă. În acest ghid,

Cum se instalează Thelia 2.3 pe Debian 9

Cum se instalează Thelia 2.3 pe Debian 9

Folosind un sistem diferit? Thelia este un instrument open source pentru crearea de site-uri web pentru e-business și gestionarea conținutului online scris în PHP. Codul sursă Thelia i

Configurarea unui chroot pe Debian

Configurarea unui chroot pe Debian

Acest articol vă va învăța cum să configurați o închisoare chroot pe Debian. Presupun că utilizați Debian 7.x. Dacă executați Debian 6 sau 8, acest lucru poate funcționa, bine

Cum se instalează PiVPN pe Debian

Cum se instalează PiVPN pe Debian

Introducere Un mod ușor de a configura un server VPN pe Debian este cu PiVPN. PiVPN este un instalator și un pachet pentru OpenVPN. Creează comenzi simple pentru tine

Instalați Nginx, Wordpress și permiteți criptarea în minute cu EasyEngine pe Debian 8 sau Ubuntu 16.04

Instalați Nginx, Wordpress și permiteți criptarea în minute cu EasyEngine pe Debian 8 sau Ubuntu 16.04

EasyEngine (ee) este un instrument Python care vă permite să gestionați ușor și automat site-urile Wordpress de pe Nginx. Folosind EasyEngine, nu va trebui să dați

Cum se instalează BlogoText CMS pe un VPS Debian 9 LAMP

Cum se instalează BlogoText CMS pe un VPS Debian 9 LAMP

Folosind un sistem diferit? BlogoText CMS este un sistem simplu și ușor, gratuit și liber de gestionare a conținutului de conținut (CMS) și un motor de blog minimalist

Cum se instalează InvoicePlane pe Debian 9

Cum se instalează InvoicePlane pe Debian 9

Folosind un sistem diferit? InvoicePlane este o aplicație gratuită și deschisă de facturare a sursei. Codul sursă al acestuia poate fi găsit în acest depozit Github. Acest ghid

Cum se instalează Backdrop CMS 1.8.0 pe un Debian 9 LAMP VPS

Cum se instalează Backdrop CMS 1.8.0 pe un Debian 9 LAMP VPS

Folosind un sistem diferit? Fundalul CMS 1.8.0 este un sistem de management al conținutului (CMS), simplu și flexibil, mobil, prietenos și gratuit, care ne permite

Cum se instalează BookStack pe Debian 9

Cum se instalează BookStack pe Debian 9

Folosind un sistem diferit? BookStack este o platformă simplă, self-gazdată, ușor de utilizat pentru organizarea și stocarea informațiilor. BookStack este complet gratuit și deschis

Cum se instalează Pagekit 1.0 CMS pe un VPS Debian 9 LAMP

Cum se instalează Pagekit 1.0 CMS pe un VPS Debian 9 LAMP

Folosind un sistem diferit? Pagekit 1.0 CMS este un sistem frumos de gestionare a conținutului (CMS), modular, extensibil și ușor, gratuit și deschis, cu

Instrumente de monitorizare mai bune pentru Ubuntu și CentOS

Instrumente de monitorizare mai bune pentru Ubuntu și CentOS

Introducere Sistemele Linux sunt livrate cu instrumente de monitorizare în mod implicit, cum ar fi top, df și du care ajută la monitorizarea proceselor și a spațiului pe disc. De multe ori însă, acestea sunt

Monitorizați starea serverului Debian cu Munin

Monitorizați starea serverului Debian cu Munin

Munin este un instrument de monitorizare pentru a analiza procesele și resursele din mașina dvs. și prezintă informațiile în grafice printr-o interfață web. Utilizați următoarea

Cum se activează TLS 1.3 în Apache pe Debian 10

Cum se activează TLS 1.3 în Apache pe Debian 10

Folosind un sistem diferit? TLS 1.3 este o versiune a protocolului Transport Layer Security (TLS) care a fost publicat în 2018 ca standard propus în RFC 8446

Cum se instalează Flarum Forum pe Debian 10

Cum se instalează Flarum Forum pe Debian 10

Folosind un sistem diferit? Flarum este un software gratuit și open source de generație viitoare care face discuția online distractivă. Este simplu, rapid și gratuit

Cum se instalează Redaxscript 3.2 CMS pe un VPS Debian 9 LAMP

Cum se instalează Redaxscript 3.2 CMS pe un VPS Debian 9 LAMP

Folosind un sistem diferit? Redaxscript 3.2 CMS este un sistem de gestionare a conținutului (CMS) modern și ultra ușor, gratuit și deschis, cu rachetă

Adaugă un interval de adrese IP la serverul tău (CentOS / Ubuntu / Debian)

Adaugă un interval de adrese IP la serverul tău (CentOS / Ubuntu / Debian)

Introducere În acest tutorial, vom acoperi procesul de adăugare a întregului interval / subrețea IP la un server Linux care rulează CentOS, Debian sau Ubuntu. Procesul

Configurarea Counter Strike: Source pe Debian

Configurarea Counter Strike: Source pe Debian

În acest ghid, vom stabili un Counter Strike: Server de joc sursă pe Debian 7. Aceste comenzi au fost testate pe Debian 7, dar ar trebui să funcționeze o

Instalați PBX într-un Flash 5 pe Debian 8

Instalați PBX într-un Flash 5 pe Debian 8

PBX In A Flash 5 (PIAF5) este un sistem de operare bazat pe Debian 8, care transformă Vultr VPS-ul dvs. într-un PBX complet. Acesta posedă următoarele caracteristici și multe altele.

Cum se instalează Dolibarr pe Debian 9

Cum se instalează Dolibarr pe Debian 9

Folosind un sistem diferit? Dolibarr este un plan de resurse pentru întreprinderi open source (ERP) și managementul relațiilor cu clienții (CRM) pentru companii. Dolibarr

O perspectivă asupra a 26 de tehnici de analiză a datelor mari: partea 1

O perspectivă asupra a 26 de tehnici de analiză a datelor mari: partea 1

O perspectivă asupra a 26 de tehnici de analiză a datelor mari: partea 1

6 lucruri extrem de nebunești despre Nintendo Switch

6 lucruri extrem de nebunești despre Nintendo Switch

Mulți dintre voi cunoașteți Switch care va fi lansat în martie 2017 și noile sale funcții. Pentru cei care nu știu, am pregătit o listă de funcții care fac din „Switch” un „gadget obligatoriu”.

Promisiuni tehnologice care sunt încă nelivrate

Promisiuni tehnologice care sunt încă nelivrate

Aștepți ca giganții tehnologiei să-și îndeplinească promisiunile? vezi ce a ramas nelivrat.

Funcționalitățile straturilor arhitecturii de referință pentru Big Data

Funcționalitățile straturilor arhitecturii de referință pentru Big Data

Citiți blogul pentru a cunoaște diferitele straturi din Arhitectura Big Data și funcționalitățile acestora în cel mai simplu mod.

Cum poate AI să ducă automatizarea proceselor la următorul nivel?

Cum poate AI să ducă automatizarea proceselor la următorul nivel?

Citiți asta pentru a afla cum devine populară inteligența artificială în rândul companiilor la scară mică și cum crește probabilitățile de a le face să crească și de a le oferi concurenților avantaje.

CAPTCHA: Cât timp poate rămâne o tehnică viabilă pentru distincția uman-AI?

CAPTCHA: Cât timp poate rămâne o tehnică viabilă pentru distincția uman-AI?

CAPTCHA a devenit destul de dificil de rezolvat pentru utilizatori în ultimii ani. Va fi capabil să rămână eficient în detectarea spam-ului și a botului în viitor?

Singularitatea tehnologică: un viitor îndepărtat al civilizației umane?

Singularitatea tehnologică: un viitor îndepărtat al civilizației umane?

Pe măsură ce Știința Evoluează într-un ritm rapid, preluând multe dintre eforturile noastre, crește și riscurile de a ne supune unei Singularități inexplicabile. Citiți, ce ar putea însemna singularitatea pentru noi.

Telemedicină și îngrijire medicală la distanță: viitorul este aici

Telemedicină și îngrijire medicală la distanță: viitorul este aici

Ce este telemedicina, îngrijirea medicală la distanță și impactul acesteia asupra generației viitoare? Este un loc bun sau nu în situația de pandemie? Citiți blogul pentru a găsi o vedere!

Te-ai întrebat vreodată cum câștigă hackerii bani?

Te-ai întrebat vreodată cum câștigă hackerii bani?

Poate ați auzit că hackerii câștigă mulți bani, dar v-ați întrebat vreodată cum câștigă acești bani? sa discutam.

Actualizarea suplimentului macOS Catalina 10.15.4 cauzează mai multe probleme decât rezolvă

Actualizarea suplimentului macOS Catalina 10.15.4 cauzează mai multe probleme decât rezolvă

Recent, Apple a lansat macOS Catalina 10.15.4 o actualizare suplimentară pentru a remedia problemele, dar se pare că actualizarea provoacă mai multe probleme care duc la blocarea mașinilor Mac. Citiți acest articol pentru a afla mai multe