Hej venner!. I dag præsenterer jeg en moderne og fleksibel server for dig Jabber / XMPP, skrevet på sproget Lua og tidligere kendt som Lxmppd. Det har kendetegnene ved at være et system med flere platforme med meget lavt ressourceforbrug, let at bruge og udvideligt. Og uden yderligere ado, lad os komme i gang! De kan virke som mange aspekter, men de er virkelig enkle og korte. Vi ser nu:
- Baseserver
- Vi installerer nødvendige pakker
- Lad os lære at konfigurere
- Vi konfigurerer globale parametre
- Vi opretter og konfigurerer den virtuelle vært
- Vi genererer SSL / TLS-certifikater
- Vi aktiverer værten
- Vi opretter den første bruger
- Vi registrerer vores Prosody i en DNS
- Vi tjekker alt
Baseserver
Det lave ressourceforbrug giver os mulighed for at installere Prosody selv i vores egen arbejdsstation og levere chattjenesten fra den.
Vi installerer nødvendige pakker
For at gøre os bekendt med Prosody skal vi bruge de officielle pakker, der kommer i Squeeze-arkivet:
aptitude installer prosody liblua5.1-sec0
Lad os lære at konfigurere
Lad os læse den medfølgende dokumentation /usr/share/doc/prosody/doc/coding_style.txt, for at gøre os bekendt med det format, der bruges i konfigurationsfilerne. Lad os gå til mappen / etc / prosody og vi viser de eksisterende filer og mapper. Navnene på hver mappe eller fil er intuitive og angiver tydeligt, hvad de bruges til:
- CERT: Katalog hvor SSL / TLS-certifikaterne og deres private nøgler gemmes.
- konf. tilgængelig: Katalog, der indeholder konfigurationsfilerne til de virtuelle værter, som vi erklærer tilgængelige. Det fungerer meget lig det, der blev set i tidligere indlæg om webservere, som i tilfældet med Nginx-tilgængelige mapper.
- conf.d: Mappe, hvor de direkte links fra virtuelle værter er angivet i konf.avil og at vi vil aktivere.
- prosody.cfg.lua: hovedfil til Prosody-konfigurationen.
- README: Fil, der giver os et "spor" til at komme videre. Stop ikke med at læse det!
Med det, vi hidtil har læst, kan vi prøve en minimal indledende konfiguration.
Vi konfigurerer de globale parametre
Vi studerer grundigt hovedkonfigurationsfilen/etc/prosody/prosody.cfg.lua, som jeg lavede en gratis oversættelse til, og som vi kan downloade i slutningen. Lad os gemme den oprindelige fil installeret ved hjælp af følgende kommando:
cp /etc/prosody/prosody.cfg.lua /etc/prosody/prosody.cfg.lua.original
Vi tømmer konfigurationsfilen. Med nano, vi redigerer prosody.cfg.lua allerede tømt, og indsæt indholdet af den downloadede eksempelfil. Vi ændrer det efter vores behov og sparer med det sædvanlige ctl + eller. Senere kontrollerer vi syntaxen for konfigurationsfilen:
cp / dev / null /etc/prosody/prosody.cfg.lua nano /etc/prosody/prosody.cfg.lua luac -p /etc/prosdy/prosody.cfg.lua
Og hvis du ikke returnerer nogen besked, er det, at alt er i orden.
Vi opretter og konfigurerer den virtuelle vært
Filen til vores virtuelle vært, vi opretter den i biblioteket /etc/prosody/conf.avail/med værtsnavnet plus udvidelsen .conf.lua, og vi opretter det fra fileneksempel.com.cfg.lua eksisterende i den mappe:
mv /etc/prosody/conf.avail/example.com.cfg.lua /etc/prosody/conf.avail/web.amigos.cu.cfg.lua nano /etc/prosody/conf.avail/web.amigos.cu .cfg.lua
Vi ændrer filen med de korrekte parametre i henhold til vores behov. Vi kan downloade en version, der er i overensstemmelse med dette eksempel i slutningen af indlægget. Glem ikke at slette linjen enabled = false - Fjern denne linje for at aktivere denne vært.
Vi genererer SSL / TLS-certifikater
Når de udfører kommandoen om at generere certifikaterne, beder de os om oplysninger relateret til vores firma.
cd / etc / prosody / certs openssl req -ny -x509-dage 365 -noder -out "web.amigos.cu.crt" -keyout "web.amigos.cu.key"
Vi kontrollerer, at certifikaterne blev genereret korrekt af ls-l.
Vi aktiverer værten
For at aktivere værten erklæret i /etc/prosody/conf.avail/web.amigos.cu.cfg.lua, skal vi oprette et symbolsk link til den fil i mappen conf.d. Så skal vi genstarte tjenesten:
ln -s /etc/prosody/conf.avail/web.amigos.cu.cfg.lua /etc/prosody/conf.d/web.amigos.cu.cfg.lua /etc/init.d/prosody genstart
Tip: Åbn en dedikeret konsol for at se Prosody-logbeskeder ved hjælp af kommandoen hale -f /var/log/prosody/prosody.log. Hvis den sidste linje siger "Demoniseret med succes til PID ####", så fungerer alt til Kilo!. Hvis du tilfældigvis får en fejlmeddelelse, er du muligvis nødt til at dræbe processen manuelt "Lua" at den kører FØR genstart af Prosody. At kende pid del Lua, løbps -e | grep lua. For at dræbe processen, dræb-dræb #pid del lua.
Vi opretter den første bruger
For at oprette brugere bruger vi kommandoen prosodyktl som følger:
prosodyctl adduser admin@web.amigos.cu
Kommandoen vil bede os om "Adgangskode" bruger. Bemærk, at vi opretter brugeren "Admin", som vi erklærer som Prosody-administrator i den globale konfigurationsfil prosody.cfg.lua.
VI ANBEFALER IKKE at bruge kommandoen prosodyktl at stoppe, starte eller genstarte tjenesten, men gør det ved traditionelle metoder som:
/etc/init.d/prosody {start | stop | genstart | genindlæs} påkald-rc.d prosody {start | stop | genstart | genindlæs} service prosody {start | stop | genstart | genindlæs}
Vi registrerer vores Prosody i en DNS
Chat-tjenesten er stærkt afhængig af DNS-tjenesten. Hver bruger identificeres af sin adresse eller JID i vejen for bruger @ domæne, hvor domænet angiver den server, som kontoen er gemt på. For at brugeren kan oprette forbindelse og logge ind, er det nødvendigt at finde serverens IP-adresse. Tilsvarende skal eksterne servere kontakte bruger @ domæne at sende dig en besked. Derfor er det nødvendigt, at Prosody-serveren har en posttype A i DNS-serveren på vores LAN. For eksempel:
192.168.10.20 IN Til web.amigos.cu.
Vi tjekker alt
Vi har allerede vores Prosody-server kørende. Lad os chatte så! Installer Pidgin eller Psi, eller vælg den valgte XMPP-klient, og opret forbindelse til serveren. Hvis det lykkes, er det fordi han fulgte indholdet af denne artikel til punkt og prikke. Hvis ikke, spørg, det er hvad blogs som dette blev lavet til. Ahhh, hvis du vil chatte fra en konsol, skal du installere Finch.
Vi lavede en pakke med dokumentationen fra det officielle Prosody-sted, som vi håber vil være nyttigt. De, der ønsker at downloade pakkerne direkte fra Prosody-arkivet, skal besøge Prosody pakke arkiv.
Til alle, held og lykke og glad chat!
Godt forslag. Lad os se, om jeg tager mig tid til at oprette en chat-klient.
En anden XMPP-klient? Mand, jeg synes ikke det er nødvendigt, medmindre du gør det for at lære og sætte det som dit mål. De er allerede Pidgin, Kopete, KDE-Telephaty, Empathy, PSI ... alligevel.
Så meget som en anden klient tror jeg ikke, men det ville være sjovt at lege med XMPP API og sende meddelelser fra applikationer.
Det ville være fint, hvis du f.eks. Har brug for at lave en slags chat til et internt netværk eller lignende
Hvis det er sandt, men denne tutorial bruges til at implementere en XMPP-klient i gratis netværk
Denne tutorial er til serveren, der er allerede et par gratis klienter.
For Windows ville det tjene meget (i fravær af den mytiske Messenger, ville det være godt at lave en bedre, ikke?).
Tak alle sammen for dine kommentarer. Min drøm er at have en webklient til at chatte på mit LAN. Jeg installerede ejabberd med JwChat, og da grænsefladen i Squeeze var klæbrig (og grim og buggy), prøvede jeg det ikke engang. Jeg har prøvet Yaws-webserveren og dens Yaws-chat-webklient og kunne ikke få den til at fungere korrekt. De downloadede PHPFreeChat og intet. Med Lenys Drupal 6 forsøgte jeg at konfigurere plugins til chatten og blev træt dengang for flere år siden. Jeg drømmer om ikke at være afhængig af installationen af klienter og ikke chatte med en browser mere. Udfordringen er lanceret.
Du er velkommen, ven. Lad os se, om jeg kan afslutte download af Wheezy DVD1 for at lave en tutorial om, hvordan jeg installerer ZPanelX i den nye version af Debian Stable (jeg håber, at ZPanel-udviklerne ikke opgiver Ubuntu 12.04 LTS-understøttelsen, for ellers kunne jeg ikke lave en automatiseret installation af det kontrolpanel, som jeg fandt godt, da jeg testede det på Windows).
Hej, hvis jeg installerede Debian 7 for lidt siden. Men jeg har ikke internet, det fortæller mig, at jeg mangler firmwaren. Det er et usb tp-link tl-wn321g. Kan jeg downloade det fra Windows? Beklager at spørge her er, at jeg ikke ønsker at registrere mig i noget debianforum, og jeg kender heller ikke engelsk meget godt.
Hvis TP-Link har Altheros-chipsættet, skal det genkende det uden komplikationer.
Find ud af, om din TP-Link USB-model har Altheros-chipsættet, samt skriv ned hardware-id'et.
Hvis du vil downloade iso her, er de debian isos, men de leveres med ikke-gratis drivere og firmware.
http://live.debian.net/cdimage/release/7.0.0+nonfree/i386/iso-hybrid/
Jeg vil gerne have en god tuto på stjerne hehehe
Jeg anbefaler, at du starter med at bruge Trixbox CE eller Elastix, begge er baseret på Asterisk
http://www.elastix.org/
http://www.trixbox.com/
Meget god guide, meget tak 🙂
Fremragende, mange tak, det har været meget nyttigt.
Jeg vil teste det i Mesh Free Network, som vi implementerer i min by. Så fortæller jeg dig, hvordan jeg har det med dette.
Skål.!
Hvilken skam. Jeg blev i det sidste trin. Hvor konfigurerer jeg DNS? Hvilken skam at være den eneste, der spørger dette haha
Jeg har nogle meget interessante spørgsmål:
Har du kendt, eller er der erfaring med en installation i produktion af prosody til 3000 brugere, hvor der samtidig er mindst 1000 chatter på samme tid?
Støtte til: filoverførsel, VIP, og er dette den vigtigste samtalelog?
MILJØ: 3 tusind brugere med deaktiveret webreg og scripts via server påkrævet gennem cgi rejer til brugerregistrering og manipulation i en 8-core DELL T110 med 8 GB RAM til eksklusiv brug eller til ejabberd i lenny med ported erland og ejabberd
Bolden svulmer op, efter at have plads til mange problemer i ejabberd, finder jeg dette, i sandhed får dette mig til at føle, at jeg spildte min tid ..
Med venlig hilsen PICCORO Lenz McKAY !!!. Se, jeg anbefaler, at du besøger Prosodys officielle hjemmeside http://prosody.im, og udvid oplysningerne. Jeg har ingen erfaring med over 1000 klienter, der chatter på samme tid med Prosody. Og jeg tror ikke, du har spildt din tid med Ejabberd. Det er en beslutning, du tog i Lenys tid. Forresten indrømmer jeg, at Ejabberd var den første, jeg installerede på min forretningsplan, hvor måske 50 eller 60 brugere chattede i fællesskab. Serveren vidste det ikke engang, og at den kun havde 512 megabyte RAM. 🙂 Og ja, jeg havde svært ved at konfigurere det ordentligt. Prosody er meget enkel, men jeg inviterer dig til at finde ud af mere om dens potentialer. Det er ikke, at jeg tvivler på ham, men at jeg ikke har den erfaring, du har brug for.