Обсуждение настройки и работы сервисов, резервирования, сетевых настроек и вопросов безопасности ОС.
Модераторы: SLEDopit , Модераторы разделов
leksstav
Сообщения: 331
Сообщение
leksstav » 05.06.2011 21:03
Кто может помочь с dovecot
./dovecot start
Starting dovecot Can't open log file /var/log/dovecot.log: Permission denied
startproc: exit status of parent of /usr/sbin/dovecot: 80
Права поставил максимальные 777 (даже на каталого var и log выставлял права 777)
-rwxrwxrwx 1 root root 0 Июн 5 20:34 dovecot.log
Вот сам конфиг
Код: Выделить всё
$this_var = protocols = pop3 imap
protocol pop3 {
listen = *:110
pop3_uidl_format = %08Xu%08Xv
pop3_client_workarounds = outlook-no-nuls oe-ns-eoh
}
protocol imap {
listen = *:143
imap_client_workarounds = delay-newmail outlook-idle netscape-eoh tb-extra-mailbox-sep
}
protocol lda {
# Куда слать письма про превышение квоты
postmaster_address = lex@suseguru.suseguru.ru
# путь к сокету
auth_socket_path = /var/run/dovecot/auth-client
}
# log_timestamp = ”%Y-%m-%d %H:%M:%S”
log_timestamp = "%b %d %H:%M:%S
syslog_facility = mail
log_path = /var/log/dovecot.log
info_log_path = /var/log/dovecot.log
info_log_path = /var/log/dovecot-info.log
#ssl_disable = no
ssl = no
login_greeting = Welcome to IMAP/POP3 server
mail_location = maildir:/var/spool/mail/%n@%d
#default_mail_env = maildir:/var/spool/mail/%n@%d
disable_plaintext_auth = no
shutdown_clients = yes
login_dir = /var/run/dovecot/login
login_chroot = yes
login_user = dovecot
login_process_per_connection = yes
login_processes_count = 3
login_process_size = 64
login_max_processes_count = 64
# login_max_logging_users = 128
login_log_format_elements = user=<%u> method=%m rip=%r lip=%l %c
login_log_format = %$: %s
#mail_extra_groups = mail
verbose_proctitle = yes
first_valid_uid = 25
first_valid_gid = 0
#mail_extra_groups = mail
mail_access_groups = mail
#umask = 0007
auth_verbose = yes
auth_debug = yes
auth_debug_passwords = yes
auth default {
mechanisms = plain login cram-md5
passdb sql {
args = /etc/dovecot/dovecot-mysql.conf
}
userdb sql {
args = /etc/dovecot/dovecot-mysql.conf
}
socket listen {
master {
path = /var/run/dovecot/auth-client
mode = 0666
}
}
user = root
}
plugin {
trash = /etc/dovecot/dovecot-trash.conf
# Тут можно задать некторые дополнительные переменные окружения для
# майл-процессов. В основном это предназначено для параметров плагинов.
# Расширение %variable сделано для всех значений.
# Quota плагин. Много чё поддерживается:
# dirsize: Находит и сумирует все файлы в майл-директории
# dict: Сохранение квоты в словаре (т.е. SQL)
# maildir: Maildir++ квота
# fs: Поддержка квоты в ФС только-для-чтения (а как это?)
#quota = maildir
# ACL плагин. Конец vfile читает ACLs из "dovecot-acl" файла, в почтовой
# директории. Также можно задать произвольный путь к глобальному каталогу ACL
# где лежат ACL для применения на почтовые ящики всех пользователей.
# Глобальный каталог ACL содержит один файл для каждого почтового ящика,
# т.е. INBOX или sub.mailbox.
#acl = vfile:/etc/dovecot-acls
# Convert плугин. Если установлено, задаёт исходный путь, преобразованный
# к месту нахождения (default_mail_env).
#convert_mail = mbox:%h/mail
};
leksstav
Сообщения: 331
Сообщение
leksstav » 06.06.2011 08:26
Закоментил log_path и ему подобные
Теперь пишет
Starting dovecot Last died with error (see error log for more information): Auth
process died too early - shutting down
в /var/log/mail.log
пишет права стоят 777
Jun 6 08:34:30 suseguru dovecot: Dovecot v1.2.17 starting up (core dumps disabled)
Jun 6 08:34:30 suseguru dovecot: auth(default): Can't open configuration file /etc/dovecot/dovecot-mysql.conf: Permission denied
Jun 6 08:34:30 suseguru dovecot: dovecot: Fatal: Auth process died too early - shutting down
Ленивая Бестолочь
Бывший модератор
Сообщения: 2760
ОС: Debian; gentoo
Сообщение
Ленивая Бестолочь » 06.06.2011 09:58
leksstav писал(а): ↑ 06.06.2011 08:26
/etc/dovecot/dovecot-mysql.conf
на этот файлик права какие?
Солнце садилось в море, а люди с неоконченным высшим образованием выбегали оттуда, думая, что море закипит.
leksstav
Сообщения: 331
Сообщение
leksstav » 06.06.2011 10:15
Ленивая Бестолочь писал(а): ↑ 06.06.2011 09:58
leksstav писал(а): ↑ 06.06.2011 08:26
/etc/dovecot/dovecot-mysql.conf
на этот файлик права какие?
Права полные
-rwsrwsrwt 1 root root 401 Jun 4 22:16 dovecot-mysql.conf
sash-kan
Администратор
Сообщения: 13939
Статус: oel ngati kameie
ОС: GNU
Сообщение
sash-kan » 06.06.2011 11:46
leksstav писал(а): ↑ 05.06.2011 21:03
даже на каталого var и log выставлял права 777
обязательно верните обратно.
$ df /var/log/dovecot.log
?
$ mount
?
# su - -c 'touch /var/log/dovecot.log' dovecot
?
# date | su - -c 'tee /var/log/dovecot.log' dovecot
?
# tail /var/log/dovecot.log
?
vr13
Сообщения: 887
ОС: gentoo
Сообщение
vr13 » 12.06.2011 00:43
leksstav писал(а): ↑ 05.06.2011 21:03
Код: Выделить всё
...
# log_timestamp = ”%Y-%m-%d %H:%M:%S”
log_timestamp = "%b %d %H:%M:%S
syslog_facility = mail
log_path = /var/log/dovecot.log
info_log_path = /var/log/dovecot.log
info_log_path = /var/log/dovecot-info.log
...
вам следует определиться с тем, что, чем и куда вы хотите журналить. в конфигурации - смесь, т.к dovecot умеет журналировать как сам, там и с использованием syslog. строчка "syslog_facility=mail" говорит о том, что вы выбрали syslog. поэтому в конфигурации syslog должны быть соответствующие утверждения. например (для syslog-ng):
Код: Выделить всё
filter fmail { facility(mail); };
destination dovecotlog { file("/var/log/dovecot/messages"); };
log { source(src); filter(fmail); destination(dovecotlog); };
в случае же самостоятельного журналирования dovecot-ом, нужно создать директорию, доступную для записи учетной записи, под которой работает dovecot (другой фрагмент вашего конфига):
Код: Выделить всё
...
login_chroot = yes
login_user = dovecot
...
в той же мере это относится к конфигурационным файлам: только основной конфиг читается рутом, все остальное - worker-ами, работающими в вашем случае под dovecot
что журналирует лучше - выбирать вам
leksstav
Сообщения: 331
Сообщение
leksstav » 13.06.2011 18:26
Всем спасибо :-)
Решено, пришлось немного изменить запрос для mysql и с правами немного шаманить.