Nainstalujte si server XMPP (Jabber) s aplikací Prosody [Aktualizováno]


Mnoho z nás používá GTalk o Facebook Chat aniž bychom věděli, že protokol, který používáme ke komunikaci, není nikdo jiný než XMPP (Protokol rozšiřitelných zpráv a přítomnosti) který je také otevřený.

En GNU / Linux máme několik aplikací pro nastavení vlastního serveru XMPP o brebentit jak je také známo, některé jsou při konfiguraci složitější než jiné. Například máme ejabberd, což je docela jednoduché a lehké, ale pokud chceme optimalizovat mnohem více, máme Prozódie.

Pak tě nechám článek publikováno v GUTL jedním z našich uživatelů (Hugo) a kde nám ukazuje, jak nakonfigurovat náš vlastní server XMPP s Prozódie.

Úvod

Při instalaci serveru XMPP (Jabber) pro interní zasílání zpráv v místní síti si mnozí zvolí jabber, ejabberd nebo openfire, ale i když jsou funkční, mohou tyto aplikace vyžadovat spoustu zdrojů.

Pokud máte malou nebo střední síť a chcete pouze jednoduchou službu zasílání rychlých zpráv, naštěstí existuje odlehčená serverová alternativa zvaná prosody, která je sice naprogramována v LUA, což je interpretovaný jazyk, ale podle jeho vývojářů funguje velmi dobře díky luajit.

Tento krátký výukový program vysvětlí, jak nainstalovat a nakonfigurovat prozodii na stabilní verzi Debianu.

Příprava a instalace

Balíčky Prosody jsou umístěny v úložišti Debianu, ale vývojáři tohoto softwaru připravili úložiště pro Debian a deriváty obsahující nedávné balíčky a další moduly, které můžeme použít následovně:

echo "deb http://packages.prosody.im/debian stabilní hlavní" | sudo tee -a /etc/apt/sources.list wget http://prosody.im/files/prosody-debian-packages.key -O- | sudo apt-key add - aktualizace sudo aptitude

Jakmile je úložiště přidáno, můžeme pokračovat v instalaci prosody (další přidání modulů k použití sasl v případě potřeby jako mechanismus autentizace, který umožňuje integrovat prozódii s pam, LDAPAtd.).

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

Poté pokračujeme v generování certifikátů podepsaných svým držitelem pro naši doménu:

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

Průvodce se nás zeptá na řadu dat, z nichž opravdu zásadní je „Běžný název (např. Server FQDN nebo VAŠE jméno) “, kam musíme umístit naši doménu, protože ji budeme používat v této sekci VirtualHost konfigurační soubor.

Navíc, pokud jsme na serveru, kde instalujeme prosody, nakonfigurovali jsme iptables s výchozími zásadami pro odepření musíme otevřít požadované porty pro naši síť, například:

sudo iptables -A VSTUP -i lo -j PŘIJMOUT sudo iptables -A VSTUP -i eth1 -s 192.168.0.0/24 -p tcp -m tcp -m stav --state ZAVEDENO, SOUVISEJÍCÍ -j PŘIJMOUT sudo iptables -A VSTUP - i eth1 -s 192.168.0.0/24 -p tcp -m tcp -m multiport --podává 5222,5223,5269 -m stav --state NOVINKA -j PŘIJMOUT

konfigurace

Dále přistoupíme k úpravám některých řádků konfiguračního souboru, které musíme upravit /etc/prosody/prosody.cfg.lua takže to vypadá takto:

porty = {5222, 5269} ssl_ports = {5223} admins = {"juan@mydomain.cu", "pedro@mydomain.cu"} use_libevent = true; - výchozí nastavení je založeno na funkci select (), místo toho libevent používá epoll (), který je efektivnější a škálovatelnější. modules_enabled = {"seznam"; "saslauth"; "tls"; "dialback"; "disk"; "soukromé"; "vcard"; "Soukromí"; "komprese"; "legacyauth"; "verze"; "uptime"; "čas"; „ping“; "říz"; "Registrovat"; - tento modul nevypínejte, umožňuje nejen registraci, ale také změnu hesel „adhoc“; "admin_adhoc"; "posix"; "bosh"; - přidejte tento řádek, pokud chcete povolit jabber přes http}; allow_registration = false; - zakázáno z důvodu zabezpečení - změňte na hodnotu true, pokud chcete povolit vytváření účtů ze samotného klienta ssl = {key = "/etc/prosody/certs/localhost.key"; certificate = "/etc/prosody/certs/localhost.cert"; } úložiště = "interní"; - výchozí úložiště je soubor xml - volitelně můžeme použít metodu ukládání „sql“ - to umožňuje použití SQLite, MySQL nebo PostgreSQL jako backend (i když je nutné přidat určité parametry) autentizace = „internal_hashed“; - můžeme použít "internal_plain", pokud klient nepodporuje SCRAM-SHA-1 - pokud chceme použít sasl metodu pro pozdější použití LDAP, musíme použít "cyrus" log = {error = "/ var / log / prosody / prosody. err "; info = "/var/log/prosody/prosody.log"; } pidfile = "/var/run/prosody/prosody.pid"; VirtualHost "localhost" VirtualHost "mydomain.cu" ssl = {key = "/etc/prosody/certs/mydomain.cu.key"; certificate = "/etc/prosody/certs/mydomain.cu.crt"; }

Po úpravě konfiguračního souboru restartujeme službu:

sudo služba prozody odečíst

Nyní pokračujeme k vytváření účtů. V tomto případě, stejně jako v konfiguračním souboru, který deaktivujeme registr od klientů, bude nutné účty na serveru vytvořit ručně. Metoda ověřování, kterou zvolíme v konfiguraci (internal_hashed), zajistí, že hesla nebudou uložena jasně, ale s mechanismem SCRAM-SHA-1. Pokud klient pro zasílání zpráv, který máme v úmyslu použít, tento mechanismus nepodporuje, lze v konfiguraci použít metodu „internal_plain“.

Nejprve vytvoříme účty správců služby, které deklarujeme v konfiguraci (jejich deklarace neznamená, že jsou vytvářeny automaticky):

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

Stejný příkaz můžeme použít pro jakýkoli jiný účet, který chceme vytvořit.

Nakonec zkontrolujeme, zda je služba spuštěna:

stav sudo prosodyctl

Měli bychom dostat zprávu podobnou následující:

Prosody běží s PID 1310

Konfigurace klienta

Konfigurace závisí na klientovi, ale obecně jsou podrobnosti jednoduché. Například pro Pidgin:

Záložka „Základní“

Jméno: John
Doména: mydomain.cu
Zdroj: pc-john

Karta „Upřesnit“

Zabezpečení připojení: Pokud je to možné, použijte šifrování
Port připojení: 5222
Připojit k serveru: myserver.mydomain.cu

Bankovky

Více informací lze najít (včetně použití Cyrus SASL s LDAP a jak vytvořit záznamy z DNS) V Tento článek z Debian Wiki.

Uživatel komentuje prostřednictvím DesdeLinux že skutečně zastavit službu, kterou jste potřebovali spustit pkill lua5.1


Zanechte svůj komentář

Vaše e-mailová adresa nebude zveřejněna. Povinné položky jsou označeny *

*

*

  1. Odpovědný za údaje: Miguel Ángel Gatón
  2. Účel údajů: Ovládací SPAM, správa komentářů.
  3. Legitimace: Váš souhlas
  4. Sdělování údajů: Údaje nebudou sděleny třetím osobám, s výjimkou zákonných povinností.
  5. Úložiště dat: Databáze hostovaná společností Occentus Networks (EU)
  6. Práva: Vaše údaje můžete kdykoli omezit, obnovit a odstranit.

  1.   KZKG ^ Gaara řekl

    Líbí se mi to ... uvidíme, jestli jednou provždy změním OpenFire pro ejabberd nebo pro tuto Prosody 🙂

    1.    živý řekl

      Právě pro to už dělám testy ve VirtualBoxu .. protože když na vás počkáme, můj synu ... ¬¬

      1.    KZKG ^ Gaara řekl

        ^ - ^ U ... hehe ...
        Teď posílám tiket na poskytovatele hostingu s dotazem na záznam DNS, že musíme odstranit „jabber“ .____

        1.    živý řekl

          Dobře. Jabber, IRC, Facebook, Gtalk, nevím jak a kde, ale připojte se ..

  2.   Ernest Infante řekl

    Jak probíhá integrace Prosody s LDAP? a BD?

  3.   hnije87 řekl

    pár obrázků pro méně znalé by nebylo špatné ^. ^

  4.   lovec řekl

    Doma mám prozodii, nainstaloval jsem ji k testování a líbil se mi pro její jednoduchost. Podrobnosti při zastavení serveru musím udělat pkill lua5.1, abych to opravdu zastavil.

  5.   auroszx řekl

    Páni, to je zajímavé. Existuje způsob, jak mohou ostatní lidé vytvářet uživatele prostřednictvím grafického uživatelského rozhraní (může to být web)? Jak byste postupovali při získávání domény k jejímu používání? 😛

    1.    lovec řekl

      Povolíte registraci v konfiguraci a od stejného klienta jabber jsou registrováni zaškrtnutím možnosti vytvořit účet na serveru.

      allow_registration = true;

  6.   Ferran řekl

    Hledám balíčky prozody v slackware, skvělý návod. Na zdraví

  7.   Arturo Molina řekl

    Jak mohu ověřit, zda se uživatel může ověřit? nebo jak mohu zjistit, zda je uživatel připojen k serveru?

  8.   @Jlcmux řekl

    Podařilo se mi 😀 Byl jsem schopen jej správně nainstalovat a nakonfigurovat. Nainstalujte server na jeden počítač a klient je jiný počítač. ale mám problém. Aby klient věděl, že můj server s doménou (medellinlibre.org) je MÍSTNÍ. Musím přidat do souboru hostitelů IPDELSERVIDOR medellinlibre.org. Pokud ne, ze zřejmých důvodů se nepřipojí. Moje otázka zní, pokud neexistuje způsob, jak by všechny počítače v síti mohly ve výchozím nastavení vědět, že tato doména je v dané IP v síti LAN?

    1.    ltd řekl

      stejná pochybnost! věděl jsi na konci ?? Začínám s prozodií ...

    2.    lovec řekl

      Velmi jednoduché, v pidginu zadejte IP serveru v pokročilých možnostech, druhou možností je připojení dns do vaší LAN.

  9.   Francisco řekl

    Toto téma je velmi zajímavé a chtěl jsem vědět, jestli Prosody podporuje webové zásuvky. Mám zájem o vytvoření webového klienta xmpp

    1.    @Jlcmux řekl
  10.   Inukaze řekl

    Ahoj, nemáš verzi tutoriálu s konfigurací, která je určena pouze pro domácí intranet? Žádná doména nebo něco podobného. sotva tak, že pouze 1 počítač s Liñux je server a ostatní počítače, které se k němu připojují

    Jde pouze o možnost chatovat mezi intranetovými počítači prostřednictvím pidginu.