Editing Mysmpt-t
From JaWiki (Jabber/XMPP wiki)
Warning: The database has been locked for maintenance, so you will not be able to save your edits right now. You may wish to copy and paste your text into a text file and save it for later.
The administrator who locked it offered this explanation: MediaWiki upgrading
The edit can be undone.
Please check the comparison below to verify that this is what you want to do, and then save the changes below to finish undoing the edit.
Latest revision | Your text | ||
Line 1: | Line 1: | ||
− | '''MySMTP-t''' - легковесный шлюз Jabber-SMTP | + | '''MySMTP-t''' - легковесный шлюз Jabber-SMTP, который осуществляет прозрачное преобразование Jabber-трафика в SMTP и обратно. |
− | Целевая аудитория | + | Целевая аудитория: администраторы серверов Jabber. |
---- | ---- | ||
− | |||
Скачать все необходимые файлы можно из SVN svn://mytlt.ru/mysmtp-t | Скачать все необходимые файлы можно из SVN svn://mytlt.ru/mysmtp-t | ||
− | На данный момент | + | На данный момент проект насчитывает три файла: |
− | + | smtp -- отвечает за регистрацию пользователей, отправку сообщений из Jabber в SMTP, работает в режиме демона; | |
− | + | smtpbot -- отвечает за приём сообщений от почтового сервера и отправку их в Jabber, отправляет сообщения на авторизацию; | |
− | + | smtp.ini -- конфигурационный файл | |
− | + | ||
В процессе использования будет создан ещё файл smtp.db, который содержит информацию о пользователях. | В процессе использования будет создан ещё файл 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 | * MTA, например, Postfix | ||
* собственно сервер Jabber | * собственно сервер Jabber | ||
Line 41: | Line 31: | ||
# Our service name (FQDN) | # Our service name (FQDN) | ||
− | name= | + | name=dummy |
# Jabbber server | # Jabbber server | ||
server=jabber.org.net.ru | server=jabber.org.net.ru | ||
Line 47: | Line 37: | ||
port=5333 | port=5333 | ||
# Secret that is using while connecting to jabber server | # Secret that is using while connecting to jabber server | ||
− | password= | + | password=secret |
# Logfile to output information | # Logfile to output information | ||
logfile=log.txt | logfile=log.txt | ||
Line 53: | Line 43: | ||
# debug=1 | # debug=1 | ||
− | + | name - это полное имя сервиса в Jabber. То есть имя вида: smtp.my.jabber.server.ru, где my.jabber.server.ru - имя Вашего сервера Jabber.<br> | |
− | + | server - полное DNS имя Вашего Jabber-сервера.<br> | |
− | + | port - прослушиваемый порт Jabber-сервера к которому следует подключаться.<br> | |
− | + | password - пароль на подключение сервиса.<br> | |
− | + | logfile - имя файла для логов.<br> | |
− | + | debug - включение режима отладки. | |
− | Следует отметить, что при отсутствии имени сервиса оно будет выбрано автоматически путём добавления к имени сервера префикса smtp и точки. | + | Следует отметить, что при отсутствии имени сервиса оно будет выбрано автоматически путём добавления к имени сервера префикса smtp и знака точки. То есть для сервера jabber.org автоматически выбранное имя будет smtp.jabber.org. |
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
== Настройка MTA Postfix == | == Настройка MTA Postfix == | ||
Line 79: | Line 56: | ||
Итак, для настройки postfix нам необходимо внести изменения в файлы main.cf и master.cf, которые можно отнести, пожалуй, к самым главным файлам настройки postfix и в файле transport, который указывает на маршрутизацию писем по получателю. | Итак, для настройки postfix нам необходимо внести изменения в файлы main.cf и master.cf, которые можно отнести, пожалуй, к самым главным файлам настройки postfix и в файле transport, который указывает на маршрутизацию писем по получателю. | ||
+ | main.cf: | ||
+ | В пункт mydestination необходимо добавить обслуживаемый jabber-домен, например для jabber.org: | ||
− | + | <nowiki>'''mydestination = $myhostname, localhost, jabber.org'''</nowiki> | |
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | ||
− | + | (в данном случае я добавил только jabber.org в конец списка) | |
− | + | Также требуется отключить проверку пользователей jabber-домена на присутствие в системе: | |
− | + | <nowiki>'''local_recipient_maps ='''</nowiki> | |
− | + | То есть присвоить этому параметру пустое значение. Если у Вас обслуживается несколько доменов, то необходимо создать дополнительный файл, который будет содержать запись что все пользователи jabber-домена являются допустимыми. Подробнее об этом можно прочитать в документации по postfix. | |
+ | Если параметр transport_maps ещё не включает в себя файл transport, то добавьте его | ||
− | + | <nowiki>transport_maps = hash:/etc/postfix/transport</nowiki> | |
− | + | master.cf. Добавляем следующие строки транспорта: | |
− | + | ||
− | + | <nowiki>jabber unix - n n - - pipe | |
+ | flags=DRhu user=jabber argv=/opt/jabber/mailgate/smtpbot ${sender} ${recipient}</nowiki> | ||
− | + | Здесь в поле user указывается пользователь от чьего имени работает jabber-сервер, и исправляете путь до | |
− | + | местонахождения траспорта в Вашей файловой системе. | |
− | + | transport. Прописываем строчку для нашего домена (на примере jabber.org): | |
− | + | <nowiki>jabber.org jabber:</nowiki> | |
− | После | + | После это выполните команду '''postmap transport'''. |
[[Category:Gateway]] | [[Category:Gateway]] | ||
− |