Скорая Компьютерная Помощь г. Калуга

Полный спектр компьютерных услуг!

Здравствуйте, гость ( Вход | Регистрация )

> Внимание!

  • Вся информация, расположенная в данном и других разделах форума получена из открытых источников (интернет-ресурсы, средства массовой информации, печатные издания и т.п.) и/или добавлена самими пользователями. Администрация форума предоставляет его участникам площадку для общения / размещения файлов / статей и т.п. и не несет ответственности за содержание сообщений, а также за возможное нарушение авторских, смежных и каких-либо иных прав, которое может повлечь за собой информация, содержащаяся в сообщениях.
Ремонт компьютеров в калуге Рекламное место сдается
 
Ответить в эту темуОткрыть новую тему
> Системное администрирование / Установка Request Tracker 3.8
Decker
сообщение 22.1.2011, 21:13
Сообщение #1


Администратор
*****

Группа: Главные администраторы
Сообщений: 14349
Регистрация: 12.10.2007
Из: Twilight Zone
Пользователь №: 1







Приветствую тебя, %habrauser%!




Предыстория:


В данный момент я работаю в небольшой конторе, которая занимается консультированием, аудитом и обслуживание в области IT. Хотя контора и небольшая, количество клиентов у нас росло быстрыми темпами, и без нормального хелпдеска обойтись было уже очень сложно. Рассмотрев приличный перечень продуктов, как платные так и бесплатные, наш выбор пал на продукт фирмы BestPractical, который называется весьма незамысловато Request Tracker.





Request Tracker—система учёта и отслеживания заявок уровня предприятия с открытым исходным кодом, позволяющая управлять задачами, проблемами, и внешними запросами от пользователей. Система написана на объектно-ориентированном языке Perl. Система начала разрабатываться с 1996, и используется системными администраторами, сотрудниками служб техподдержки, IT-менеджерами, разработчиками и маркетинговыми отделами.



ru.wikipedia.org/wiki/Request_Tracker


Выбран был по следующим критериям



  • бесплатный (есть возможность использовать по модели SaaS с ежемесячной платой)
  • кросплатформенный (написан на PERL)
  • свободная лицензия GPLv2
  • очень хорошо документирован
  • поддерживает различные СУБД (MySQL, PostgreSQL, SQlite, Oracle DB)
  • интегрирован движок RTFM (аналог Wiki)




















Текущая версия 3.8.8 от 5 мая 2010 года, вот ее сейчас мы и будем устанавливать.




Установка:




В качестве операционной системы я использую Freebsd 8 ветки. Как обычно перед установкой чего-либо обновляем порты:



# portsnap fetch update



В качестве веб-сервера я буду использовать классический вариант: apache 2.2 с mod_perl2 (можете использовать nginx или lighttpd)



# cd /usr/ports/www/apache22 && make install clean

# cd /usr/ports/www/mod_perl2 && make install clean





Теперь устанавливаем сам RT 3.8:



# cd /usr/ports/www/rt38 && make install clean



В качестве СУБД я буду использовать MySql 5.1



# cd /usr/ports/database/mysql51-server && make install clean



После установки прописываем возможность запуска приложений в /etc/rc.conf



apache22_enable="YES"



mysql_enable="YES"




и теперь запускаем только mysql-server



# /usr/local/etc/rc.d/mysql-server start



Теперь проверяем все ли зависимости RT у нас правильно установились:



# /usr/local/sbin/rt-test-dependencies --with-mysql --with-modperl2



Если видим в конце строчку «All dependencies have been found” Значит все хорошо, если нет, то настраиваем CPAN и устанавливаем недостающие зависимости:

# /usr/bin/perl -MCPAN -e shell

# /usr/local/sbin/rt-test-dependencies --with-mysql --with-modperl2 –install





C программным обеспечением разобрались, теперь перейдем к настройке RT. У RT есть два конфигурационных файла RT_Config.pm и RT_SiteConfig.pm. Файл RT_Config.pm содержит значения по умолчанию, которые заменяются значениями из файла RT_SiteConfig.pm. Поэтому открываем файл RT_SiteConfig.pm и указываем свои значения вместо дефолтных:



Set( $rtname, 'Firma');

Set($WebBaseURL , "rt.domen.com");

Set( $WebPath , "");



Set($DataBaseType , 'mysql');

Set($DatabaseHost , 'localhost');

Set($DatabaseRTHost , 'localhost');

Set($DatabaseName , 'rt3');

Set($DatabaseUser, 'rt38');

Set($DatabasePassword , password);

Set($Timezone, 'Asia/Sakhalin');



Set($CorrespondAddress, '[email protected]);

Set($CommentAddress, '[email protected]);

Set($RTAddressRegexp, '^support(-comment)?@(domen).(com)$');

Set($OwnerEmail, '[email protected]');



Set($AutoCreate, {Privileged => 1});

Set($NotifyActor, 1);

1;





Перед этим мы заводим пользователя в mysql и указываем его логин и пароль в данном файле. Теперь инициализируем базу данных RT (инициализируем от рута, скрипт сам даст необходимые права для пользователя, которого мы указали в RT_Config.pm):



# rt-setup-database --action init --dba root --prompt-for-dba-password



Назначаем права на конфигурационные файлы:



# Chown www /usr/local/etc/rt38/RT_Config.pm

# Chmod 600 /usr/local/etc/rt38/RT_Config.pm

# Chown www /usr/local/etc/rt38/RT_SiteConfig.pm

# Chmod 600 /usr/local/etc/rt38/RT_SiteConfig.pm





В принципе для запуска RT все готово, но у нас есть один ньюанс, корпоративная почта работает через Google Apps и аккаунт [email protected] завден там, следовательно нам надо как-то научить RT получать почту с Google Apps. В этом нам поможет fetchmail, устанавливаем:



# cd /usr/ports/mail/fetchmail/ && make install clean



Так как gmail работает по зашифрованному протоколу, нам нужно подсунуть эти сертификаты fetchmail. Для этого создаем директорию под сертификаты:



# mkdir /usr/local/certs/



Создаем внутри этой директории файл:



# touch /usr/local/certs/gmail.pem



И выполняем скрипт чтобы получить сертификат:



# openssl s_client -connect pop.gmail.com:995 -showcerts > /usr/local/certs/gmail.pem



Правим получившийся файл, удаляем все до -----BEGIN CERTIFICATE----- и все что после -----END CERTIFICATE----- Потом копируем утилиту для хеширования



# cp /usr/src/crypto/openssl/tools/c_rehash /usr/local/bin/c_rehash

# chmod +x /usr/local/bin/c_rehash





И выполняем хеширование сертификата:



# c_rehash /usr/local/certs/



Теперь нам нужно получить отпечаток сертификата и вставить его в конфиг fetchmail



# openssl x509 -in /usr/local/certs/gmail.pem -noout -md5 –fingerprint



Отпечаток получен, осталось поправить конфиг fetchmail’a примерно до такого вида:



defaults        protocol pop3,

                timeout 60,



                fetchall



set logfile=/var/log/fetchmail



poll pop.gmail.com

port 995

username [email protected]

password '****'

mda "/usr/local/bin/rt-mailgate --url ip-address --action correspond --queue General"

ssl

sslcertpath /usr/local/certs/

sslfingerprint "6B:**:**:**:**:**:**:**:**:**:**:**:**:**:B6"



 



(тут небольшое отступление, fetchmail запускается от своего пользователя fetchmail, но почему-то у меня он так не захотел работать, а в логах писал «fetchmail: Cannot switch effective user id to 0: Operation not permitted” поэтому как временное решение данной проблемы, я запустил fetchmail под рутом, что не есть хорошо. Если кто-то знает решение проблемы, очень буду рад услышать)



Добавляем в /etc/rc.conf



fetchmail_enable="YES"



fetchmail_user="root"



создаем лог файл для fetchmail, вообще-то он и так кладет логи в /var/log/maillog но чтобы они не перемешивались с остальными



# touch /var/log/fetchmail



и стартуем fetchmail



# /usr/local/etc/rc.d/fetchmail start



По умолчанию fetchmail проверяет почту раз в 900 секунд, это можно настроить, проправив стартовый скрипт.



Осталось поправить конфиг apache виртуальный хост следующего содержания и стартуем его



<VirtualHost *:80>

ServerName rt.domen.com

ServerAdmin [email protected]

DocumentRoot /usr/local/share/rt38/html

AddDefaultCharset UTF-8

PerlModule Apache::DBI

PerlRequire /usr/local/bin/webmux.pl

<Directory /usr/local/share/rt38/html>

  Order allow,deny

  Allow from all

  SetHandler perl-script

  PerlResponseHandler RT::Mason

</Directory>



<Location /NoAuth>

  Order allow,deny

  Allow from IP-ADDRESS

  Satisfy any

</Location>



<Location /REST/1.0/NoAuth>

  Order allow,deny

  Allow from IP-ADDRESS

  Satisfy any

</Location>



</VirtualHost>



Отправляем письмо на [email protected] и заходим на rt.domen.com и посмотреть что у нас получилось, стандартные логин/пароль — root/password. Если что-то не так, смотрим логи apache и fetchmail



На этом установка Request Tracker 3.8 завершена. Если данная тема интересна, я продолжу писать про эту систему, и в следующей статье мы рассмотрим настройку.



P.S. не сильно подробно расписал?
Original source: habrahabr.ru (comments).

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


--------------------

Вернуться в начало страницы
 
+Ответить с цитированием данного сообщения

Ответить в эту темуОткрыть новую тему
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 

Рекламное место сдается Рекламное место сдается
Текстовая версия Сейчас: 13.6.2025, 14:29
Рейтинг@Mail.ru
Яндекс.Метрика Яндекс цитирования