суббота, 1 августа 2009 г.

Установка Google Wave Server (Прототип)

Введение

Установка исходного кода Google Wave Federation Prototype Server

Исходный код Wave Federation Prototype Server поставляется в виде Java приложения, что соответствует XEP-0114, и является Jabber Component Protocol (компонентом Jabber протокола). В примере ниже мы покажем, как установить Wave Federation Prototype Server как плагин к Openfire XMPP сервер, но он должен так же работать с любым XEP-0114 совместимом сервере.

Для запуска прототипа сервера нужно сначала установить Openfire сервер. Данная инструкция Openfire сервера описывает шаги для Debian (Ubuntu) систем и если у вас возникнут проблемы или вопросы относительно установки, То обращайтесь к Openfire сообществу на их сайте.



Предварительные сведения

Openfire и Wave Federation Prototype Server разоработаны на Java поэтому вы должны убедиться, что у вас установлена Java на вашей машине. Несмотря на то, что WFPS должен работать на любой системе с Java 6 эта инструкция описывает шаги только для Debian (Ubuntu) систем.


Mac OSX

Для Mac OSX установите Java 6 с http://developer.apple.com/java/download/.

После установки Java вам надо создать переменные окружения:

$ export JAVA_HOME=/System/Library/Frameworks/JavaVM.framework/Versions/1.6.0/Home
$
export PATH=$JAVA_HOME/bin:$PATH

Теперь пройдите на сайт Openfire и скачайте Mac OSX версию Openfire.


Debian/Ubuntu

Установка Java 6:

$ apt-get install sun-java6-jre sun-java6-fonts

Теперь скачайте и установите Openfire сервер:

$ wget http://www.igniterealtime.org/downloadServlet?filename=openfire/openfire_3.6.4_all.deb
$ sudo dpkg
-i openfire_3.6.4_all.deb
$ sudo
/etc/init.d/openfire restart

Конфигурация Openfire (все платформы)

После установки Openfire сервера пройдите по ссылке http://localhost:9090 в вашем браузере. Замените домен на ваш, если вы устанавливаете не на локальный компьютер. Весь процесс установки будет происходить через мастер и будем ставить значения по умолчанию для простоты.

Конфигурация Openfire Wave плагина

Перезапустите сервер после окончания настройки. На Debian/Ubuntu это делается так:

$ sudo /etc/init.d/openfire/restart

После того, как перезапустите сервер войдите в Openfire как 'admin' и пароль, который вы указали.

Затем идём в Server -> Server Settings -> External Components.

Включите внешние дополнения на порту 5275 и выберите секретное слово для расшаривания этого компонента. Нажмите Сохранить. Теперь добавьте 'wave' как доверительный компонент. Для этого пишем субдомен 'wave' и напишите опять секретное слово, которое вы написали до этого. Номер порта и секретное слово служат для возможности подключения Wave дополнения.

Теперь идём в Server -> Server Settings -> Security Settings. Для "Server Connection Security" выбираем "Custom" и включаем "Server Dialback". Так же проверьте, что флажок "Accept self-signed certificates" установлен.

Защита

Следующие изменения не являются обязательными, но если вам нужна хорошая защита, то это будет хорошей практикой.

  • Идём в Server -> Server Settings -> Registration and Login. Выключим "Inband Account Registration". Выключим "Change Password". Выключим "Anonymous Login"
  • Включим компресию в "Compression Settings"
  • Выключим прокси в "File Transfer Settings"

Установка дополнения Wave

Теперь скачиваем Federation Prototype Server и извлекаем всё содержимое. Скачать можно с SVN

Для запуска расширения вам будут нужны некоторые из параметров, который вы использовали для настройки Openfire сервера. Это номер порта, секретное слово, имя сервера и, наконец, имя компонента, которое у нас - 'wave'.

Wave сервер требует ряда сертификатов, используемых для подписания. Дополнительную информацию см. на странице Wiki.(прим. переводчика: Чуть позже сделаю перевод, как создавать сертификаты)

Отредактируйте run-server.sh скрипт с правильными настройками. Расшифровка аргументов:

ПараметрОписание
client_frontend_hostnameip к которому будет подключаться клиент
client_frontend_portпорт к которому будет подключаться клиент
xmpp_server_hostnameXMPP сервер хост (например gogola.org)
xmpp_component_nameXMPP компонент Wave сервера. В нашем случае "wave"
xmpp_server_ipАдрес XMPP сервера, где у нас wave компонент
xmpp_server_portПорт XMPP сервера, где опять таки, наш компонент
xmpp_server_secretСекретно лово компонента
xmpp_server_pingПинговать сервер после подключения? Если пусто, то пинговать не будет
certificate_domainДомен сертификата который мы использовали при его создании
certificate_filesфайл сертификата. (yfghbvth username.cert)
certificate_private_keyПриватный ключ сертификата (PKCS#8-PEM) (например username.key)
waveserver_disable_verificationПроверять сертификат? true - да, flase - нет

После того, как вы отредактируете скрипт сервера вам надо будет скомпилировать сервер и запустить его:


$ ant dist
$ run
-server.sh

Запуск клиента

Отредактируйте run-client.sh скрипт (смотри параметры внутри скрипта), затем запустите его:

$ run-client.sh <username>

1 комментарий: