OpenEMM — различия между версиями
Материал из pNp Wiki
Suser (обсуждение | вклад) м |
Suser (обсуждение | вклад) |
||
(не показано 6 промежуточных версий этого же участника) | |||
Строка 17: | Строка 17: | ||
tar xzpf OpenEMM-2013_R2-bin.tar.gz | tar xzpf OpenEMM-2013_R2-bin.tar.gz | ||
chown -R openemm:openemm /home/openemm/ | chown -R openemm:openemm /home/openemm/ | ||
+ | * Выставим SUID бит для приложения smctl, чтобы openemm мог управлять sendmail'ом | ||
+ | chown root:root /home/openemm/bin/smctrl | ||
+ | chown u+s /home/openemm/bin/smctrl | ||
* Создадим две базы | * Создадим две базы | ||
cd /home/openemm/USR_SHARE/ | cd /home/openemm/USR_SHARE/ | ||
Строка 64: | Строка 67: | ||
make -C /etc/mail | make -C /etc/mail | ||
/etc/init.d/sendmail reload | /etc/init.d/sendmail reload | ||
+ | |||
+ | * Настраиваем автозапуск openemm | ||
+ | nano /etc/init.d/openemm | ||
+ | |||
+ | #!/bin/sh | ||
+ | |||
+ | ### BEGIN INIT INFO | ||
+ | # Provides: openemm | ||
+ | # Required-Start: $network $remote_fs $syslog | ||
+ | # Required-Stop: $network $remote_fs $syslog | ||
+ | # Default-Start: 2 3 4 5 | ||
+ | # Default-Stop: | ||
+ | # Short-Description: Start OpenEMM daemon | ||
+ | ### END INIT INFO | ||
+ | |||
+ | BIN="/home/openemm/bin/openemm.sh" | ||
+ | USER=openemm | ||
+ | |||
+ | daemon_start() { | ||
+ | su $USER $BIN start | ||
+ | } | ||
+ | |||
+ | daemon_stop() { | ||
+ | su $USER $BIN stop | ||
+ | } | ||
+ | |||
+ | case "$1" in | ||
+ | start) | ||
+ | daemon_start | ||
+ | ;; | ||
+ | stop) | ||
+ | daemon_stop | ||
+ | ;; | ||
+ | restart) | ||
+ | daemon_stop | ||
+ | sleep 1 | ||
+ | daemon_start | ||
+ | ;; | ||
+ | *) | ||
+ | echo "Usage $0 start|restart|stop" | ||
+ | esac | ||
+ | |||
+ | exit 0 | ||
+ | |||
+ | insserv openemm | ||
+ | |||
+ | ==Прочие== | ||
+ | |||
+ | ===Настройка OpenEMM=== | ||
+ | ==Настройка MySQL== | ||
+ | nano /home/openemm/webapps/openemm/WEB-INF/classes/emm.properties | ||
+ | jdbc.driverClassName=com.mysql.jdbc.Driver | ||
+ | jdbc.url=jdbc:mysql://localhost/openemm?useUnicode=yes&characterEncoding=UTF-8&$ | ||
+ | jdbc.dialect=org.hibernate.dialect.MySQLDialect | ||
+ | jdbc.username=agnitas | ||
+ | jdbc.password=openemm | ||
+ | jdbc.maxCount=30 | ||
+ | jdbc.maxWait=10000 | ||
+ | ==Настройка размера вложения== | ||
+ | nano /home/openemm/webapps/openemm/WEB-INF/classes/emm.properties | ||
+ | attachment.maxSize=5242880 | ||
+ | Нужно учесть что max_allowed_packet должно быть больше attachment.maxSize. Посмотреть текущие значение можно в консоле mysql. | ||
+ | mysql -p | ||
+ | mysql> show variables like 'max_allowed_packet'; | ||
+ | +--------------------+----------+ | ||
+ | | Variable_name | Value | | ||
+ | +--------------------+----------+ | ||
+ | | max_allowed_packet | 16777216 | | ||
+ | +--------------------+----------+ | ||
+ | 1 row in set (0.00 sec) |
Текущая версия на 14:32, 9 июля 2014
Содержание
Установка OpenEMM на Debian 7
- Если Вы устанавливаете в 64 битно системе:
dpkg --add-architecture i386 aptitude update aptitude install ia32-libs
- Устанавливаем пакеты нужные для работы сервиса
aptitude install tzdata=2013b-2 aptitude install openjdk-7-jre mysql-server sendmail python-mysqldb tomcat6 ia32-libs
- Добавляем пользователя:
useradd -m -G adm -d /home/openemm -s /bin/bash openemm
- Делаем сим линк на почтовый лог
ln -s /var/log/mail.log /var/log/maillog
- Скачиваем дистрибутив OpenEMM и распаковывем его:
cd /home/openemm wget http://sourceforge.net/projects/openemm/files/OpenEMM%20software/OpenEMM%202013/OpenEMM-2013_R2-bin.tar.gz/download tar xzpf OpenEMM-2013_R2-bin.tar.gz chown -R openemm:openemm /home/openemm/
- Выставим SUID бит для приложения smctl, чтобы openemm мог управлять sendmail'ом
chown root:root /home/openemm/bin/smctrl chown u+s /home/openemm/bin/smctrl
- Создадим две базы
cd /home/openemm/USR_SHARE/ mysqladmin -u root -p create openemm_cms mysqladmin -u root -p create openemm mysql -u root -p openemm < openemm-2013.sql mysql -u root -p openemm_cms < openemm_cms-2013.sql
- Корректируем файл openemm.sh для запуска в Debian
Редактируем файл openemm.sh
nano /home/openemm/bin/openemm.sh CATALINA_HOME="$OPENEMM_SW/tomcat"
на
CATALINA_HOME="/usr/share/tomcat6"
и
JAVA_HOME="$OPENEMM_SW/java"
на
JAVA_HOME="/usr/"
- Заходим в админку
Username: admin Password: openemm
Если будем использовать внутренний сервер
nano /etc/mail/sendmail.mc
Меняем
DAEMON_OPTIONS(`Family=inet, Name=MTA-v4, Port=smtp, Addr=127.0.0.1')dnl
на
DAEMON_OPTIONS(`Family=inet, Name=MTA-v4, Port=smtp')dnl
Добавляем в конец файла:
INPUT_MAIL_FILTER(`bav', `S=unix:/home/openemm/var/run/bav.sock, F=T')dnl
Далее ищем строку начинающиюся с
FEATURE(`no_default_msa
и следующей строкой добавляем
FEATURE(`mailertable', `hash -o /etc/mail/mailertable.db')dnl
Если файл relay-domains не существует, то создаем его
touch relay-domains
и добавляем в него хост с которого будет вестись рассылка
news.ipnp.su
В файл добавляем mailertable
news.ens-group.com procmail:/home/openemm/conf/bav/bav.rc
После применим настройки:
make -C /etc/mail /etc/init.d/sendmail reload
- Настраиваем автозапуск openemm
nano /etc/init.d/openemm
#!/bin/sh ### BEGIN INIT INFO # Provides: openemm # Required-Start: $network $remote_fs $syslog # Required-Stop: $network $remote_fs $syslog # Default-Start: 2 3 4 5 # Default-Stop: # Short-Description: Start OpenEMM daemon ### END INIT INFO BIN="/home/openemm/bin/openemm.sh" USER=openemm daemon_start() { su $USER $BIN start } daemon_stop() { su $USER $BIN stop } case "$1" in start) daemon_start ;; stop) daemon_stop ;; restart) daemon_stop sleep 1 daemon_start ;; *) echo "Usage $0 start|restart|stop" esac exit 0
insserv openemm
Прочие
Настройка OpenEMM
Настройка MySQL
nano /home/openemm/webapps/openemm/WEB-INF/classes/emm.properties jdbc.driverClassName=com.mysql.jdbc.Driver jdbc.url=jdbc:mysql://localhost/openemm?useUnicode=yes&characterEncoding=UTF-8&$ jdbc.dialect=org.hibernate.dialect.MySQLDialect jdbc.username=agnitas jdbc.password=openemm jdbc.maxCount=30 jdbc.maxWait=10000
Настройка размера вложения
nano /home/openemm/webapps/openemm/WEB-INF/classes/emm.properties attachment.maxSize=5242880
Нужно учесть что max_allowed_packet должно быть больше attachment.maxSize. Посмотреть текущие значение можно в консоле mysql.
mysql -p mysql> show variables like 'max_allowed_packet'; +--------------------+----------+ | Variable_name | Value | +--------------------+----------+ | max_allowed_packet | 16777216 | +--------------------+----------+ 1 row in set (0.00 sec)