Pokazywanie postów oznaczonych etykietą XMPP. Pokaż wszystkie posty
Pokazywanie postów oznaczonych etykietą XMPP. Pokaż wszystkie posty

poniedziałek, 25 stycznia 2010

Prywatny serwer Wave - sprawdzamy działanie XMPP

Jak napisałem w jednym z poprzednich postów dotyczących Wave - rozwiązanie, które zaserwował Google oparte jest o protokół komunikacyjny XMPP. Sam "core" Fali to rozszerzenie tego protokołu.

W poprzednim wpisie opisałem jak skonfigurować serwer XMPP - OpenFire. Z racji, że nie jest to nic innego jak tylko serwer komunikacyjny, spróbujemy połączyć się z nim wykorzystując ogólnie znane aplikacje klienckie. Chciałbym w tym miejscu zwrócić uwagę, że cała konfiguracja, którą wykonaliśmy do tej pory nie dotyczyła Wave samego w sobie, a jedynie wymienionego wyżej serwera komunikacyjnego.

Zanim wybierzemy aplikację kliencką utwórzmy dwa konta użytkowników, które będą odpowiadały za komunikację w obrębie naszego serwera. W tym celu logujemy się na konto administracyjne konsoli serwera. A następnie przechodzimy na zakładkę: Użytkownicy/Grupy i z lewego menu wybieramy opcję: Utwórz nowego użytkownika. Podajemy jego identyfikator oraz hasło i zatwierdzamy dane przyciskiem Utwórz użytkownika.

Poniżej lista z aktualnymi użytkownikami systemu.


Z następującej strony pobieramy klienta Jabbera - PSI. Następnie instalujemy go i przeprowadzamy prostą konfigurację. Zaraz po zainstalowaniu aplikacji napotykamy pierwsze pytanie.

Szczerze mówiąc nie wiem co tu wybrać. Skoro samo konto utworzyliśmy wcześniej z poziomu konsoli administracyjnej to logiczne wydaje się, że trzeba wybrać opcję: Wykorzystaj istniejące konto. Po zatwierdzeniu pojawia się okienko z prośbą o uzupełnienie danych - wpisujemy więc nazwę użytkownika, którego wcześniej utworzyliśmy oraz jego hasło. Ponieważ użytkownicy związani są z serwerami, a sam protokół XMPP umożliwia komunikację pomiędzy serwerami unikalność nazwy użytkownika tworzy para nazwa usera i adres serwera. Dlatego w moim wypadku podałem ciąg: firstuser@192.168.1.51.

Sprawdźmy czy to co wprowadziliśmy wystarczy do połączenia się z serwerem - wybierzmy Zachowaj. Następnie w głównym okienku PSI zmieńmy status na Dostępny. Pojawi się informacja z prośbą o zatwierdzenie testu wiarygodności - wybieramy: Dodaj ten certyfikat do zaufanych.

No i... udało się zalogować.

Uzupełniamy dane o użytkowniku i klikamy Wyślij.

Spróbujmy teraz wykonać taką samą instalację na drugim komputerze - sprawdzimy w ten sposób jak działa komunikacja w obrębie zainstalowanego na maszynie wirtualnej serwera XMPP.

Próba dodania użytkownika firstuser do kontaktów seconduser zakończyła się pojawieniem poniższego komunikatu, który zatwierdzamy wybierając: Dodaj.

Efekt końcowy jest następujący: obaj użytkownicy widzą siebie wzajemnie i obaj mogą ze sobą rozmawiać.

Sprawdziliśmy jak działa nasz serwer i jak widać sprawuje się całkiem dobrze.

Zapraszam wszystkich do kolejnego wpisu z serii Wave. Tym razem zagłębimy się w tajniki instalacji i konfiguracji wtyczki Google'a.

Prywatny serwer Wave - konfiguracja serwera XMPP (OpenFire)

Ostatnim razem udało się utworzyć wirtualną maszynę oraz zainstalować serwer XMPP - OpenFire. Jest to wstęp do "postawienia" własnego serwera Wave. Wszystko ma na celu wykorzystanie tego rozwiązania w biznesie jako ważne narzędzie wspomagające pracę grupową.

Dla przypomnienia, aby dostać się na konsolę administracyjną należy wejść na następującą stronę: http://adres-ip-maszyny-openfire:9090. Pojawi się krótki formularz konfiguracyjny. W pierwszym kroku należy wybrać język - o dziwo aplikacja pozwala wybrać polski.
Kolejny etap dotyczy prostej konfiguracji serwera. Podajemy w tym kroku: nazwę domenową lub adres IP komputera na którym działa XMPP, numer portu konsoli administracyjnej oraz bezpieczny numer portu konsoli administracyjnej. W naszym wypadku w pierwszym polu podajemy adres IP serwera.

W następnym kroku decydujemy z sposobie przechowywania danych. Do wyboru mamy opcję zewnętrznej bazy danych oraz wewnętrznej bazy HSQLDB. Wybieramy tą drugą, ponieważ nie wymaga ona ustawiania i konfigurowania dodatkowej bazy danych. Ten wybór wpłynie jednak na wydajność całego systemu, ponieważ HSQLDB do najwydajniejszych nie należy i w porównaniu z MySQL czy PostgreSQL pozostaje daleko w tyle. Dla naszych rozwiązań jednak wystarczy.

Kolejny krok to podjęcie decyzji o tym gdzie będą przechowywane informacje o użytkownikach oraz grupach. Najlepszym i najprostszym wyjściem będzie wybór domyślnej wartości - czyli przechowywanie tych informacji w bazie danych OpenFire. Do wyboru jest również integracja z usługą katalogową (LDAP) - na pewno skorzystają z niej wszyscy, którzy posiadają takie serwisy.

Ostatnim krokiem jest wprowadzenie danych administratora: adresu email oraz hasła.

Na potwierdzenie udanej konfiguracji pojawia się komunikat zapraszający nas do zalogowania do systemu.

Zanim skorzystamy z tego zaproszenia zrestartujemy demona OpenFire: sudo /etc/init.d/openfire restart. Spróbujmy zatem zalogować się do konsoli administratora (adres: http://adres-ip-maszyny-openfire:9090 lub https://adres-ip-maszyny-openfire:9091). Powinien pojawić się nam widok jak poniżej.

Kolejnym etapem konfiguracji jest zezwolenie zewnętrznym wtyczkom na korzystanie z systemu OpenFire. W tym celu na zakładce: Ustawienia serwera -> Komponenty zewnętrzne należy włączyć usługę, podać port oraz zdefiniować hasło na podstawie którego wtyczki będą rozpoznawane i dopuszczane do działania i potwierdzić wprowadzanie zmian przyciskiem: Zapisz ustawienia.

Po zatwierdzeniu zmian pojawi się sekcja dzięki której można określić jakie komponenty mogą łączyć się z serwerem. W pierwszym kroku zaznaczyć musimy opcję: Biała lista i zapisać ustawienia. Następnie definiujemy jakie komponenty należą do tej listy. W subdomenie należy podać wave i wprowadzić hasło, a następnie zatwierdzić wybór przyciskiem: Dodaj komponent.

Kolejnym krokiem jest wprowadzenie zasad bezpieczeństwa przy podłączaniu się do serwera OpenFire. Przechodzimy na zakładkę: Serwer->Ustawienia serwera->Bezpieczeństwo i w sekcji Bezpieczne połączenia pomiędzy serwerami zaznaczamy opcję Dostosuj. Rozwinie się lista dodatkowych opcji na których sprawdzamy czy w obu przypadkach wybrane jest Dostępny/Opcjonalny. Na końcu zaznaczamy ostatni checkbox - Accept self-signed certificates. Server dialback over TLS is now available i akceptujemy wprowadzone zmiany klikając przycisk Zapisz ustawienia.

Teoretycznie to by było na tyle jeżeli chodzi o konfigurację serwera XMPP (OpenFire). Opcjonalnie można jeszcze wykonać kilka dodatkowych kroków, które pozwolą lepiej dostosować serwer do wymagań użytkowników. W tym momencie jednak ich nie potrzebujemy wprowadzać.