[Poradnik] Jak postawić własny serwer Jabber/XMPP alternatywa dla innych środków komunikacji

LinGruby | 2016-04-28 01:48:38 UTC | #1

[img]/uploads/default/original/1X/f0acdae6256e74862b9d49c43b5fe2e9c53729c5.png[/img]

Najpierw wyjaśnię co co to jest Extensible Messaging and Presence Protocol (XMPP, dawniej Jabber)– protokół bazujący na języku XML umożliwiający przesyłanie w czasie rzeczywistym wiadomości oraz statusu. Protokół ma zastosowanie nie tylko w komunikatorach, ale również w innych systemach natychmiastowej wymiany informacji.

Po więcej informacji odsyłam do https://pl.wikipedia.org/wiki/ExtensibleMessagingandPresenceProtocol

A teraz przejdźmy do instalacji i konfiguracji serwera eJabberd 2

apt-get install ejabberd

można powiedzieć to wszystko co do instalacji serwera ( bo serwer już działa ).

Teraz przejdźmy do konfiguracji żeby nasz serwer był widoczny na zewnątrz

musimy w DNS dodać rekordy SRV

_jabber._tcp.domena.pl. 86400 IN SRV 5 0 5269 domena.pl.
_xmpp-server._tcp.domena.pl. 86400 IN SRV 5 0 5269 domena.pl.
_xmpp-client._tcp.domena.pl. 86400 IN SRV 5 0 5222 domena.pl.

oczywiście w miejsce domena.pl podajemy swoją domenę jeśli posiadamy, jeśli nie mamy domeny pomijamy dodanie rekordu SRV w DNS.

Za pomocą edytora którego używamy otwieramy plik

/etc/ejabberd/ejabberd.yml

przeglądając go zauważymy że prawie wszystko jest ustawione poza podstawowymi wpisami które musimy uzupełnić, odnajdujemy

hosts:
- "localhost"

i podmieniamy na domenę którą posiadamy lub podajemy IP na którym ma stać serwer eJabberd 2

odnajdujemy następnie uzupełniamy

admin:
 user:
     - "admin": "localhost"

podobnie jak w hosts zmieniamy na swoją domenę lub IP.

Temat konfiguracji można powiedzieć że zakończony robimy teraz

/etc/init.d/ejabberd restart

pozostaje jeszcze zarejestrowanie admina

ejabberdctl register admin domena.pl hasło

zamiast domeny jak nie mamy podajemy IP

hasło nie muszę tłumaczyć każdy podaje swoje

Teraz otwieramy przeglądarkę wpisujemy

http://domena.pl:5280/admin/

i logujemy się na konto admin

a w środku wygląda to tak

[img]/uploads/default/original/1X/d55ca514257c09211073865d41fd15168db462ec.png[/img]

Teraz możemy przejść do klientów Jabber/XMPP są to programy które obsługuję protokół XMPP

na linuxa i nie tylko mogę polecić Tkabber żeby pobrać paczki na linuxa tkabber Download (DEB, RPM, XZ)

na telefony z androidem polecam apk Bruno the Jabber Bear (XMPP)

strona programisty https://yaxim.org/bruno/

Podejrzewam że może być to ciekawa alternatywa dla administracji serwerów TS etc.

Sam korzystam już od 2008 roku z protokołu Jabber/XMPP i nie narzekam ;-)


SystemZ | 2016-04-28 03:55:07 UTC | #2

Polecam też od siebie Openfire, dla początkujących może nawet prostszy.
http://www.igniterealtime.org/projects/openfire/

Kwestia instalacji paczki i wszystko da się spokojnie załatwić przez panel webowy.
Jest też całkiem sporo pluginów i integracji.
Inne serwery raczej mają kiepskie web gui, choć nie sprawdzałem prosody, to chyba jeden z ciekawszych serwerów był, nie pamiętam czy ten miał integrację z komunikatorem na www czy był jeszcze jakiś inny.


Profugus | 2017-01-17 11:31:46 UTC | #3

Gdzie edytuje się rekordy SRV w DNS?


LinGruby | 2017-01-17 11:35:05 UTC | #4

Tam gdzie masz domenę podpiętą


Profugus | 2017-01-17 11:38:25 UTC | #5

W panelu nie mam pola do edycji rekordu SRV


LinGruby | 2017-01-17 11:40:42 UTC | #6

Bo to musisz w panelu dodać bynajmniej u mnie jest taka opcje jak w ovh tak i cloudflare gdzie mam wszystkie domeny podpięte


Profugus | 2017-01-17 11:42:24 UTC | #7

U mnie takiej opcji nie ma. Zrobiłem standardowe przekierowanie domeny na IP serwera.

Tylko w katalogu o jakim wspomniano nie mam pliku ejabberd.yml


Profugus | 2017-01-17 11:44:02 UTC | #8

Mam tylko cfg i pem

Czyżby instalacja nie przebiegła prawidłowo?


LinGruby | 2017-01-17 11:50:01 UTC | #9

to zobacz w .cfg bo co distro to inaczej ja na debianie miałem


a na ubuntu korzystam już z innej wersji która ma wszystkie pliki w opt ;-)


Profugus | 2017-01-17 11:49:36 UTC | #10

%% Admin user
{acl, admin, {user, “”, “localhost”}}.

%% Hostname
{hosts, [“localhost”]}.

To będzie to?


LinGruby | 2017-01-17 11:50:32 UTC | #11

Tak


Profugus | 2017-01-17 11:51:48 UTC | #12

Ok. Wpisać adres domeny z tym http? czy czysty?


LinGruby | 2017-01-17 11:56:53 UTC | #13

samo domena.pl

a możesz też na samym IP tak jak pisałem wyżej
[quote=”LinGruby, post:1, topic:313”]
jeśli nie mamy domeny pomijamy dodanie rekordu SRV w DNS.
[/quote]


Profugus | 2017-01-17 12:02:49 UTC | #14

Zadziałało przekierowanie po IP


LinGruby | 2017-01-17 12:03:59 UTC | #15

To się cieszę :smiley:

Powodzenia


Profugus | 2017-01-17 12:04:15 UTC | #16

Działa dzięki :D


Profugus | 2017-01-17 14:15:31 UTC | #17

Pytanko moje. Istnieje klient działający z poziomu strony www?


LinGruby | 2017-01-17 14:42:11 UTC | #18

musisz poszukać bo nigdy tym się nie interesowałem, nie był mi potrzebny ;-)


SystemZ | 2017-01-29 16:47:27 UTC | #19

Tak, są klienty webowe.

Dawno nie korzystałem ale patrząc na wyniki wyszukiwarki frazy xmpp web client można by się zainteresować tym
https://conversejs.org/


SystemZ | 2017-02-02 23:15:44 UTC | #20

Znalazłem przy okazji jeszcze dwa projekty webowego XMPP warte uwagi

http://candy-chat.github.io/candy/
http://getkaiwa.com/


JanekJaran | 2017-02-03 06:16:41 UTC | #21

Fakt jest to pewnego rodzaju alternatywa. Ma jednak (jak wszystko) swoje wady i zalety dlatego ja wolę zostać przy discordzie, który jest darmowy i nie zużywa zasobów serwera. Jednak poradnik bardzo dobrze opisał proces instalacji, za co należy się like.


Profugus | 2017-02-03 17:56:32 UTC | #22

Dla mnie jabber jest lepszym rozwiązaniem niż standardowy czat na stronie. Mam nadzieje że uda mi się to ogarnąć.