EXIM, sendmail, postfix, Dovecot и прочие. Решение проблем связанных с работой электронной почты
Модератор: xM
Правила форума
Убедительная просьба юзать теги [code] при оформлении листингов.
Сообщения не оформленные должным образом имеют все шансы быть незамеченными.
-
m0rri5
- рядовой
- Сообщения: 30
- Зарегистрирован: 2009-12-30 14:33:26
Непрочитанное сообщение
m0rri5 » 2010-01-20 17:15:09
Здравствуйте коллеги!
По предыдущей статье так и не добился ничего, решил взять из этой статьи,
http://www.lissyara.su/articles/freebsd ... rier-imap/
При открытии postfixadmin пишет
Код: Выделить всё
Running software:
PHP version 5.2.11
Apache/2.2.13 (FreeBSD) mod_ssl/2.2.13 OpenSSL/0.9.8k DAV/2 PHP/5.2.11 with Suhosin-Patch
Checking for dependencies:
Warning: Magic Quotes: ON (internal workaround used)
Depends on: presence config.inc.php - OK
Warning: $CONF['configured'] is 'false'.
You must edit your config.inc.php and change this to true (this indicates you've created the database and user)
Depends on: MySQL 3.23, 4.0 - OK
Testing database connection - OK - mysql://root:xxxxx@localhost/exim
Depends on: session - OK
Depends on: pcre - OK
Depends on: multibyte string - OK
Warning: Depends on: IMAP functions - NOT FOUND
To install IMAP support, install php5-imap
Without IMAP support, you won't be able to create subfolders when creating mailboxes
и не дает доступ к админке, дает только создать пользователя superoot и все.
Помогите.
Последний раз редактировалось
Laa 2010-01-21 11:34:49, всего редактировалось 1 раз.
Причина: Убедительная просьба юзать теги [code] при оформлении листингов.
m0rri5
-
Хостинг HostFood.ru
-
Хостинг HostFood.ru
Тарифы на хостинг в России, от 12 рублей:
https://www.host-food.ru/tariffs/hosting/
Тарифы на виртуальные сервера (VPS/VDS/KVM) в РФ, от 189 руб.:
https://www.host-food.ru/tariffs/virtualny-server-vps/
Выделенные сервера, Россия, Москва, от 2000 рублей (HP Proliant G5, Intel Xeon E5430 (2.66GHz, Quad-Core, 12Mb), 8Gb RAM, 2x300Gb SAS HDD, P400i, 512Mb, BBU):
https://www.host-food.ru/tariffs/vydelennyi-server-ds/
Недорогие домены в популярных зонах:
https://www.host-food.ru/domains/
-
hizel
- дядя поня
- Сообщения: 9032
- Зарегистрирован: 2007-06-29 10:05:02
- Откуда: Выборг
Непрочитанное сообщение
hizel » 2010-01-20 17:18:10
Warning: Depends on: IMAP functions - NOT FOUND
To install IMAP support, install php5-imap
Without IMAP support, you won't be able to create subfolders when creating mailboxes
В дурацкие игры он не играет. Он просто жуткий, чу-чу, паровозик, и зовут его Блейн. Блейн --- это Боль.
hizel
-
m0rri5
- рядовой
- Сообщения: 30
- Зарегистрирован: 2009-12-30 14:33:26
Непрочитанное сообщение
m0rri5 » 2010-01-20 18:21:02
Что-то не получается, подскажите что с этой ошибкой делать?
Если переустановить php То как включить поддержку imap ???
m0rri5
-
hizel
- дядя поня
- Сообщения: 9032
- Зарегистрирован: 2007-06-29 10:05:02
- Откуда: Выборг
Непрочитанное сообщение
hizel » 2010-01-20 19:35:09
facepalm.doc
Код: Выделить всё
Port: php5-imap-5.2.12
Path: /usr/ports/mail/php5-imap
Info: The imap shared extension for php
Maint: ale@FreeBSD.org
B-deps: autoconf-2.62 autoconf-wrapper-20071109 cclient-2007e,1 libiconv-1.13.1 libxml2-2.7.6_1 m4-1.4.13,1 perl-5.8.9_3 php5-5.2.12 pkg-config-0.23_1
R-deps: cclient-2007e,1 libiconv-1.13.1 libxml2-2.7.6_1 php5-5.2.12 pkg-config-0.23_1
WWW: http://www.php.net/
В дурацкие игры он не играет. Он просто жуткий, чу-чу, паровозик, и зовут его Блейн. Блейн --- это Боль.
hizel
-
m0rri5
- рядовой
- Сообщения: 30
- Зарегистрирован: 2009-12-30 14:33:26
Непрочитанное сообщение
m0rri5 » 2010-01-20 19:53:51
Спасибо огромное!
Но один хрен почта не ходит, при подключении аутлуком в логах пишет LOGIN FAILED указываю
root@1111.com
Спасибо.
m0rri5
-
hizel
- дядя поня
- Сообщения: 9032
- Зарегистрирован: 2007-06-29 10:05:02
- Откуда: Выборг
Непрочитанное сообщение
hizel » 2010-01-20 23:37:20
один хрен телепаты в отпуске, пожалуйста : )
В дурацкие игры он не играет. Он просто жуткий, чу-чу, паровозик, и зовут его Блейн. Блейн --- это Боль.
hizel
-
m0rri5
- рядовой
- Сообщения: 30
- Зарегистрирован: 2009-12-30 14:33:26
Непрочитанное сообщение
m0rri5 » 2010-01-21 9:44:21
Код: Выделить всё
Error in system filter: failed to expand "${lookup mysql {SELECT 'address' FROM 'alias' WHERE 'address'='$recipients' AND 'copy_mail'='1' LIMIT 1}}" in filter file: lookup of "SELECT 'address' FROM 'alias' WHERE 'address'='root@mx.1111.com' AND 'copy_mail'='1' LIMIT 1" gave DEFER: MYSQL: query failed: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near ''alias' WHERE 'address'='root@mx.1111.com' AND 'copy_mail'='1' LIMIT 1' at line 1\n
Это фильтр для копирования всей почты на определенный ящик, как написано в статье мне просто тоже нужен этот фильтр.
Последний раз редактировалось
hizel 2010-01-21 9:49:29, всего редактировалось 1 раз.
Причина: [code][/code]
m0rri5
-
hizel
- дядя поня
- Сообщения: 9032
- Зарегистрирован: 2007-06-29 10:05:02
- Откуда: Выборг
Непрочитанное сообщение
hizel » 2010-01-21 9:51:06
я не знаю где вы взяли ентот sql запрос, но у мускула названия экранируются обратной кавычкой `
кстати в статье именно так и написано
Код: Выделить всё
if $recipients is "${lookup mysql{SELECT `address` FROM `alias` WHERE \
`address`='$recipients' AND `copy_mail`='1' LIMIT 1}}
Последний раз редактировалось
hizel 2010-01-21 10:06:03, всего редактировалось 1 раз.
Причина: кстати
В дурацкие игры он не играет. Он просто жуткий, чу-чу, паровозик, и зовут его Блейн. Блейн --- это Боль.
hizel
-
m0rri5
- рядовой
- Сообщения: 30
- Зарегистрирован: 2009-12-30 14:33:26
Непрочитанное сообщение
m0rri5 » 2010-01-21 10:35:37
Это виндуз портит людей тот все съедает.
Спасибо!
Вы правда очень мне помогаете. Мне надо поднять почтовый сервер столкнулся с первой статьей невышло, вот вторую делаю.
Думал уже тоже не выдет и подума что вообще мой моск не осилит ФРЮ , с вашей помощью потихонечку получается.
Спасибо.
m0rri5
-
hizel
- дядя поня
- Сообщения: 9032
- Зарегистрирован: 2007-06-29 10:05:02
- Откуда: Выборг
Непрочитанное сообщение
hizel » 2010-01-21 10:38:19
exim, dovecot, mysql, php есть в любой *nix системе, так что вы ни FreeBSD сейчас изучаете
В дурацкие игры он не играет. Он просто жуткий, чу-чу, паровозик, и зовут его Блейн. Блейн --- это Боль.
hizel
-
m0rri5
- рядовой
- Сообщения: 30
- Зарегистрирован: 2009-12-30 14:33:26
Непрочитанное сообщение
m0rri5 » 2010-01-21 11:50:11
Еще вопрос, папки так и не создаются. Соответственно почта даже внутри не ходит. Если вы сможете помочь то какой лог файл скинуть или конфиг?
m0rri5
-
Laa
- ст. лейтенант
- Сообщения: 1032
- Зарегистрирован: 2008-02-21 18:25:33
- Откуда: Украина, Россия
Непрочитанное сообщение
Laa » 2010-01-21 11:52:55
Если не создаются, то значит нет прав.
Попробуйте сделать тестовую доставку при помощи exim -bh SOME_IP_ADDR -d и посмотрите в дебаге.
exim: помните, что выдавая deny, вы можете недоставить ваше же письмо, зарубив sender-verify удаленного MTA к вашему MTA!!!
Laa
-
m0rri5
- рядовой
- Сообщения: 30
- Зарегистрирован: 2009-12-30 14:33:26
Непрочитанное сообщение
m0rri5 » 2010-01-21 12:17:31
Тут еще такое в логах пишет
бла бла бла : MYSQL: query failed: Unknown column `copy_mail` in `where clause` \n
После выполнения команды получил в конце
exim abandoned: "SOME_IP_ADDR" is not an IP address.
m0rri5
-
Laa
- ст. лейтенант
- Сообщения: 1032
- Зарегистрирован: 2008-02-21 18:25:33
- Откуда: Украина, Россия
Непрочитанное сообщение
Laa » 2010-01-21 13:22:26
Ок, раз не понятно, тогда делай так:
так сэмулируешь подключение почтовика гугла к твоему почтовику.
exim: помните, что выдавая deny, вы можете недоставить ваше же письмо, зарубив sender-verify удаленного MTA к вашему MTA!!!
Laa
-
hizel
- дядя поня
- Сообщения: 9032
- Зарегистрирован: 2007-06-29 10:05:02
- Откуда: Выборг
Непрочитанное сообщение
hizel » 2010-01-21 13:41:28
m0rri5 писал(а):Тут еще такое в логах пишет
бла бла бла : MYSQL: query failed: Unknown column `copy_mail` in `where clause` \n
После выполнения команды получил в конце
exim abandoned: "SOME_IP_ADDR" is not an IP address.
издеваетесь? давайте сюда поллную конфигурацию exim без комментариев(hint: то что начинается с #)
В дурацкие игры он не играет. Он просто жуткий, чу-чу, паровозик, и зовут его Блейн. Блейн --- это Боль.
hizel
-
m0rri5
- рядовой
- Сообщения: 30
- Зарегистрирован: 2009-12-30 14:33:26
Непрочитанное сообщение
m0rri5 » 2010-01-21 13:59:12
Чувствую не расчитаюсь я с Вами коллеги
Код: Выделить всё
primary_hostname = mx.1111.com
hide mysql_servers = localhost/exim/root/1q2w3e
domainlist local_domains = ${lookup mysql {SELECT `domain`\
FROM `domain` WHERE \
`domain`='${domain}' AND \
`active`='1'}}
domainlist relay_to_domains =${lookup mysql {SELECT `domain` \
FROM `domain` WHERE \
`domain`='${domain}' AND \
`active`='1'}}
hostlist relay_from_hosts = 10.0.0.97
acl_smtp_rcpt = acl_check_rcpt
acl_smtp_data = acl_check_data
exim_user = mailnull
exim_group = mail
never_users = root
host_lookup = *
rfc1413_query_timeout = 0s
ignore_bounce_errors_after = 45m
timeout_frozen_after = 15d
freeze_tell = admin@1111.com
helo_accept_junk_hosts = 10.10.0.0/24
auto_thaw = 1h
smtp_banner = "primary_hostname, ESMTP EXIM $version_number"
smtp_accept_max = 100
smtp_accept_max_per_connection = 100
smtp_connect_backlog = 30
smtp_accept_max_per_host = 20
split_spool_directory = true
remote_max_parallel = 1000
message_size_limit = 50M
helo_allow_chars = _
smtp_enforce_sync = true
log_selector = \
+all_parents \
+connection_reject \
+incoming_interface \
+lost_incoming_connection \
+received_sender \
+received_recipients \
+smtp_confirmation \
+smtp_syntax_error \
+smtp_protocol_error \
-queue_run
syslog_timestamp = no
system_filter = /usr/local/etc/exim/copy_mail.conf
begin acl
acl_check_rcpt:
accept hosts = :
deny message = Restricted characters in address
domains = +local_domains
local_parts = ^[.] : ^.*[@%!/|]
deny message = Restricted characters in address
domains = !+local_domains
local_parts = ^[./|] : ^.*[@%!] : ^.*/\\.\\./
deny message ="HELO/EHLO to SMTP RFC"
condition =${if eq{$sender_helo_name}{}{yes}{no}}
accept hosts = +relay_from_hosts
control = submission
accept authenticated = *
control = submission
deny message = "My in HELO"
hosts = *:!+relay_from_hosts
condition = ${if eq {$sender_helo_name}\
{$sender_hosts_address}{true}{false}}
deny condition = ${if eq {$sender_helo_name}\
{$interface_address}{yes}{no}
hosts = !127.0.0.1 : !localhost : *
message = "Go go "
deny message = "host in blacklist - $dnslist_domain \n $dnslist_text"
dnslists = opt.blitzed.org : \
proxies.blackholes.easynet.nl : \
cbl.abuseat.org : \
bl.spamcorp.net : \
bl.csma.biz : \
dynablock.njabl.org : \
warn
set acl_m0 = 20s
warn
hosts = +relay_from_hosts : 10.0.0.0/24
set acl_m0 = 0s
warn
logwrite = Delay $acl_m0 for $sender_host_name \
[$sender_host_address] with HELO=$sender_helo_name. Mail \
from $sender_address to &local_part@$domain.
delay = $acl_m0
accept domains =+local_domains
endpass
message = "User not found"
verify = recipient
accept domains = +relay_to_domains
endpass
message = "Route not found"
accept hosts = +relay_from_hosts
deny message = "OpenRelay fuck"
require message = relay not permitted
domains = +local_domains : +relay_to_domains
require verify = recipient
accept
acl_check_data:
deny malware = *
message = "In e-mail found VIRUS - $malware_name"
accept
begin routers
dnslookup:
driver = dnslookup
domains = ! +local_domains
transport = remote_smtp
ignore_target_hosts = 0.0.0.0 : 127.0.0.0/8
no_more
system_aliases:
driver = redirect
allow_fail
allow_defer
data = ${lookup mysql {SELECT `goto` FROM `aliases` WHERE \
`address`='${quote_mysql:$local_part@$domain}' OR \
`address`='${quote_mysql:@$domain}'}}
mysqluser:
driver = accept
condition = ${if eq{}{$lookup mysql{SELECT `maildir` FROM `mailbox` \
WHERE `username`='${quote_mysql:$local_part@domain}'}}}{no}{yes}}
transport = mysql_delivery
begin transports
remote_smtp:
driver = smtp
mysql_delivery:
driver = appendfile
check_string = ""
create_directory
delivery_date_add
directory = ${lookup mysql {SELECT CONTACT ('/var/mail/exim/', `maildir`) \
FROM `mailbox` WHERE `username`='${local_part}@${domain}'}}
directory_mode = 770
envelope_to_add
group = mail
maildir_format
maildir_tag = ,S=$message_size
message_prefix = ""
message_suffix = ""
mode = 0600
address_file:
driver = appendfile
delivery_date_add
envelope_to_add
return_path_add
address_pipe:
driver = pipe
return_output
address_reply:
driver = autoreply
begin retry
* * F,2h,15m; G,16h,1h,1.5; F,4d,6h
begin rewrite
begin authenticators
auth_plain:
driver = plaintext
public_name = PLAIN
server_condition = ${lookup mysql {SELECT `username` FROM \
`mailbox` WHERE `username` = \
'${quote_mysql:$1}' AND `password` = \
'${quote_mysql:$2}'}{yes}{no}}
server_prompts = :
server_set_id = $2
auth_login:
driver = plaintext
public_name = LOGIN
server_condition = $ {lookup mysql {SELECT `username` FROM \
`mailbox` WHERE `username` = \
'${quote_mysql:$1}' AND `password` = \
'${quote_mysql:$2}'}{yes}{no}}
server_prompts = Username:: : Password::
server_set_id = $1
m0rri5
-
hizel
- дядя поня
- Сообщения: 9032
- Зарегистрирован: 2007-06-29 10:05:02
- Откуда: Выборг
Непрочитанное сообщение
hizel » 2010-01-21 14:20:53
и /usr/local/etc/exim/copy_mail.conf давайте :]
после создания ящика он физически появится на диске когда прийдет первое письмо
В дурацкие игры он не играет. Он просто жуткий, чу-чу, паровозик, и зовут его Блейн. Блейн --- это Боль.
hizel
-
m0rri5
- рядовой
- Сообщения: 30
- Зарегистрирован: 2009-12-30 14:33:26
Непрочитанное сообщение
m0rri5 » 2010-01-21 14:27:07
Я его сам создал
Код: Выделить всё
if $recipients is "${lookup mysql {SELECT `address` FROM `alias` WHERE \
`address`='$recipients' AND `copy_mail`='1' LIMIT 1}}"
then
unseen deliver copyinmail@1111.com
endif
if $sender_address is "${lookup mysql{SELECT `address` FROM `alias` WHERE \
`address`='$sender_address' AND `copy_mail`='1' LIMIT 1}}"
then
unseen deliver copyoutmail@1111.com
endif
m0rri5
-
m0rri5
- рядовой
- Сообщения: 30
- Зарегистрирован: 2009-12-30 14:33:26
Непрочитанное сообщение
m0rri5 » 2010-01-21 14:31:03
А вот по поводу exim -bh 209.85.220.227 -d
не понял, соединение проходит все норм, а вот потом пишет
smtp_setup_msg entered сначало долго ждет и потом not found
m0rri5