Instalējiet XMPP (Jabber) serveri ar Prosody [Atjaunināts]


Daudzi no mums to izmanto Gtalk o Facebook Chat nezinot, ka protokols, kuru izmantojam saziņai, ir neviens cits XMPP (Paplašināms ziņojumapmaiņa un klātbūtnes protokols) kas arī ir atvērts.

En GNU / Linux mums ir vairākas lietojumprogrammas, lai izveidotu savu serveri XMPP o Jabber kā tas ir arī zināms, daži konfigurējot ir sarežģītāki nekā citi. Piemēram, mums ir ejabberds, kas ir diezgan vienkārši un viegli, bet, ja mēs vēlamies optimizēt daudz vairāk, mums tas ir Prosodija.

Tad es tevi atstāju raksts publicēts GUTL ko veicis kāds no mūsu lietotājiem (Hugo) un kur viņš mums parāda, kā konfigurēt savu serveri XMPP ar Prosodija.

Ievads

Instalējot XMPP (Jabber) serveri iekšējai ziņapmaiņai vietējā tīklā, daudzi izvēlas jabber, ejabberd vai openfire, taču, lai arī tie ir funkcionāli, šīs lietojumprogrammas var prasīt daudz resursu.

Ja jums ir mazs vai vidējs tīkls un vēlaties tikai vienkāršu tūlītējās ziņojumapmaiņas pakalpojumu, par laimi ir viegla servera alternatīva, ko sauc par prosodiju, kas, kaut arī tā ir ieprogrammēta LLU, kas ir interpretēta valoda, pēc tās izstrādātāju domām, tā darbojas ļoti labi, pateicoties uz luajit.

Šajā īsajā apmācībā tiks paskaidrots, kā instalēt un konfigurēt prosodiju Debian stabilā versijā.

Sagatavošana un uzstādīšana

Prosody paketes atrodas Debian krātuvē, taču šīs programmatūras izstrādātāji ir sagatavojuši repozitoriju Debian un atvasinājumus, kas satur jaunākās paketes un papildu moduļus, kurus mēs varam izmantot šādi:

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 atjauninājums

Kad krātuve ir pievienota, mēs varam turpināt instalēt prosody (papildus pievienojot izmantojamos moduļus sasl kā autentifikācijas mehānismu, ja nepieciešams, kas ļauj integrēt prozodi ar pam, LDAPUc).

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

Pēc tam mēs turpinām ģenerēt pašparakstītus sertifikātus savam domēnam:

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

Vednis jautās mums virkni datu, no kuriem patiešām būtiskais ir “Parastais nosaukums (piemēram, serveris FQDN vai JŪSU vārds) ”, kur mums ir jāievieto savs domēns, kā mēs to izmantosim sadaļā VirtualHost konfigurācijas fails.

Turklāt, ja serverī, kurā mēs instalējam prosodiju, esam konfigurējuši iptables ar noklusējuma noraidīšanas politiku mums ir jāatver nepieciešamās porti mūsu tīklam, piemēram:

sudo iptables -A INPUT -i lo -j ACCEPT sudo iptables -A INPUT -i eth1 -s 192.168.0.0/24 -p tcp -m tcp -m state - state ESTABLISHED, RELATED -j ACCEPT sudo iptables -A INPUT - i eth1 -s 192.168.0.0/24 -p tcp -m tcp -m multiport --dports 5222,5223,5269 -m stāvoklis --valsts JAUNS -j ACCEPT

konfigurācija

Tālāk mēs turpinām modificēt dažas konfigurācijas faila rindas, kuras mums ir jārediģē /etc/prosody/prosody.cfg.lua tāpēc tas izskatās šādi:

ports = {5222, 5269} ssl_ports = {5223} admins = {"juan@mydomain.cu", "pedro@mydomain.cu"} use_libevent = true; - noklusējuma opcijas pamatā ir funkcija select (), tā vietā libevent izmanto epoll (), kas ir efektīvāka un mērogojamāka. modules_enabled = {"saraksts"; "saslauth"; "tls"; "iezvanes"; "disks"; "Privāts"; "vcard"; "privātums"; "saspiešana"; "mantojums"; "versija"; "uptime"; "laiks"; "ping"; "pep"; "reģistrēties"; - neatslēdziet šo moduli, tas ļauj ne tikai reģistrēties, bet arī mainīt "adhoc" paroles; "admin_adhoc"; "posix"; "bosh"; - pievienojiet šo rindu, ja vēlaties iespējot jabber pār http}; atļaut_reģistrāciju = nepatiesa; - drošības dēļ atspējots - nomainiet uz true, ja vēlaties iespējot kontu izveidi no paša klienta ssl = {key = "/etc/prosody/certs/localhost.key"; sertifikāts = "/etc/prosody/certs/localhost.cert"; } krātuve = "iekšējā"; - noklusējuma krātuve ir xml fails - pēc izvēles mēs varam izmantot "sql" glabāšanas metodi - tas ļauj izmantot SQLite, MySQL vai PostgreSQL kā aizmuguri (lai gan jāpievieno noteikti parametri) authentication = "internal_hashed"; - mēs varam izmantot "internal_plain", ja klients neatbalsta SCRAM-SHA-1 - ja mēs vēlamies izmantot sasl metodi, lai vēlāk izmantotu LDAP, mums jāizmanto "cyrus" log = {error = "/ var / log / prozodija / prozodija. kļūdīties "; 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"; sertifikāts = "/etc/prosody/certs/mydomain.cu.crt"; }

Kad konfigurācijas fails ir modificēts, mēs restartējam pakalpojumu:

sudo servisa prozodija atņemt

Tagad mēs turpināsim izveidot kontus. Šajā gadījumā, tāpat kā konfigurācijas failā mēs atspējojam reģistru no klientiem, konti serverī būs jāizveido manuāli. Konfigurācijā izvēlētā autentifikācijas metode (internal_hashed) padara paroles nesaglabātas skaidrā, bet ar mehānismu SCRAM-SHA-1. Ja ziņojumapmaiņas klients, kuru plānojam izmantot, neatbalsta šo mehānismu, konfigurācijā var izmantot metodi "internal_plain".

Vispirms mēs izveidosim pakalpojuma administratoru kontus, kurus deklarējam konfigurācijā (to deklarēšana nenozīmē, ka tie tiek izveidoti automātiski):

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

Mēs varam izmantot to pašu komandu jebkuram citam kontam, kuru vēlamies izveidot.

Visbeidzot, mēs pārbaudām, vai pakalpojums darbojas:

sudo prosodyctl statuss

Mums vajadzētu saņemt šādu ziņojumu:

Prozodija darbojas ar PID 1310

Klienta konfigurācija

Konfigurācija ir atkarīga no klienta, taču kopumā informācija ir vienkārša. Piemēram, par Pidgin:

Cilne "Pamata"

Lietotājvārds: John
Domēns: mydomain.cu
Resurss: pc-džons

Cilne "Papildu"

Savienojuma drošība: Ja iespējams, izmantojiet šifrēšanu
Savienojuma ports: 5222
Savienojuma izveide ar serveri: myserver.mydomain.cu

Atzīmes

Plašāku informāciju var atrast (ieskaitot Cyrus SASL lietošanu ar LDAP un kā izveidot ierakstus no DNS) In šis raksts no Debian Wiki.

Lietotājs komentē, izmantojot DesdeLinux lai patiešām apturētu pakalpojumu, kas jums jāizpilda pkill lua5.1


Atstājiet savu komentāru

Jūsu e-pasta adrese netiks publicēta. Obligātie lauki ir atzīmēti ar *

*

*

  1. Atbildīgais par datiem: Migels Ángels Gatóns
  2. Datu mērķis: SPAM kontrole, komentāru pārvaldība.
  3. Legitimācija: jūsu piekrišana
  4. Datu paziņošana: Dati netiks paziņoti trešām personām, izņemot juridiskus pienākumus.
  5. Datu glabāšana: datu bāze, ko mitina Occentus Networks (ES)
  6. Tiesības: jebkurā laikā varat ierobežot, atjaunot un dzēst savu informāciju.

  1.   KZKG ^ Gaara teica

    Man tas patīk ... paskatīsimies, vai vienreiz un uz visiem laikiem es nomainīšu OpenFire uz ejabberd vai šo Prosody 🙂

    1.    dzīvīgs teica

      Es jau precīzi to daru testos VirtualBox .. jo, ja mēs jūs gaidīsim, mans dēls .. ¬¬

      1.    KZKG ^ Gaara teica

        ^ - ^ U ... hehe ...
        Tagad es nosūtu biļeti mitināšanas pakalpojumu sniedzējam, jautājot par DNS ierakstu, kas mums jānoņem “jabber” .______

        1.    dzīvīgs teica

          Labi. Jabber, IRC, Facebook, Gtalk, es nezinu, kā un kur, bet izveidojiet savienojumu ..

  2.   Ernests Infante teica

    Kā notiek Prosodijas integrācija ar LDAP? un BD?

  3.   87 teica

    pāris attēli mazāk zinošajiem nebūtu slikti ^. ^

  4.   dunter teica

    Mājās man ir prozodija, es to instalēju, lai pārbaudītu, un man tas patika tā vienkāršības dēļ. Sīkāka informācija, pārtraucot serveri, man ir jāizdara pkill lua5.1, lai to patiešām apturētu.

  5.   auroszx teica

    Wow, tas ir interesanti. Vai ir kāds veids, kā citi cilvēki var izveidot lietotājus, izmantojot GUI (varētu būt tīmeklis)? Kā jūs domājat panākt, lai domēns to izmantotu? 😛

    1.    dunter teica

      Jūs iespējojat reģistrāciju konfigurācijā, un no tā paša jabber klienta viņi tiek reģistrēti, pārbaudot opciju izveidot kontu serverī.

      atļaut_reģistrāciju = taisnība;

  6.   Ferrāns teica

    Es meklēju prosodijas pakotnes slackware, lieliska apmācība. Priekā

  7.   Arturo Molina teica

    Kā es varu pārbaudīt, vai lietotājam ir izdevies autentificēties? vai kā es varu zināt, vai lietotājs ir savienots ar serveri?

  8.   @Jlcux teica

    Man tas izdevās 😀 Es varēju to pareizi instalēt un konfigurēt. Instalējiet serveri vienā datorā, un klients ir cits dators. bet man ir problēma. Lai klients zinātu, ka mans serveris ar domēnu (medellinlibre.org) ir LOKĀLS. Man jāpievieno resursdatoru failam IPDELSERVIDOR medellinlibre.org. Ja nē, tas acīmredzamu iemeslu dēļ nesavienojas. Mans jautājums ir, vai visiem tīkla datoriem nav iespēju pēc noklusējuma uzzināt, ka šis domēns ir lokālajā tīklā ar noteiktu IP?

    1.    ltd teica

      tādas pašas šaubas! vai zināji beigās ?? Es sāku ar prozodiju ...

    2.    dunter teica

      Ļoti vienkārši, pidgin norādiet servera ip papildu opcijās, otra iespēja ir pievienot LAN uz LAN.

  9.   Francisco teica

    Šī tēma ir ļoti interesanta, un es gribēju uzzināt, vai Prosody atbalsta tīmekļa ligzdas. Mani interesē izveidot xmpp tīmekļa klientu

    1.    @Jlcux teica
  10.   Inukaze teica

    Sveiki, vai jums nav apmācības versijas ar konfigurāciju, kas paredzēta tikai vietējam iekštīklam? Nav domēna vai tamlīdzīgi. tik tikko, ka tikai 1 dators ar Liñux ir serveris un pārējie datori, kas tam pievienojas

    Tas ir tikai, lai varētu tērzēt starp iekštīkla datoriem, izmantojot pidgin.