qnote:exim
Differences
This shows you the differences between two versions of the page.
Both sides previous revisionPrevious revisionNext revision | Previous revision | ||
qnote:exim [2017/04/19 17:53] – k | qnote:exim [2024/10/09 13:48] (current) – [Удалить письмо из очереди] k | ||
---|---|---|---|
Line 1: | Line 1: | ||
===== Быстрые заметки по Exim ===== | ===== Быстрые заметки по Exim ===== | ||
+ | |||
+ | ==== Exim как дефолтный MTA в системе ==== | ||
+ | |||
+ | FIXME Разобраться как выставить exim дефолтным. Нет команды --set. \\ | ||
+ | FIXME Пока просто удалил postfix (в итоге он все равно должен был быть удален) | ||
+ | |||
+ | < | ||
+ | [root@noc exim]# alternatives --display mta | ||
+ | mta - status is auto. | ||
+ | link currently points to / | ||
+ | / | ||
+ | slave mta-pam: / | ||
+ | slave mta-mailq: / | ||
+ | slave mta-newaliases: | ||
+ | slave mta-rmail: / | ||
+ | slave mta-rsmtp: (null) | ||
+ | slave mta-runq: (null) | ||
+ | slave mta-sendmail: | ||
+ | slave mta-mailqman: | ||
+ | slave mta-newaliasesman: | ||
+ | slave mta-aliasesman: | ||
+ | slave mta-sendmailman: | ||
+ | / | ||
+ | slave mta-pam: / | ||
+ | slave mta-mailq: / | ||
+ | slave mta-newaliases: | ||
+ | slave mta-rmail: / | ||
+ | slave mta-rsmtp: / | ||
+ | slave mta-runq: / | ||
+ | slave mta-sendmail: | ||
+ | slave mta-mailqman: | ||
+ | slave mta-newaliasesman: | ||
+ | slave mta-aliasesman: | ||
+ | slave mta-sendmailman: | ||
+ | Current `best' version is / | ||
+ | [root@noc exim]# alternatives --config mta | ||
+ | |||
+ | There are 2 programs which provide ' | ||
+ | |||
+ | Selection | ||
+ | ----------------------------------------------- | ||
+ | *+ 1 / | ||
+ | | ||
+ | |||
+ | Enter to keep the current selection[+], | ||
+ | </ | ||
+ | |||
==== Запуск очереди ==== | ==== Запуск очереди ==== | ||
root@host# exiqgrep -i | xargs exim -M\\ | root@host# exiqgrep -i | xargs exim -M\\ | ||
Line 7: | Line 54: | ||
---- | ---- | ||
- | ==== Удалить писmмо из очереди === | + | ==== Удалить письмо из очереди === |
root@host# exim -Mrm 1ZEKTg-0001Vb-Kf\\ | root@host# exim -Mrm 1ZEKTg-0001Vb-Kf\\ | ||
+ | |||
Если надо много писем, то можно так:\\ | Если надо много писем, то можно так:\\ | ||
- | root@host# exiqgrep -i | xargs exim -M | + | root@host# exiqgrep -i | xargs exim -M\\ |
+ | [[https:// | ||
+ | exipick -i | xargs exim -Mrm | ||
+ | |||
---- | ---- | ||
Line 47: | Line 99: | ||
===== Элементы конфигурации ===== | ===== Элементы конфигурации ===== | ||
- | ==== endpass ==== | + | ==== Простая конфигурация exim c отправкой |
- | Используется при написании правил acl (c действием access) для того, что бы задать | + | |
- | Например, в одном из правил acl есть несколько условий: | + | Данную конфигурацию можно использовать |
+ | |||
+ | <hidden Конфигурация exim, gmail как релей> | ||
< | < | ||
- | accept | + | primary_hostname = noc1 |
- | | + | |
- | | + | domainlist local_domains = @ : localhost |
- | | + | hostlist |
+ | |||
+ | daemon_smtp_ports = 25 | ||
+ | local_interfaces = 127.0.0.1 | ||
+ | |||
+ | never_users = root | ||
+ | rfc1413_hosts = * | ||
+ | rfc1413_query_timeout = 5s | ||
+ | ignore_bounce_errors_after = 2d | ||
+ | timeout_frozen_after = 7d | ||
+ | |||
+ | begin routers | ||
+ | |||
+ | send_via_gmail: | ||
+ | condition = ${lookup {$local_part@$domain} lsearch {/ | ||
+ | driver = manualroute | ||
+ | | ||
+ | transport = gmail_smtp | ||
+ | route_list = * smtp.gmail.com | ||
+ | |||
+ | system_aliases: | ||
+ | driver | ||
+ | allow_fail | ||
+ | allow_defer | ||
+ | data = ${lookup{$local_part}lsearch{/ | ||
+ | # user = exim | ||
+ | | ||
+ | pipe_transport = address_pipe | ||
+ | |||
+ | localuser: | ||
+ | driver = accept | ||
+ | check_local_user | ||
+ | # local_part_suffix = +* : -* | ||
+ | # local_part_suffix_optional | ||
+ | transport = local_delivery | ||
+ | cannot_route_message = Unknown user | ||
+ | |||
+ | begin transports | ||
+ | |||
+ | gmail_smtp: | ||
+ | driver = smtp | ||
+ | port = 587 | ||
+ | hosts_require_auth = * | ||
+ | hosts_require_tls = * | ||
+ | |||
+ | local_delivery: | ||
+ | driver = appendfile | ||
+ | file = / | ||
+ | delivery_date_add | ||
+ | envelope_to_add | ||
+ | return_path_add | ||
+ | group = mail | ||
+ | mode = 0660 | ||
+ | |||
+ | address_pipe: | ||
+ | driver = pipe | ||
+ | return_output | ||
+ | |||
+ | address_file: | ||
+ | driver = appendfile | ||
+ | delivery_date_add | ||
+ | envelope_to_add | ||
+ | return_path_add | ||
+ | |||
+ | begin authenticators | ||
+ | |||
+ | gmail_login: | ||
+ | driver = plaintext | ||
+ | public_name = LOGIN | ||
+ | client_send = : XXXX@gmail.com : PASSWORD6 | ||
+ | |||
+ | begin retry | ||
+ | |||
+ | * * | ||
</ | </ | ||
+ | </ | ||
+ | ==== Простая конфигурация exim ==== | ||
+ | Подобную конфигурацию можно использовать на машинах мониторинга для отправки алармов.\\ | ||
+ | Есть контроль получателей сообщений. | ||
+ | <hidden Простая конфигурация exim> | ||
+ | < | ||
+ | | ||
- | -- Если письмо адресовано не домену xxx.com (условие domain), то письмо передается для дальнейшей проверки | + | #domainlist local_domains = @ : localhost : localhost.localdomain |
+ | | ||
+ | # | ||
+ | | ||
+ | | ||
+ | | ||
- | -- Если письмо адресовано домену xxx.com, но не прошла проверка получателся (условие verify), то такое письмо дропается с сообщением "No such user" | + | never_users = root |
+ | | ||
+ | | ||
+ | | ||
+ | | ||
+ | begin routers | ||
+ | | ||
+ | | ||
+ | | ||
+ | | ||
+ | | ||
+ | | ||
+ | | ||
+ | | ||
+ | | ||
+ | | ||
+ | | ||
+ | | ||
+ | | ||
+ | | ||
+ | | ||
+ | data = ${lookup{$local_part}lsearch{/ | ||
+ | # user = exim | ||
+ | | ||
+ | | ||
+ | |||
+ | |||
+ | localuser: | ||
+ | | ||
+ | | ||
+ | # local_part_suffix = +* : -* | ||
+ | # local_part_suffix_optional | ||
+ | | ||
+ | | ||
+ | |||
+ | begin transports | ||
+ | |||
+ | | ||
+ | | ||
+ | |||
+ | | ||
+ | | ||
+ | file = / | ||
+ | | ||
+ | | ||
+ | | ||
+ | group = mail | ||
+ | mode = 0660 | ||
+ | |||
+ | | ||
+ | | ||
+ | | ||
+ | |||
+ | | ||
+ | | ||
+ | | ||
+ | | ||
+ | | ||
+ | |||
+ | |||
+ | begin retry | ||
+ | |||
+ | | ||
+ | </ | ||
+ | </ | ||
+ | |||
+ | ---- | ||
+ | |||
+ | ==== Endpass ==== | ||
+ | Используется при написании правил acl (c действием access) для того, что бы задать поведение exim при несовпадении условий правила.\\ | ||
+ | |||
+ | |||
+ | |||
+ | Например, | ||
+ | < | ||
+ | accept | ||
+ | endpass | ||
+ | message | ||
+ | verify | ||
+ | </ | ||
- | -- Если письмо адресовано домену xxx.com (условие domain), то оно принимает и дальнейшая проверка по правилам acl прекращается. | + | * Если письмо адресовано не домену xxx.com (условие domain), то письмо передается для дальнейшей проверки по оставшимся правилам acl. \\ **Несовпадение условий правила acl произошло до endpass |
+ | * Если письмо адресовано домену xxx.com, но не прошла проверка получателся (условие verify), то такое письмо дропается с сообщением "No such user" | ||
+ | * Если письмо адресовано домену xxx.com (условие domain) и успешно прошла проверка получателя (условие verify), то такое письмо принимается и дальнейшая проверка по правилам acl прекращается. | ||
qnote/exim.1492613588.txt.gz · Last modified: (external edit)