Telepítsen egy XMPP (Jabber) szervert a Prosody alkalmazással [Frissítve]


Sokan használjuk Gtalk o Facebook Chat anélkül, hogy tudnánk, hogy a kommunikációhoz használt protokoll nem más, mint XMPP (Bővíthető üzenetküldési és jelenléti protokoll) amely nyitott is.

En GNU / Linux több alkalmazásunk is van a saját szerver felállításához XMPP o fecseg amint az is ismert, egyesek bonyolultabbak, mint mások a konfigurálás során. Például van ejabberd, ami meglehetősen egyszerű és könnyű, de ha sokkal többet akarunk optimalizálni, akkor van Verstan.

Akkor otthagylak egy cikket kiadva GUTL az egyik felhasználónktól (Hugo), és ahol megmutatja, hogyan konfigurálhatjuk saját szerverünket XMPP a Verstan.

Bevezetés

Amikor XMPP (Jabber) szervert telepítenek a helyi hálózaton történő belső üzenetküldéshez, sokan a jabber, az ejabberd vagy az openfire mellett döntenek, de bár működnek, ezek az alkalmazások sok erőforrást igényelhetnek.

Ha kicsi vagy közepes hálózata van, és csak egy egyszerű azonnali üzenetküldő szolgáltatást szeretne, akkor szerencsére van egy könnyű szerver alternatíva, az úgynevezett prosody, amely bár az LUA-ban van programozva, amely egy értelmezett nyelv, a fejlesztői szerint nagyon jól működik köszönhetően hogy luajit.

Ez a rövid bemutató elmagyarázza a prosody telepítését és konfigurálását a Debian stabilon.

Előkészületek és telepítés

A Prosody csomagok a Debian tárházban találhatók, de a szoftver fejlesztői készítettek egy lerakatot a Debian és a derivatívák számára, amelyek legújabb csomagokat és további modulokat tartalmaznak, és amelyeket az alábbiak szerint használhatunk:

echo "deb http://packages.prosody.im/debian stabil main" | sudo tee -a /etc/apt/sources.list wget http://prosody.im/files/prosody-debian-packages.key -O- | sudo apt-key add - sudo aptitude frissítés

Miután a lerakat hozzá lett adva, folytathatjuk a prosody telepítését (kiegészítve a használandó modulok hozzáadásával) sasl szükség esetén hitelesítési mechanizmusként, amely lehetővé teszi a prozódia integrálását a pam, LDAP, Stb.)

sudo aptitude install sasl2-bin libsasl2-modules-ldap prosody liblua5.1- {sec0, cyrussasl0, event-prosody0}

Ezután folytatjuk az önaláírt tanúsítványok létrehozását a domainünkhöz:

cd / etc / prosody / certs sudo openssl req -new -x509 -days 1095 -nodes -out "mydomain.cu.cert" -keyout "mydomain.cu.key"

A varázsló egy sor adatot fog megkérdezni tőlünk, amelyek közül az igazán lényeges a „Common Name (pl. Szerver FQDN vagy a TE neved) ””, ahol fel kell tennünk a domainünket, mivel ezt a szakaszban fogjuk használni virtuális gazdagép konfigurációs fájl.

Ezenkívül, ha azon a szerveren, ahová a prosody-t telepítjük, konfiguráltuk iptables Alapértelmezett tiltási házirendek esetén meg kell nyitnunk a hálózatunkhoz szükséges portokat, például:

sudo iptables -A BEMENET -i lo -j ACCEPT sudo iptables -A BEMENET -i eth1 -s 192.168.0.0/24 -p tcp -m tcp -m állapot - állapot BEÁLLÍTOTT, KAPCSOLÓDÓ -j ELFOGADJA sudo iptables -A BEMENET - i eth1 -s 192.168.0.0/24 -p tcp -m tcp -m multiport --portok 5222,5223,5269 -m állapot - állam ÚJ -j ACCEPT

konfiguráció

Ezután folytatjuk a konfigurációs fájl egyes sorainak módosítását, amelyekhez szerkesztenünk kell /etc/prosody/prosody.cfg.lua így néz ki így:

ports = {5222, 5269} ssl_ports = {5223} admins = {"juan@mydomain.cu", "pedro@mydomain.cu"} use_libevent = true; - az alapértelmezett opció a select () függvényen alapszik, ehelyett a libevent az epoll () -t használja, amely hatékonyabb és méretezhetőbb. modules_enabled = {"névsor"; "saslauth"; "tls"; "visszahívás"; "korong"; "magán"; "vcard"; "magánélet"; "tömörítés"; "legacyauth"; "változat"; "üzemidő"; "idő"; "ping"; "elevenség"; "Regisztráció"; - ne tiltsa le ezt a modult, lehetővé teszi nemcsak a regisztrációt, hanem az "adhoc" jelszavak megváltoztatását is; "admin_adhoc"; "posix"; "szamárság"; - adja hozzá ezt a sort, ha engedélyezni szeretné a jabber-t a http-en keresztül; allow_registration = hamis; - a biztonság kedvéért letiltva - váltson igazra, ha engedélyezni szeretné a fiókok létrehozását az ügyfélből. ssl = {key = "/etc/prosody/certs/localhost.key"; tanúsítvány = "/etc/prosody/certs/localhost.cert"; } storage = "belső"; - az alapértelmezett tárhely egy xml fájl - opcionálisan használhatjuk az "sql" tárolási módszert is - ez lehetővé teszi az SQLite, MySQL vagy PostgreSQL használatát háttérprogramként (bár bizonyos paramétereket hozzá kell adni) authentication = "internal_hashed"; - használhatjuk a "internal_plain" szót, ha az ügyfél nem támogatja a SCRAM-SHA-1-et - ha a sasl metódust akarjuk használni az LDAP későbbi használatához, akkor a "cyrus" log = {error = "/ var / log / prosody alkalmazást kell használnunk / prosody. err "; info = "/var/log/prosody/prosody.log"; } pidfile = "/var/run/prosody/prosody.pid"; VirtualHost "localhost" VirtualHost "mydomain.cu" ssl = {kulcs = "/etc/prosody/certs/mydomain.cu.key"; tanúsítvány = "/etc/prosody/certs/mydomain.cu.crt"; }

A konfigurációs fájl módosítása után újraindítjuk a szolgáltatást:

sudo szolgáltatás prozódia kivonása

Most folytatjuk a számlák létrehozását. Ebben az esetben, mivel a konfigurációs fájlban letiltjuk a nyilvántartást az ügyfelektől, a fiókokat manuálisan kell létrehozni a szerveren. A konfigurációban választott hitelesítési módszer (internal_hashed) lehetővé teszi, hogy a jelszavakat ne egyértelműen, hanem a mechanizmus mentse SCRAM-SHA-1. Ha az általunk használni kívánt üzenetkezelő kliens nem támogatja ezt a mechanizmust, akkor a "internal_plain" metódust lehet használni a konfigurációban.

Először létrehozzuk a szolgáltatás rendszergazdáinak fiókjait, amelyeket deklarálunk a konfigurációban (azok deklarálása nem jelenti azt, hogy automatikusan létrejönnek):

sudo prosodyctl adduser juan@mydomain.cu sudo prosodyctl adduser pedro@mydomain.cu

Használhatjuk ugyanazt a parancsot bármely más létrehozni kívánt fiókhoz.

Végül ellenőrizzük, hogy a szolgáltatás fut-e:

sudo prosodyctl állapot

A következő üzenetet kell kapnunk:

A Prosody a PID 1310-gyel fut

Ügyfél konfiguráció

A konfiguráció az ügyféltől függ, de általában a részletek egyszerűek. Például a tört angolság:

"Alap" fül

Felhasználónév: János
tartomány: mydomain.cu
Forrás: pc-John

"Speciális" fül

Kapcsolat biztonsága: Használjon titkosítást, ha lehetséges
Csatlakozási port: 5222
Csatlakozás a szerverhez: myserver.mydomain.cu

jegyzetek

További információ található (ideértve a Cyrus SASL használatát a LDAP és hogyan lehet bejegyzéseket létrehozni DNS) A ezt a cikket a Debian Wikiből.

Un usuario comenta via DesdeLinux que para detener realmente el servicio ha necesitado ejecutar pkill lua5.1


Hagyja megjegyzését

E-mail címed nem kerül nyilvánosságra. Kötelező mezők vannak jelölve *

*

*

  1. Az adatokért felelős: Miguel Ángel Gatón
  2. Az adatok célja: A SPAM ellenőrzése, a megjegyzések kezelése.
  3. Legitimáció: Az Ön beleegyezése
  4. Az adatok közlése: Az adatokat csak jogi kötelezettség alapján továbbítjuk harmadik felekkel.
  5. Adattárolás: Az Occentus Networks (EU) által üzemeltetett adatbázis
  6. Jogok: Bármikor korlátozhatja, helyreállíthatja és törölheti adatait.

  1.   KZKG ^ Gaara dijo

    Tetszik ... lássuk, egyszer és mindenkorra megváltoztatom-e az OpenFire-t ejabberd-re vagy erre a Prosody-ra 🙂

    1.    élénk dijo

      Már pontosan azért is elvégzem a teszteket a VirtualBox-ban .. mert ha rád várunk fiam .. ¬¬

      1.    KZKG ^ Gaara dijo

        ^ - ^ U ... hehe ...
        Most jegyet küldök a tárhelyszolgáltatónak, és megkérdezem a DNS-rekordot, amelyet el kell távolítanunk a „jabberről” .______

        1.    élénk dijo

          Oké. Jabber, IRC, Facebook, Gtalk, nem tudom, hogyan és hol, de csatlakozz ..

  2.   Ernest Infante dijo

    Milyen a prosody integrációja az LDAP-val? és a BD?

  3.   rots87 dijo

    pár kép a kevésbé hozzáértők számára nem lenne rossz ^. ^

  4.   vadász dijo

    Otthon van prozódia, tesztelés céljából telepítettem, és az egyszerűsége miatt tetszett. Részlet a szerver leállításakor meg kell csinálnom egy pkill lua5.1-et, hogy valóban leállítsam.

  5.   auroszx dijo

    Wow, ez érdekes. Van-e mód arra, hogy mások létrehozhassanak felhasználókat egy grafikus felhasználói felületen keresztül (lehet webes)? Hogyan járna hozzá egy domain használatához? 😛

    1.    vadász dijo

      Engedélyezheti a regisztrációt a konfigurációban, és ugyanazon kliens jabbertől regisztrálja őket, ha bejelöli a fiók létrehozásának lehetőségét a szerveren.

      allow_registration = igaz;

  6.   Ferran dijo

    Prozódia csomagokat keresek slackware-ben, kiváló oktatóanyag. Egészségére

  7.   Arturo Molina dijo

    Hogyan ellenőrizhetem, hogy a felhasználónak sikerült-e hitelesítenie? vagy honnan tudhatom, hogy egy felhasználó csatlakozik-e a szerverhez?

  8.   @Jlcux dijo

    Sikerült 😀 Helyesen tudtam telepíteni és konfigurálni. Telepítse a kiszolgálót egy számítógépre, az ügyfél pedig egy másik számítógépre. de van egy problémám. Annak érdekében, hogy az ügyfél tudja, hogy a szerverem a domainnel (medellinlibre.org) HELYI. Hozzá kell adnom a gazdagép fájlhoz az IPDELSERVIDOR medellinlibre.org fájlt. Ha nem, akkor nyilvánvaló okokból nem csatlakozik. A kérdésem az, hogy nincs-e mód arra, hogy a hálózat összes PC-je alapértelmezés szerint megtudja, hogy ez a tartomány egy adott IP-n található a LAN-on?

    1.    ltd dijo

      ugyanaz a kétely! tudtad a végén ?? Prozódiával kezdem ...

    2.    vadász dijo

      Nagyon egyszerű, a pidgin a speciális beállításokban adja meg a szerver IP-jét, a másik lehetőség egy dns csatlakoztatása a LAN-ra.

  9.   Francisco dijo

    Ez a téma nagyon érdekes, és tudni akartam, hogy a Prosody támogatja-e a webaljzatokat. Érdekelne egy xmpp webes klienst készíteni

    1.    @Jlcux dijo
  10.   Inukaze dijo

    Szia, nincs az oktatóprogram olyan verziója, amelynek konfigurációja csak egy belső intranetre vonatkozik? Nincs tartomány vagy hasonló. alig úgy, hogy csak egy Liñux-zal rendelkező számítógép szerver és a hozzá csatlakozó többi számítógép

    Kizárólag az intranetes számítógépek között lehet beszélgetni a pidgin keresztül.