Захари Димитров
В днешно време е трудно да си представим работата в Интернет без услуги като електронната поща и различни комуникационни програми като Skype, ICQ, Windows Live Messenger и други. Как бихте се почувствали обаче, ако знаете, че съществува възможност всички тези удобни програми и средства за обмяна на идеи да се подслушват от правителството, от конкурентна на вашата организация или просто от хора с достатъчно добри познания, които след това да се възползват от получената информация?
Съществуват редица технологични концепции, позволяващи ви да сте сигурни, че това, което четете и изпращате на вашите колеги и приятели, достига само и единствено до тях. За електронната поща отдавна са създадени редица популярни методи и решения за използването на цифрови сертификати, удостоверяващи подателя на съобщенията, затова те няма да бъдат разглеждани в детайли. При чат програмите обаче все още не е толкова голямо разнообразието от средства за защита. Различните варианти включват:
1. Използване на метод за удостоверяване на подателя и адресата на съобщението.
2. Използване на сигурен комуникационен канал осигуряващ криптиране на обекта на комуникацията, така че дори той да достигне до трети страни, да не може да бъде разшифрован.
Тези два поставени проблема могат да бъдат решени чрез използване на средствата на стандартизирана клиент сървър технология, като платформата Jabber (джабер). Това е протокол за предаване на текстови съобщения и съобщения за състояние, оформен като свободен стандарт, базиран на XML.
Jabber е отворена, сигурна алтернатива
без реклами на разпространените услуги за бързи съобщения като ICQ и Skype.
Решението, което препоръчваме – Openfire за фирмена комуникация, представлява сървърен компонент на технология за онлайн сътрудничество в реално време. Продуктът представлява свободен софтуер с открит изходен код използващ лицензията GPL. Openfire работи с широко разпространения и сертифициран XMPP протокол за обмяна на съобщения и файлове. Приложението е изключително лесно за инсталация и настройка, като в същото време осигурява отлично ниво на сигурност и производителност.
Сред възможностите на сървъра освен обмяна на съобщения между различни регистрирани потребители са групов чат в общи стаи за разговори и споделяне на файлове. Това дава възможност за
бърза обмяна на идеи и сътрудничество с колегите.
Openfire може да работи в клъстер, така че различни негови инсталации да са свързани помежду си и услугите да са високо достъпни в разпределена мрежова среда. Връзката между клиентите поддържа няколко нива на защита на преминаващите данни.
1) шифрирана връзка към сървъра (c2s, client to server) през SSL (Secure Socket Layer) на друг порт, 5223
2) шифрирана връзка към сървъра (c2s) през TLS (Transport Layer Security) на стандартния порт за нешифрирана връзка, 5222
3) шифрирана връзка между сървърите (s2s, server to server) през SSL
3a) други варианти на подобна схема на s2s шифриране.
4) шифрирана връзка на цялата комуникация между двата клиента (e2e encryption, end to end encryption) чрез подписване и шифриране на данните с електронни ключове.
Благодарение на модулната си архитектура Openfire позволява включването на допълнителни модули към основното приложение, като например гласова комуникация.
Инсталация
Инсталацията на Openfire протича изключително лесно. За да поддържате високо ниво на сигурност на комуникациите в компанията е добра идея сървърът да се инсталира на собствен компютър, свързан с Интернет. Openfire работи както на Microsoft Windows, така и на GNU/Linux и Unix операционни системи. В случай, че нямате подръка постоянно свързан с Интернет компютър, където да се инсталира Openfire, може да се използва хостинг решение.
Инсталация при Unix подобни системи
Преди да се инсталира Openfire трябва да сте сигурни че имате настроена JDK или JRE 1.5.0 (Java 5) виртуална машина на вашата система. Самия процес по инсталация протича изключително удобно. Просто трябва да свалите архивния пакет на Openfire и да копирате в произволна директория. При Unix е препоръчително да се използват /opt или /usr/local/bin, където по принцип се разполага допълнителен софтуер. Последователно командите за инсталиране са както следва:
Ако се ползва .tar.gz архива той трябва да се разархивира:
tar -xzvf openfire_3_6_4.tar.gz
и премести в желаната директория
mv openfire /opt
След това трябва да влезете в директорията с изпълнимия скрипт на Openfire и да го стартирате
cd /opt/openfire/bin; ./openfire start
Ако скрипта не даде грешки, това означава, че е стартирана инстанция на приложението и вече можем да ползваме уеб интерфейса за настройка.
Инсталация при Microsoft Windows
Преди да се инсталира Openfire трябва да сте сигурни, че имате настроена JDK или JRE 1.5.0 (Java 5) виртуална машина на вашата система. Самия процес по инсталация протича изключително удобно. Просто трябва да свалите и стартирате Windows версията на Openfire. По подразбиране сървъра ще се разположи в C:Program FilesOpenfire
Конфигурация на Openfire
За да се конфигурира правилно Openfire след неговото стартиране трябва да се посети адресът на сървъра на който той е стартиран. Обикновено трябва да пуснете в произволен браузър http://127.0.0.1:9090
В случай, че IP адресът е различен е нужно да се промени.
Първата стъпка е избор на език за инсталация. За момента българският не е сред наличните възможности
Следващата стъпка е да се избере име на сървъра. Добра идея е да се остави името по подразбиране на машината, на която е стартиран Openfire. XMPP сървъра трябва да ползва база данни за съхраняване на потребителските и други системни настройки. Тук има няколко варианта за избор. Първо трябва да се реши дали да се ползва собствена база от данни или технология като OpenLDAP, LDAP или Microsoft Active Directory за удостоверяване на потребители. Това позволява употребата на Openfire и в сложни корпоративни мрежи. За нашите нужди може да се избере опцията за съхраняване на информацията в самия сървър. Приложението може да ползва различни бази данни за съхраняване на настройките на потребителите сред които
* MySQL
* Oracle
* Microsoft SQL Server
* PostgreSQL
* IBM DB2
* HSQLDB
Съществува възможност и за употреба на собствена файлова структура играеща ролята на база данни, която е изключително подходяща за малки инсталации.
Администрация
Openfire разполага с уеб базирана администраторска конзола, откъдето може да се управляват различни аспекти на работата. Ако приложението се инсталира за малка потребителска група и не се ползва клъстеризация или работа с други XMPP сървъри, е добра идея да се изключи възможността за връзка с другите сървъри.
В Openfire съществуват няколко различни начина за управление на потребителите на сървъра. Единия е те да се създават автоматично с избрано от тях име и парола при логване към сървъра. Втория начин предвижда администратора да създаде потребителите и техните пароли и да се забрани автономното създаване на потребители от външни приложения. Потребителите могат да бъдат част от групи за по-удобно установяване на техните права и привилегии. Възможно е и да се създаде административен потребител, който има права чрез клиентското приложение да администрира и управлява останалите групи и потребители.
В уеб базираната администраторска конзола съществува журнал за одит на сигурността. Там се записват всички промени на конфигурацията на сървъра. Този инструмент заедно с останалите log файлове за преглед на съобщения за грешки и различна допълнителна информация дават възможност на администраторите бързо и лесно да управляват политиките по сигурността на приложението.
Настройване на клиентска част
Като отворен протокол за XMMP съществуват множество различни клиенти в Интернет като Miranda, Psi IM, Gajim и Pidgin. Последната от тези програми Pidgin е мултипротоколен чат клиент съвместим с XMPP (Jabber), AIM и ICQ (Oscar протокола), Live Messenger, Yahoo!, IRC, Gadu-Gadu, SILC, GroupWise Messenger, Zephyr и Google Talk мрежите. Произхода на думата Pidgin означава възможно най-проста и ефективна форма за комуникация. Потребителите на това приложение могат да се връзват към множество акаунти и различни мрежи едновременно, което значи, че може да обсъждате информация с вашите ICQ приятели, да разговаряте чрез Google Talk, и да седите в IRC канали по едно и също време.
Както и Openfire, Pidgin е свободен софтуер с открит изходен код и разполага с версии за Windows, Linux и други операционни системи.
Ако сте настроили сървъра да е публичен, регистрирането в него, става чрез самия клиент. Първо трябва да се изтегли и инсталира програмата. След като Jabber клиента се инсталира и го пусне, би трябвало да ви се появи прозореца за нов акаунт. От менюто с протоколи се избира XMPP. В случай, че името не е заето ще получите предупреждение за дигитален сертификат издаден от сървъра, който следва да се приеме. След като се логнете към сървъра трябва да добавите други потребители, с които бихте желали да контактувате например всички колеги от офиса или външни партньори. За целта могат да се създадат тестови акаунти на Openfire сървъра, които да се добавят в Pidgin по същия начин.
Предимства
Създаването и употреба на сигурна онлайн комуникационна среда е сложна задача, зад която тепърва ще се добавят много въпросителни. От друга страна конфигурирането и настройката на свободни софтуерни приложения като Openfire и Pidgin, не само дават свобода на личността, но и защитават комуникационните канали. Една от основните идеи на технологиите е да са достъпни. Какво е достъпното на Skype и ICQ с неизвестните си протоколи. Знаете ли какво става с данните ви, или поне какво би могло да стане? Всеки, който си задава подобни въпроси, трябва да е наясно, че решение отдавна съществува.
Наивно е да се мисли, че има универсални решения за всеки един проблем, какъвто е създаването на сигурни комуникационни канали онлайн. Общуването през XMPP/Jabber може да бъде и несигурно.
Доколко XMPP протоколът е надежден
като решение, можем да съдим и от употребата му в световната мрежа. Най-голямата онлайн търсачка Google използва именно XMPP като инфраструктура за тяхната чат програма вградена в Gmail – Google Talk. През септември месец 2008 година Cisco придобиха Jabber фондацията, която разработва услуги на базата на XMPP за корпорациите. Очевидно Cisco залага много на бизнес услугите за онлайн комуникация, интегриращи на едно място почти всички инструменти за работа от офис редактори до видеоконферентни разговори. Освен това компанията, специализирана в онлайн комуникацията, има големи клиенти сред бизнеса, правителствения сектор и доставчиците на услуги.
От гледна точка на сигурността използването на SSL/TLS връзка със сървъра винаги е задължително. Допълнително използването на GPG за криптиране на съобщенията между отделни клиенти увеличава значително защитата на данните.