Open-Xchange – свободу группам!::Журнал СА 7.2005
www.samag.ru
     
Поиск   
              
 www.samag.ru    Web  0 товаров , сумма 0 руб.
E-mail
Пароль  
 Запомнить меня
Регистрация | Забыли пароль?
Журнал "Системный администратор"
Журнал «БИТ»
Подписка
Архив номеров
Где купить
Наука и технологии
Авторам
Рекламодателям
Контакты
   

  Опросы
  Статьи

Дата-центры  

Дата-центры: есть ли опасность утечки данных?

Российские компании уже несколько лет испытывают дефицит вычислительных мощностей. Рост числа проектов,

 Читать далее...

Книжная полка  

Защиты много не бывает

Среди книжных новинок издательства «БХВ» есть несколько изданий, посвященных методам социальной инженерии

 Читать далее...

Событие  

В банке рассола ждет сисадмина с полей фрактал-кукумбер

Читайте впечатления о слете ДСА 2024, рассказанные волонтером и участником слета

 Читать далее...

Организация бесперебойной работы  

Бесперебойная работа ИТ-инфраструктуры в режиме 24/7 Как обеспечить ее в нынешних условиях?

Год назад ИТ-компания «Крок» провела исследование «Ключевые тренды сервисного рынка 2023». Результаты

 Читать далее...

Книжная полка  

Читайте и познавайте мир технологий!

Издательство «БХВ» продолжает радовать выпуском интересных и полезных, к тому же прекрасно

 Читать далее...

СУБД PostgreSQL  

СУБД Postgres Pro

Сертификация по новым требованиям ФСТЭК и роль администратора без доступа к данным

 Читать далее...

Критическая инфраструктура  

КИИ для оператора связи. Готовы ли компании к повышению уровня кибербезопасности?

Похоже, что провайдеры и операторы связи начали забывать о требованиях законодательства

 Читать далее...

Архитектура ПО  

Архитектурные метрики. Качество архитектуры и способность системы к эволюционированию

Обычно соответствие программного продукта требованиям мы проверяем через скоуп вполне себе понятных

 Читать далее...

Как хорошо вы это знаете  

Что вам известно о разработках компании ARinteg?

Компания ARinteg (ООО «АРинтег») – системный интегратор на российском рынке ИБ –

 Читать далее...

Графические редакторы  

Рисование абстрактных гор в стиле Paper Cut

Векторный графический редактор Inkscape – яркий представитель той прослойки open source, с

 Читать далее...

День сисадмина  

Учите матчасть! Или как стать системным администратором

Лето – время не только отпусков, но и хорошая возможность определиться с профессией

 Читать далее...

День сисадмина  

Живой айтишник – это всегда движение. Остановка смерти подобна

Наши авторы рассказывают о своем опыте и дают советы начинающим системным администраторам.

 Читать далее...

Виртуализация  

Рынок решений для виртуализации

По данным «Обзора российского рынка инфраструктурного ПО и перспектив его развития», сделанного

 Читать далее...

Книжная полка  

Как стать креативным и востребованным

Издательский дом «Питер» предлагает новинки компьютерной литературы, а также книги по бизнесу

 Читать далее...

1001 и 1 книга  
19.03.2018г.
Просмотров: 6458
Комментарии: 0
Машинное обучение с использованием библиотеки Н2О

 Читать далее...

12.03.2018г.
Просмотров: 7152
Комментарии: 0
Особенности киберпреступлений в России: инструменты нападения и защита информации

 Читать далее...

12.03.2018г.
Просмотров: 4434
Комментарии: 0
Глубокое обучение с точки зрения практика

 Читать далее...

12.03.2018г.
Просмотров: 3096
Комментарии: 0
Изучаем pandas

 Читать далее...

12.03.2018г.
Просмотров: 3895
Комментарии: 0
Программирование на языке Rust (Цветное издание)

 Читать далее...

19.12.2017г.
Просмотров: 3910
Комментарии: 0
Глубокое обучение

 Читать далее...

19.12.2017г.
Просмотров: 6400
Комментарии: 0
Анализ социальных медиа на Python

 Читать далее...

19.12.2017г.
Просмотров: 3244
Комментарии: 0
Основы блокчейна

 Читать далее...

19.12.2017г.
Просмотров: 3540
Комментарии: 0
Java 9. Полный обзор нововведений

 Читать далее...

16.02.2017г.
Просмотров: 7381
Комментарии: 0
Опоздавших не бывает, или книга о стеке

 Читать далее...

17.05.2016г.
Просмотров: 10735
Комментарии: 0
Теория вычислений для программистов

 Читать далее...

30.03.2015г.
Просмотров: 12456
Комментарии: 0
От математики к обобщенному программированию

 Читать далее...

18.02.2014г.
Просмотров: 14123
Комментарии: 0
Рецензия на книгу «Читаем Тьюринга»

 Читать далее...

13.02.2014г.
Просмотров: 9206
Комментарии: 0
Читайте, размышляйте, действуйте

 Читать далее...

12.02.2014г.
Просмотров: 7151
Комментарии: 0
Рисуем наши мысли

 Читать далее...

10.02.2014г.
Просмотров: 5458
Комментарии: 3
Страна в цифрах

 Читать далее...

18.12.2013г.
Просмотров: 4691
Комментарии: 0
Большие данные меняют нашу жизнь

 Читать далее...

18.12.2013г.
Просмотров: 3506
Комментарии: 0
Компьютерные технологии – корень зла для точки роста

 Читать далее...

04.12.2013г.
Просмотров: 3218
Комментарии: 0
Паутина в облаках

 Читать далее...

03.12.2013г.
Просмотров: 3457
Комментарии: 0
Рецензия на книгу «MongoDB в действии»

 Читать далее...

02.12.2013г.
Просмотров: 3102
Комментарии: 0
Не думай о минутах свысока

 Читать далее...

Друзья сайта  

 Open-Xchange – свободу группам!

Архив номеров / 2005 / Выпуск №7 (32) / Open-Xchange – свободу группам!

Рубрика: Администрирование /  Коллективная работа

ПАВЕЛ ЛЕБЕДЕВ

Open-Xchange – свободу группам!

Многие из вас задумываются об альтернативе таким Groupware-продуктам, как MS Exchange и Lotus Notes. Наконец, нам стала доступна свободная версия Novell/SUSE Linux Open-Xchange-сервера (SLOX).

Open-Xchange (OX) базируется на компонентах с открытым исходным кодом, таких как веб-сервер, почтовый сервер c IMAP, база данных и сервер директорий. Сервер почти целиком написан на JAVA с присутствием элементов на языке С для участков, которые требуют большей безопасности. OX предоставляет пользователю такие модули: портал, календарь, контакты, адреса, задачи, проекты, документы, знания, закладки, доска голосований, форум, веб-интерфейс для почты. Доступ к серверу OX можно получить из многих браузеров и программных пакетов, например: KDE Kontact, Apples iCAL, Konqueror, Mozilla Suite и многих других, основанных на открытых стандартах и интерфейсах. Также можно подключаться из MS Outlook или Palm-устройств с помощью OX-клиента, который доступен для скачивания с сайта.

В данной статье как операционную систему для OX будем использовать FreeBSD версии 5.3, с локально установленными пакетами: Apache2/Tomcat, Postfix/Cyrus, PostgreSQL, OpenLDAP и т. д. Но это не говорит о том, что вы жестко привязаны к такому набору компонентов. OX прекрасно работает на многих UNIX/Linux-подобных системах. Связки пакетов можно менять по вашему вкусу или основываясь на уже установленных программных комплексах. Например, Apache2/Tomcat можно заменить на Apache1.3/jserv, Postfix/Cyrus на Exim/Сourier, использовать внешние базы данных, серверы директорий, почтовые серверы и т. д.

До того как вы приступите к установке OX, чтоб лучше представлять себе, как выглядит система, ее возможности, интерфейс пользователя, рекомендую посмотреть скриншоты (http://mirror.open-xchange.org/ox/EN/community/screenshots.htm), поработать в demo-режиме с порталом и веб-интерфейсом для почты (http://mirror.open-xchange.org/ox/EN/community/online.htm).

Будьте внимательны! Автор не несет ответственности за возможную потерю данных при использовании данной статьи.

Все бренды и названия продуктов являются или могут быть торговыми марками и используются, чтобы идентифицировать продукты или услуги, их соответствующих владельцев.

Подготовим окружение для OX

Введем переменные для простоты написания и понимания:

  • OX_home=/usr/local/openxchange – папка, в которую будет установлен OX;
  • OX_install=/home/user/OX – в эту папку будем складывать файлы, требуемые для установки;
  • p_dir=/usr/ports – папка, где лежит дерево портов FreeBSD.

Для компиляции, инсталляции и работы OX потребуется установить такие программы из коллекции портов:

  • shells/bash – мощный интерпретатор команд, требуется для запуска OX и просто в повседневной жизни админа;
  • security/sudo – программа для ограниченной раздачи прав администратора пользователям, нужна для запуска OX-сервера;
  • java/jdk15 – Sun’s Java Development Kit под FreeBSD;
  • www/jakarta-tomcat5 – веб-сервер, позволяющий запускать Java Servlet и JavaServer Pages;
  • lang/perl5.8 – язык программирования Perl;
  • www/apache2 – очень распространенный веб-сервер;
  • devel/apache-ant – основанная на Java утилита для сборки приложений;
  • net/openldap22-server – сервер директорий LDAP.

Java

Мы будем устанавливать Native JDK для FreeBSD (http://www.freebsd.org/java/install.html). Напомню, что при установке Java понадобится около 2 Гб свободного места для раздела, на котором будет происходить компиляция пакета. Также для этого потребуются исходники и бинарные архивы Java.

Замечание: файлы надо скачать самостоятельно в связи с лицензионными ограничениями. Для этого надо зарегистрироваться на сайте www.sun.com, а потом со страницы http://www.sun.com/software/java2/download.htm, выбрав платформу Java(TM) SDK 1.5.0, скачать:

  • jdk-1_5_0-src-scsl.zip
  • jdk-1_5_0-bin-scsl.zip

Со страницы http://www.eyesbeyond.com/freebsddom/java/jdk15.html:

  • bsd-jdk15-patches-1.tar.bz2

И положить архивы в папку $p_dir/distfiles.

Как написано в BUILD, для начала процесса компиляции нужен рабочий javac-компилятор. По умолчанию порт ставит java/linux-sun-jdk14, но можно использовать и родной java/jdk14 и java/linux-blackdown-jdk14:

> cd $p_dir/java/jdk15

> sudo make install

Замечание: если процесс завис, нужно остановить его нажатием и добавить Linux proc-файловую систему командами:

> sudo kldload linprocfs

> sudo mount -t linprocfs linprocfs /compat/linux/proc

Запускаем процесс компиляции еще раз, предварительно почистив порт java/jdk15 от уже скомпилированного кода. По окончании проверяем, если вывод команды java -version похож на приведенный ниже, значит, установка прошла успешно:

> sudo make clean &&  sudo make install clean

> java –version

java version "1.5.0-p1"

Java(TM) 2 Runtime Environment, Standard Edition (build 1.5.0-p1-root_08_apr_2005_22_00)

Java HotSpot(TM) Client VM (build 1.5.0-p1-root_08_apr_2005_22_00, mixed mode)

Для работы OX потребуются дополнительные jar-компоненты:

На момент написания статьи были использованы следующие версии jar-архивов:

  • javamail-1_3_2.zip
  • jaf-1_0_2-upd.zip
  • Xerces-J-bin.2.6.2.tar.gz
  • jdom-1.0.tar.gz

Теперь создадим папки и распакуем в них архивы:

> cd $OX_install

> unzip javamail-1_3_2.zip

> sudo mv ./javamail-1.3.2 /usr/local/javamail

> unzip jaf-1_0_2-upd.zip

> sudo mv ./jaf-1.0.2 /usr/local/jaf

> tar xzvf Xerces-J-bin.2.6.2.tar.gz

> sudo mv ./xerces-2_6_2 /usr/local/xerces

> tar xzvf jdom-1.0.tar.gz

> sudo mv ./jdom-1.0 /usr/local/jdom

Tomcat

Установим сервлет-сервер и проверим его работу, для этого нужно запустить сервис Tomcat и пройти по ссылке http://127.0.0.1:8180. В результате должна появиться страница с информацией о Tomcat:

> cd $p_dir/www/jakarta-tomcat5

> sudo make install clean

> sudo /usr/local/etc/rc.d/020.jakarta-tomcat50.sh start

> lynx http://127.0.0.1:8180

Perl + модули, требуемые для OX

Из дерева портов нам нужно установить следующие компоненты:

  • devel/p5-Storable
  • devel/p5-Time-Local
  • net/p5-URI
  • net/p5-perl-ldap
  • www/p5-CGI.pm
  • converters/p5-MIME-Base64
  • converters/p5-Convert-ASN1
  • security/p5-Net-SSLeay
  • security/p5-Digest-MD5
  • security/p5-Authen-SASL
  • security/p5-IO-Socket-SSL
  • textproc/p5-XML-NamespaceSupport
  • textproc/p5-XML-SAX-Base

Установка perl-модулей происходит так же, как и обычных портов, например, установим devel/p5-Storable:

> cd $p_dir/devel/p5-Storable

> sudo make install clean

PostgreSQL

Установим SQL-сервер и добавим автоматический запуск при старте системы. Для этого в файл /etc/rc.conf внесем строку: postgresql_enable=”YES”:

> cd $p_dir/databases/postgresql80-server

> sudo make install clean

Запустим скрипт инициализации базы данных OX. Следует напомнить, что пароль для пользователя openxchange в PostgreSQL-сервере будет использоваться при конфигурировании OX в директиве --with-dbpass=:

> sudo /usr/local/etc/rc.d/010.pgsql.sh initdb

> sudo /usr/local/etc/rc.d/010.pgsql.sh start

После этого добавляем пользователя и создаем базу:

> sudo su -l -m pgsql

%createuser –pwprompt

Введите имя нового пользователя: openxchange

Введите пароль для нового пользователя:

Введите снова:

Разрешить новому пользователю создавать базы данных? (y/n) y

Разрешить новому пользователю создавать пользователей? (y/n) n

CREATE USER

%createdb -O openxchange -E UNICODE openxchange

CREATE DATABASE

Кроме этого, для работы OX с PostgreSQL надо скачать JDBC (http://jdbc.postgresql.org).

В портах есть версия 8.0 databases/postgresql-jdbc, но мы предлагаем использовать коннектор версии pg74.215.jdbc3.jar, скачать который можно с сайта http://jdbc.postgresql.org/download.htm:

> sudo mkdir /usr/local/jdbc

> sudo cp pg74.215.jdbc3.jar /usr/local/jdbc

Apache2 и Ant

Настала очередь веб-сервера, установим его и настроим автозапуск. Также установим утилиту для сборки приложений. Для автозапуска Apache2 при старте системы в файл /etc/rc.conf добавляем строку: apache2_enable=”YES”.

> cd $p_dir/www/apache2

> sudo make install clean

> cd $p_dir/devel/apache-ant

> sudo make install clean

Для соединения сервлет-сервера Tomcat и веб-сервера Apache2 нам потребуется установить модуль mod_jk. На данный момент есть 2 версии этого модуля – mod_jk и mod_jk2, но так как mod_jk2 официально больше не поддерживается, использовать его не будем. Опираясь на рекомендации разработчиков, вместо него возьмем www/mod_jk-apache2.

> cd $p_dir/www/mod_jk-apache2

> sudo make install clean

LDAP

Для работы OX надо собрать LDAP-сервер с экспериментальной функцией ACI (inside-the-tree access controls). Эта функция дает контроль над правами объекта в дереве.

> cd $p_dir/net/openldap22-server

> sudo make -DWITH_ACI install clean

Добавляем автоматический запуск при старте системы и разрешаем слушать только на внутреннем интерфейсе, для этого в файл /etc/rc.conf добавляем строки:

slapd_enable="YES"

slapd_flags="-h "ldap://127.0.0.1/""

Установливаем OX и настраиваем взаимодействие с окружением

Инсталляция OX

Все готово для начала инсталляции OX. Первым делом необходимо скачать исходники OX с сайта (www.open-xchange.org). Я взял исходники версии 0.7.5, так как для нее на момент установки была русификация. Нам потребуются файлы:

  • open-xchange-0.7.5.tar.gz
  • OX-RU-Groupware.0.7.5.tar.gz
  • OX-RU-Webmail.0.7.5.tar.gz

Далее делаем такие операции:

> cd $OX_install

> tar xzvf open-xchange-0.7.5.tar.gz

> cd open-xchange-0.7.5

Чтобы посмотреть возможные опции конфигурации, выполняем команду:

> ./configure -help

Конфигурируем, компилируем и устанавливаем пакет OX. При этом обратите внимание на опцию --with-dbpass= и укажите тот самый пароль, который задан для пользователя openexchnge в PostgreSQL.

> ./configure –prefix=$OX_home

> --enable-webdav --enable-doc

> --with-mailjar=/usr/local/javamail/mail.jar

> --with-activationjar=/usr/local/jaf/activation.jar

> --with-jdomjar=/usr/local/jdom/build/jdom.jar

> --with-xercesjar=/usr/local/xerces/xercesImpl.jar

> --with-jsdkjar=/usr/local/jakarta-tomcat5.0/common/lib/servlet-api.jar

> --with-jdbcjar=/usr/local/jdbc/pg74.215.jdbc3.jar

> --with-dbpass=open

> --with-runuid=www –with-rungid=www

> make

> sudo make install

На данный момент у нас есть установленный OX и его окружение, приступим к пост-инсталляционному конфигурированию.

Login.pl (Perl/CGI)

Настроим и проверим окно авторизации пользователя OX:

> cd $OX_home/share/perl/

> sudo cp login.pl login.pm /usr/local/www/cgi-bin/

> sudo /usr/local/etc/rc.d/apache2.sh start

> lynx http://127.0.0.1/cgi-bin/login.pl

Замечание: если окно ввода имени и пароля пользователя OX не появилось, нужно смотреть настройки и лог-файлы, веб-сервера Apache2.

Servlets

Настроим servlet-движок так, чтоб он обрабатывал запросы OX. Для этого скопируем нужные файлы из пакета OX.

> cd /usr/local/jakarta-tomcat5.0/webapps

> sudo mkdir -p servlet/WEB-INF/classes servlet/WEB-INF/lib

> sudo cp $OX_home/share/servlets/*.class ./servlet/WEB-INF/classes

> cd servlet/WEB-INF/

Создаём файл web.xml с таким содержимым. Этот файл требуется для того, чтобы Tomcat понимал, как обрабатывать запросы к groupware и webmail:

<?xml version="1.0" encoding="ISO-8859-1"?>

    <!DOCTYPE web-app

        PUBLIC "-//Sun Microsystems, Inc.//DTD Web Application 2.3//EN"

         "http://java.sun.com/dtd/web-app_2_3.dtd">

    <web-app>

      <display-name>Servlet OpenXchange</display-name>

      <description>Servlet OpenXchange 0.7.5</description>

      <servlet>

      <servlet-name>intranet</servlet-name>

      <servlet-class>intranet</servlet-class>

      <display-name>OX Groupware</display-name>

      <description>OX</description>

    </servlet>

    <servlet-mapping>

    <servlet-name>intranet</servlet-name>

    <url-pattern>/intranet</url-pattern>

    </servlet-mapping>

    <servlet>

      <servlet-name>webmail</servlet-name>

      <servlet-class>webmail</servlet-class>

      <display-name>OX Webmail</display-name>

      <description>OX</description>

    </servlet>

    <servlet-mapping>

    <servlet-name>webmail</servlet-name>

    <url-pattern>/webmail</url-pattern>

    </servlet-mapping>

 </web-app>

Скопируем jar-файлы для Tomcat из установленного пакета OX и проверим правильность работы Tomcat, просмотрев в браузере вывод http://127.0.0.1:8180/servlet/intranet:

> cd /usr/local/jakarta-tomcat5.0/webapps/servlet/WEB-INF/lib

> sudo cp $OX_home/lib/*.jar .

> sudo chown -R www:www /usr/local/jakarta-tomcat5.0/webapps/

> sudo /usr/local/etc/rc.d/020.jakarta-tomcat50.sh stop

> sudo /usr/local/etc/rc.d/020.jakarta-tomcat50.sh start

> lynx http://127.0.0.1:8180/servlet/intranet

Если сервер ответил:

No running Server found. Please inform the Administrator!

это говорит о том, что всё идет нормально, продолжаем настраивать OX.

mod_jk

Настроим взаимодействие Apache2 и Tomcat с помощью mod_jk. Для этого добавим в файл /usr/local/etc/apache2/httpd.conf, такие строки:

LoadModule jk_module libexec/apache2/mod_jk.so

<IfModule mod_jk.c>

JkWorkersFile /usr/local/etc/apache2/workers.properties

JkLogFile /var/log/apache2/mod_jk.log

JkLogLevel error

JkMount /servlet/* test

Alias /servlet "/usr/local/jakarta-tomcat5.0/webapps/servlet"

<Location "/servlet/WEB-INF/">

AllowOverride None

deny from all

</Location>

</IfModule>

Скопируйте /usr/local/etc/apache/workers.properties.sample в workers.properties. Измените hostname. Убедитесь, что две последние строки с правильными путями, в нашем случае файл должен выглядеть так:

worker.list=test

worker.test.port=8009

worker.test.host=localhost

worker.test.type=ajp13

worker.test.lbfactor=1

workers.tomcat_home=/usr/local/jakarta-tomcat5.0

workers.java_home=/usr/local/jdk1.5.0

PostgreSQL

С базой данных PostgreSQL проведем те же операции, которые написаны в [1], сначала инициализируем базу, а потом наполним данными из файла, который идёт с пакетом OX:

> sudo su -l -m pgsql

%psql -U openxchange openxchange < $OX_home/share/init_database.sql

%psql -U openxchange openxchange

openxchange=>INSERT INTO sys_gen_rights_template values

openxchange->("now","admin","now","","default_template","y","y","y","y",

openxchange(>"y","y","y","y","y","y","y","y","y","y","y","y","y","y","y",

openxchange(>"y","y","y","y","y","y","y","y","y","y","y","y","y","y","y",

openxchange(>"y","y","y","y","y","y","y","y","y","y","y","y","y");

openxchange=> q

Также потребуется изменить файлы конфигурации servers.conf в папках:

  • /usr/local/openxchange/etc/groupware
  • /usr/local/openxchange/etc/webmail

Для того чтобы OX получил доступ к созданной нами базе данных, нужно изменить:

NAS_CON_CLASS_NAME: jdbc:postgresql://localhost/openexchange

NAS_CON_USER: openexchange

на

NAS_CON_CLASS_NAME: jdbc:postgresql://localhost/openxchange

NAS_CON_USER: openxchange

OpenLDAP

Приступим к настройке сервера директорий. Обратите внимание на то, что, если поменять суффикс «dc=example,dc=org» на что-то более родное типа «dc=good-domain,dc=ua», то это надо будет сделать во всех файлах конфигурации (до запуска OpenLDAP), а именно:

  • /usr/local/etc/openldap/ldap.conf
  • /usr/local/etc/openldap/slapd.conf
  • /usr/local/openxchange/share/init_ldap.ldif
  • /usr/local/openxchange/etc/admintools.conf

Изменяем конфигурацию OpenLDAP. Для этого в файле /usr/local/etc/openldap/ldap.conf добавляем строки:

BASE    dc=example,dc=org

HOST    localhost

а в файл /usr/local/etc/openldap/slapd.conf такие:

database   bdb

suffix      "dc=example,dc=org"

rootdn     "cn=Manager,dc=example,dc=org"

rootpw     secret

directory  /var/db/openldap-data

index   objectClass     eq

index   uid,mailEnabled,cn,sn,givenname,lnetMailAccess,alias,loginDestination eq,sub

Теперь запускаем OpenLDAP:

> sudo /usr/local/etc/rc.d/slapd.sh start

Редактируем файл /usr/local/openxchange/share/init_ldap.ldif и меняем пароль для доступа к базе:

userPassword: {CRYPT}newmailadminpass

В этой строке newmailadminpass меняем на вывод команды:

> perl -e "print crypt(YOURPASSHERE,pack("C2",(int(rand 26)+65),(int(rand 26)+65)));"

где YOURPASSHERE – пароль для доступа к OpenLDAP.

Теперь импортируем данные для OX из файла /usr/local/openxchange/share/init_ldap.ldif командой:

> sudo slapadd -l $OX_home/share/init_ldap.ldif

Создадим символические ссылки для OX на ldap.conf:

> sudo ln -s /usr/local/etc/openldap/ldap.conf $OX_home/etc/groupware/ldap.conf

> sudo ln -s /usr/local/etc/openldap/ldap.conf $OX_home/etc/webmail/ldap.conf

Добавляем пользователя

Так как многие скрипты в папке /usr/local/openxchange/sbin используют в качестве оболочки /bin/bash, а оригинальное расположение bash в FreeBSD /usr/local/bin/bash, сделаем символическую ссылку и добавим первого пользователя OX:

> sudo ln -s /usr/local/bin/bash /bin/bash

> sudo $OX_home/sbin/adduser_ox

> --username="test"

> --passwd="test"

> --name="Pavel"

> --sname="Lebedev"

> --maildomain="example.org"

> --ox_timezone="Europe/Kiev"

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

Execute as root...or make sure slappasswd is in PATH

Запускаем от root, появилась надпись зеленого цвета, что с LDAP все хорошо, а красным цветом, что база openexchange в PostgreSQL не существует:

LDAP Success

psql: FATAL:  database "openexchange" does not exist

SQL Error

Deleting User from LDAP

Возвращаемся в пункт PostgreSQL и смотрим, наша база называлась openxchange, а OX использует для доступа базу openexchange, находим и исправляем строки, в файле /usr/local/openxchange/etc/admintools.conf, который отвечает за конфигурацию сервера:

DEFAULT_SQL_DB="openxchange"

DEFAULT_SQL_USER="openxchange"

Запускаем еще раз и получаем в ответ:

LDAP Success

SQL Success

Теперь добавим группу:

> sudo $OX_home/sbin/addgroup_ox –group=developers

Added Group developers to LDAP

Добавление первого пользователя и группы успешно завершено.

Apache2 / Website

Настроим взаимодействие веб-сервера и OX. Для этого создаем папки в директории data веб-сервера и скопируем в них контент, который идет вместе с OX.

> cd /usr/local/www/data

> sudo mkdir -p cfintranet/webmail

> cd $OX_home/share/groupware/data/

> sudo cp -R images css javascript/usr/local/www/data/cfintranet/

> cd $OX_home/share/webmail/data/

> sudo cp -R images css javascript/usr/local/www/data/cfintranet/webmail

Хранилище файлов

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

Как написано в [2], файл sbin/correctfilespool в качестве интерпретатора содержит «#!/bin/sh», но, скорее всего, это какая-то модификация bash. Так что поменяем «#!/bin/sh» на «#!/usr/local/bin/bash». Также скрипт sbin/correctfilespool использует GNU seq для счета от 0 до 255, но в составе FreeBSD ее нет. Для решения проблемы можно выбрать два пути. Первый поставить порт sysutils/coreutils и заменить все seq на gseq. Второй вместо seq использовать программу jot, идущую в стандартной поставке FreeBSD, и везде заменить «seq 0 255» на «jot 256 0».

> cd $OX_home/sbin/

> sudo sh ./correctfilespool

Русификация интерфейса

Перейдем в папку, где лежат архивы, скачанные с сайта OX, раз архивируем и установим русификацию для Groupware и Webmail:

> cd $OX_install

> tar xzvf ./OX-RU-Groupware.0.7.5.tar.gz

> sudo cp -r ~/opt/html/RU $OX_home/share/groupware/data/templates/

> sudo cp -r ~/opt/locales/RU.dlc $OX_home/etc/groupware/locales/

> rm -r ./opt

> tar xzvf ./OX-RU-Webmail.0.7.5.tar.gz

> sudo cp -r ~/opt/html/RU $OX_home/share/webmail/data/templates/

> sudo cp -r ~/opt/locales/RU.dlc $OX_home/etc/webmail/locales/

> rm -r ./opt

Теперь надо открыть файл login.pm. в папке /usr/local/www/cgi-bin и для добавления возможности выбора языка интерфейса изменить строку:

my $languages = ["DE","EN"];

на

my $languages = ["EN","RU"];

Замечание: если после перезапуска Groupware, Webmail и Apache2, появится ошибка в файлах webmail.log или groupware.log:

Language RU is in the wrong version

Значит установлена неправильная версия OX-русификации. Скачайте пакет русификации с такой же версией, как и устанавливаемый пакет OX.

Как, оказалось, для отображения иконок панели в русифицированном интерфейсе потребуется создать папки RU и скопировать в них содержимое папок EN. Или как в примере сделать ссылку:

> sudo ln -s /usr/local/www/data/cfintranet/images/top/EN ./RU

> sudo ln -s /usr/local/www/data/cfintranet/webmail/images/top/EN ./RU

Запускаем ОХ

Вот наступил долгожданный момент первого запуска OX. Чтобы вступили в силу сделанные изменения в настройках веб сервера и сервера сервлетов, нужно перезапустить службы Apache2 и Tomcat, для этого надо выполнить такие команды:

>cd /usr/local/etc/rc.d

>sudo ./020.jakarta-tomcat50.sh stop

>sudo ./020.jakarta-tomcat50.sh start

>sudo ./apache2 .sh stop

>sudo ./apache2.sh start

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

  • /usr/local/openxchange/etc/init.d/groupware
  • /usr/local/openxchange/etc/init.d/sessiond
  • /usr/local/openxchange/etc/init.d/webmail

на предмет того, что в FreeBSD используется синтаксис команды ps, отличный от GNU/Linux ps. Для этого нужно заменить «ps xao “%p %a”» на «ps xao “pid args”», и раскомментировать строки:

sudo -u $USER $OX_BIN >> $LOGFILE 2>&1 &

ps xao "pid args" | grep -E ".*java.*-DappName=groupwareApp" | grep -v grep | awk "{print $1}"

После этого надо закомментировать строки:

ps axwww | grep -E ".*java.*-DappName=groupwareApp" | grep -v grep | awk "{print $1}"

и

su $USER -s /bin/bash $OX_BIN >> $LOGFILE 2>&1 &

Далее можно пробовать запустить openxchange:

> sudo $OX_home/etc/init.d/openexchange start

Если появились ошибки при старте groupware, webmail и sessiond, нужно по аналогии со скриптами из папки /usr/local/openxchange/sbin в папке /usr/local/openxchange/etc/init.d для всех файлов заменить командный интерпретатор с «#!/bin/sh» на «#!/bin/bash».

После пробных неудачных запусков выяснились еще некоторые изменения, которые нужно внести. Для файлов в папке /usr/local/openxchange/bin изменить командный интерпретатор с «#!/bin/sh» на «#!/bin/bash» и заменить строку:

SERVER=$(test "$HOSTTYPE" == "i386" && echo "-server")

на

SERVER=$(test "$HOSTTYPE" == "FreeBSD" && echo "-server")

Хочется обратить внимание на то, что скрипт /usr/local/openxchange/etc/init.d/openexchange с опцией start будет работать, но вот опция status и stop работать не будут. Это связанно с тем, что в FreeBSD очень длинная командная строка с опциями, в выводе команды ps укорачивается до названия команды, и однозначно определить, что запущено под этой командой, будет невозможно.

Для проверки после старта openexchange советую зайти по адресу: http://server_ip/cgi-bin/login.pl, где server_ip – адрес вашего сервера, ввести логин и пароль созданного пользователя, выбрать groupware, язык локализации RU и нажать login. Во время входа портал будет медленнее работать. Но это нормально, OX проверяет новую почту для пользователя, а почтовый сервер еще не настроен. По наступлению тайм-аута ответа почтового сервера отобразится главная страница портала. Все остальные функции портала будут работать, и можно будет насладиться проделанной работой.

В следующей статье вы узнаете, как настроить дополнительную функциональность OX-сервера:

  • почтовый сервер для работы с OX;
  • настройка доступа через webdav;
  • безопасные соединения HTTPS;
  • контроль над доступом к данным пользователей.

Литература:

  1. Файл INSTALL из архива пакета OX.
  2. Установка OX на FreeBSD от Peter Schober – http://homepage.univie.ac.at/peter.schober/OX_on_FreeBSD.html.
  3. Форум OX – http://www.open-xchange.org/cgi-bin/simpleforum.cgi.
  4. Документация по установке на другие операционные системы – http://www.open-xchange.org/oxwiki/OXInstallations.

Комментарии отсутствуют

Добавить комментарий

Комментарии могут оставлять только зарегистрированные пользователи

               Copyright © Системный администратор

Яндекс.Метрика
Tel.: (499) 277-12-45
E-mail: sa@samag.ru