Difference between revisions of "Mysmpt-t"
m («Mysmpt-t» переименована в «Gateway:SMTP:Mysmpt-t»: Для консистентности имен) |
|||
| Line 25: | Line 25: | ||
и собственно сервер Jabber | и собственно сервер Jabber | ||
| − | ( | + | Настройка производится в нескольких местах: сам транспорт, база данных транспорта, почтовый агент, Jabber-сервер. |
| − | --[ | + | |
| + | == Настройка самого транспорта == | ||
| + | Настройка транспорта производится в файле smtp.ini. Пример данного файла приводится в дистрибутиве: | ||
| + | |||
| + | # Our service name (FQDN) | ||
| + | name=dummy | ||
| + | # Jabbber server | ||
| + | server=jabber.org.net.ru | ||
| + | # Port on jabber server | ||
| + | port=5333 | ||
| + | # Secret that is using while connecting to jabber server | ||
| + | password=secret | ||
| + | # Logfile to output information | ||
| + | logfile=log.txt | ||
| + | # Turn on debugging | ||
| + | # debug=1 | ||
| + | |||
| + | name - это полное имя сервиса в Jabber. То есть имя вида: smtp.my.jabber.server.ru, где my.jabber.server.ru - имя Вашего сервера Jabber. | ||
| + | server - полное DNS имя Вашего Jabber-сервера. | ||
| + | port - прослушиваемый порт Jabber-сервера к которому следует подключаться. | ||
| + | password - пароль на подключение сервиса. | ||
| + | logfile - имя файла для логов. | ||
| + | debug - включение режима отладки. | ||
| + | |||
| + | Следует отметить, что при отсутствии имени сервиса оно будет выбрано автоматически путём добавления к имени сервера префикса smtp и знака точки. То есть для сервера jabber.org автоматически выбранное имя будет smtp.jabber.org. | ||
| + | |||
| + | == Настройка MTA Postfix == | ||
| + | Если у Вас уже имеется настроенный MTA Postfix, то изменения конфигурации для поддержания дополнительного домена будут минимальные, в случае необходимости настройки следует обратиться к [http://www.postfix.org официальной документации], так как объём данного документа не позволяет нам покрыть даже часть возможных вариантов настройки почтового сервера пусть даже небольшого масштаба. | ||
| + | |||
| + | Итак, для настройки postfix нам необходимо внести изменения в файлы main.cf и master.cf, которые можно отнести, пожалуй, к самым главным файлам настройки postfix и в файле transport, который указывает на маршрутизацию писем по получателю. | ||
| + | main.cf: | ||
| + | В пункт mydestination необходимо добавить обслуживаемый jabber-домен, например для jabber.org: | ||
| + | '''mydestination = $myhostname, localhost, jabber.org''' | ||
| + | (в данном случае я добавил только jabber.org в конец списка) | ||
| + | Также требуется отключить проверку пользователей jabber-домена на присутствие в системе: | ||
| + | '''local_recipient_maps =''' | ||
| + | То есть присвоить этому параметру пустое значение. Если у Вас обслуживается несколько доменов, то необходимо создать дополнительный файл, который будет содержать запись что все пользователи jabber-домена являются допустимыми. Подробнее об этом можно прочитать в документации по postfix. | ||
| + | Если параметр transport_maps ещё не включает в себя файл transport, то добавьте его | ||
| + | transport_maps = hash:/etc/postfix/transport | ||
| + | |||
| + | master.cf. Добавляем следующие строки транспорта: | ||
| + | jabber unix - n n - - pipe | ||
| + | flags=DRhu user=jabber argv=/opt/jabber/mailgate/smtpbot ${sender} ${recipient} | ||
| + | Здесь в поле user указывается пользователь от чьего имени работает jabber-сервер, и исправляете путь до | ||
| + | местонахождения траспорта в Вашей файловой системе. | ||
| + | |||
| + | transport. Прописываем строчку для нашего домена (на примере jabber.org): | ||
| + | jabber.org jabber: | ||
| + | |||
| + | После это выполните команду '''postmap transport'''. | ||
Revision as of 22:54, 26 December 2006
MySMTP-t - легковесный шлюз Jabber-SMTP, который осуществляет прозрачное преобразование Jabber трафика в SMTP и обратно.
Целевая аудитория: администраторы Jabber серверов.
Скачать все необходимые файлы можно из SVN svn://mytlt.ru/mysmtp-t На данный момент проект насчитывает три файла: smtp -- отвечает за регистрацию пользователей, отправку сообщений из Jabber в SMTP, работает в режиме демона; smtpbot -- отвечает за приём сообщений от почтового сервера и отправку их в Jabber, отправляет сообщения на авторизацию; smtp.ini -- конфигурационный файл
В процессе использования будет создан ещё файл smtp.db, который содержит информацию о пользователях.
Для работы потребуется: Perl5 (проверялось на Perl-5.8.8)модули:
Net::Jabber (и Net::XMPP)
MIME::Parser
MIME::Base64
MIME::QuotedPrint
Mail::Sendmail
Getopt::Long
DBD::SQLite
MTA Postfix и собственно сервер Jabber
Настройка производится в нескольких местах: сам транспорт, база данных транспорта, почтовый агент, Jabber-сервер.
Настройка самого транспорта
Настройка транспорта производится в файле smtp.ini. Пример данного файла приводится в дистрибутиве:
- Our service name (FQDN)
name=dummy
- Jabbber server
server=jabber.org.net.ru
- Port on jabber server
port=5333
- Secret that is using while connecting to jabber server
password=secret
- Logfile to output information
logfile=log.txt
- Turn on debugging
- debug=1
name - это полное имя сервиса в Jabber. То есть имя вида: smtp.my.jabber.server.ru, где my.jabber.server.ru - имя Вашего сервера Jabber. server - полное DNS имя Вашего Jabber-сервера. port - прослушиваемый порт Jabber-сервера к которому следует подключаться. password - пароль на подключение сервиса. logfile - имя файла для логов. debug - включение режима отладки.
Следует отметить, что при отсутствии имени сервиса оно будет выбрано автоматически путём добавления к имени сервера префикса smtp и знака точки. То есть для сервера jabber.org автоматически выбранное имя будет smtp.jabber.org.
Настройка MTA Postfix
Если у Вас уже имеется настроенный MTA Postfix, то изменения конфигурации для поддержания дополнительного домена будут минимальные, в случае необходимости настройки следует обратиться к официальной документации, так как объём данного документа не позволяет нам покрыть даже часть возможных вариантов настройки почтового сервера пусть даже небольшого масштаба.
Итак, для настройки postfix нам необходимо внести изменения в файлы main.cf и master.cf, которые можно отнести, пожалуй, к самым главным файлам настройки postfix и в файле transport, который указывает на маршрутизацию писем по получателю. main.cf: В пункт mydestination необходимо добавить обслуживаемый jabber-домен, например для jabber.org: mydestination = $myhostname, localhost, jabber.org (в данном случае я добавил только jabber.org в конец списка) Также требуется отключить проверку пользователей jabber-домена на присутствие в системе: local_recipient_maps = То есть присвоить этому параметру пустое значение. Если у Вас обслуживается несколько доменов, то необходимо создать дополнительный файл, который будет содержать запись что все пользователи jabber-домена являются допустимыми. Подробнее об этом можно прочитать в документации по postfix. Если параметр transport_maps ещё не включает в себя файл transport, то добавьте его transport_maps = hash:/etc/postfix/transport
master.cf. Добавляем следующие строки транспорта: jabber unix - n n - - pipe
flags=DRhu user=jabber argv=/opt/jabber/mailgate/smtpbot ${sender} ${recipient}
Здесь в поле user указывается пользователь от чьего имени работает jabber-сервер, и исправляете путь до местонахождения траспорта в Вашей файловой системе.
transport. Прописываем строчку для нашего домена (на примере jabber.org): jabber.org jabber:
После это выполните команду postmap transport.