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

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

Интеграция Open Source-решений  

Open Source в облачной среде

Облачные решения становятся всё более популярными в мире. Компании стремятся использовать их для

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

Автоматизация  

Нейросеть вам в руки! Как использовать ИИ для автоматизации задач

Использование ИИ для автоматизации задач помогает компании получить конкурентное преимущество, поскольку объединение

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

Рынок труда  

Специалист по этическому ИИ, инженер по квантовым вычислениям или аналитик по метавселенной?

Новые тенденции в развитии ИТ могут привести к возникновению новых специальностей в

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

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

Учитесь убеждать и побеждать

Издательство «БХВ», как всегда, порадовало своих читателей хорошими книжными новинками. Кроме популярных

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

Сетевая инфраструктура  

Как удаленная работа меняет подход к сетевой инфраструктуре?

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

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

Мониторинг  

Какой мониторинг нужен сегодня?

По мнению экспертов ГК InfoWatch, действия сотрудников – самая распространенная причина инцидентов

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

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

Руководство для тех, кто увлечен ИИ, программированием. И дизайном

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

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

Мобильные приложения  

Искусственный интеллект в мобильных приложениях: возможности и перспективы

Обзор современных применений ИИ в мобильных приложениях, анализ перспектив развития этой технологии,

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

ИТ-образование  

Как сделать ИТ-образование эффективным?

Эксперты ИТ-отрасли отвечают на вопросы «СА». Обсуждаем ключевые аспекты для улучшения образовательных

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

Work-life balance  

Как айтишнику найти баланс между работой и личной жизнью?

Обсуждаем инструменты для эффективного управления временем, снижения уровня стресса и достижения гармонии. На

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

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

Всё самое нужное – под одной обложкой

Отличительная черта книжных новинок, выпущенных недавно издательством «БХВ» – это их универсальность. Не просто

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

ИТ-инфраструктура  

Системы мониторинга ИТ-инфраструктуры-2025

Без мониторинга ИТ-инфраструктуры не обходится ни одна компания, хотя бы потому, что

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

Открытое ПО  

Безопасность Open Source: рискуем или контролируем?

Компания «Кросс технолоджис» изучила, как используется ПО с открытым кодом в компаниях

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

Работа с нейросетью  

Скажи, есть ли у тебя AI, и я скажу, кто ты

Недавно сервис по поиску работы SuperJob выяснил, что каждый второй россиянин уже

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

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

Друзья сайта  

 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