Dovecot

Пространство имён

Чтобы не слетала подписка при совместном использовании нужно указать

10-mail.conf

/etc/dovecot/conf.d/10-mail.conf
mail_location = maildir:/srv/mail/vmail/%Ln
mail_home=/srv/mail/%Ln
 
namespace inbox {
  # Namespace type: private, shared or public
  type = private
  separator =
  prefix =
  inbox = yes
  hidden = no
  list = yes
  subscriptions = yes
}
 
namespace {
# Чтобы скрыть shared/common/
  type = private
  separator =
  prefix = shared/common/
  inbox = no
  hidden = yes
  list = no
  subscriptions = no
}
 
namespace {
    type = public
    separator =
    prefix = common/
    location = maildir:/srv/mail/vmail/common
    inbox = no
    hidden = no
    list = yes
    subscriptions = no
}
 
namespace {
  type = shared
  separator =
  prefix = shared/%%n/
  location = maildir:/srv/mail/vmail/%%n:INDEXPVT=/srv/mail/%n/shared/%%n
  subscriptions = no
  inbox = no
  list = children
}
 
mail_uid = vmail
mail_gid = mail
mail_privileged_group = mail
mail_access_groups = mail
 
mail_plugins = $mail_plugins acl quota
maildir_stat_dirs = yes
maildir_very_dirty_syncs = no

Установка и настройка Dovecot

Dovecot – это свободный IMAP- и POP3-сервер, разработанный с упором на безопасность. Нам он потребуется для того, чтобы подключить авторизацию по протоколу SMTP.

Устанавливаем Dovecot с компонентом для работы с СУБД:

apt-get install dovecot-imapd dovecot-pop3d dovecot-mysql

Настраиваем способ хранения сообщений, для этого откроем файл:

sudo nano /etc/dovecot/conf.d/10-mail.conf

Пропишем в него следующее:

mail_location = maildir:/home/mail/%d/%u/

В данном случае сообщения будут храниться в уже известном нам формате Maildir.

Далее настраиваем слушателя для аутентификации:

sudo nano /etc/dovecot/conf.d/10-master.conf

В файле прописываем:

service auth {

  unix_listener /var/spool/postfix/private/auth {

    mode = 0666

    user = postfix

    group = postfix

  }

  unix_listener auth-userdb {

    mode = 0600

    user = vmail

    group = vmail

  }

}

На этом примере мы настраиваем сервис для аутентификации и создаем два прослушивателя: /var/spool/postfix/private/auth – для возможности Постфиксом использовать авторизацию через Dovecot, auth-userdb – сокет для авторизации через dovecot-lda.

В этот же файл добавляем:

service stats {

    unix_listener stats-reader {

        user = vmail

        group = vmail

        mode = 0660

    }

    unix_listener stats-writer {

        user = vmail

        group = vmail

        mode = 0660

    }

}

Переходим к настройке аутентификации в Dovecot, открываем файл 10-auth.conf:

sudo nano /etc/dovecot/conf.d/10-auth.conf

Задаем в нем следующие значения:

#!include auth-system.conf.ext

!include auth-sql.conf.ext

Открываем файл 10-ssl.conf командой vi /etc/dovecot/conf.d/10-ssl.conf и настраиваем в нем использование шифрования:

ssl = required

ssl_cert = </etc/ssl/mail/public.pem

ssl_key = </etc/ssl/mail/private.key

Рассмотрим параметры:

  • ssl = required – прикажет Dovecot требовать от клиентов использование шифрования;
  • ssl_cert – путь до открытого сертификата;
  • ssl_key – путь к закрытому ключу.

Добавляем автоматическое создания каталогов в файле vi /etc/dovecot/conf.d/15-lda.conf:

lda_mailbox_autocreate = yes

Настраиваем подключение к базе данных. Для начала открываем нужный файл:

​sudo nano /etc/dovecot/conf.d/auth-sql.conf.ext

Вставляем в него:

passdb {

  …

  args = /etc/dovecot/dovecot-sql.conf.ext

}

userdb {

  …

  args = /etc/dovecot/dovecot-sql.conf.ext

}

В этом фрагменте мы указали на файл, в котором будут находиться настройки для получения пользователей и паролей из БД.

Переходим к корректированию файла с настройками работы mySQL:

sudo nano /etc/dovecot/dovecot-sql.conf.ext

В конце файла добавляем:

driver = mysql

connect = host=localhost dbname=postfix user=postfix password=postfix123

default_pass_scheme = MD5-CRYPT

password_query = SELECT password FROM mailbox WHERE username = '%u'

user_query = SELECT maildir, 1024 AS uid, 1024 AS gid FROM mailbox WHERE username = '%u'

user_query = SELECT CONCAT('/home/mail/',LCASE(`domain`),'/',LCASE(`maildir`)), 1024 AS uid, 1024 AS gid FROM mailbox WHERE username = '%u'

Таким образом, мы смогли настроить запрос на получение данных из БД. Осталось сконфигурировать интерфейс, на котором мы будем слушать Dovecot:

sudo nano /etc/dovecot/dovecot.conf

В этот файл прописываем:

listen = *

По умолчанию Dovecot слушает и на ipv6 (listen = *, ::). Если на сервере не используется 6-я версия протокола TCP/IP, то в логах могут быть ошибки.

Разрешаем запуск Dovecot:

systemctl enable dovecot

Перезагружаемся:

systemctl restart dovecot

Главный конфигурационный файл Dovecot

Основные настройки Dovecot хранит в файле конфигурации (или, реже ).

Сразу делаем копию конфигурационного файла:

cp /etc/dovecot/dovecot.conf /etc/dovecot/dovecot.conf.bak

Примечение: путь к файлу может быть /etc/dovecot.conf, проверьте сначала, где у вас в системе этот файл.

Рабочий конфигурационный файл Dovecot 2.0.9 (для 2.3.11 все подходит, может, где-то и есть мелочи, но я не заметил):

# Не использую специализированные файлы из поставки Dovecot из папки /etc/dovecot/conf.d/.
# Основная причина: сравнительно небольшой размер всего конфига (все перед глазами, нет необходимости раскидывать по отдельным файлам).
#!include conf.d/*.conf

# Нет необходимости явно указывать imaps и pop3s - Dovecot 2.* по-умолчанию их включает.
protocols = imap pop3
listen = *

# Завершать все дочерние процессы, если завершен мастер-процесс
shutdown_clients = yes

# Владелец почтовых папок (также см. конфиг Postfix):
mail_uid = vmail
mail_gid = vmail

# Только наш пользователь с uid и gid 5000 (vmail) может быть использован.
first_valid_uid = 5000
last_valid_uid = 5000

# Лог-файлы. Подробнее: http://wiki2.dovecot.org/Logging
log_path = /var/log/dovecot.log
# Отладка. Если все настроено, отключаем (no)
# http://maint.unona.ru/doc/dovecot2.shtml
mail_debug = no 
auth_verbose = no
auth_debug = no
auth_debug_passwords = no

# SSL
# http://wiki2.dovecot.org/SSL/DovecotConfiguration
ssl = required
ssl_cert = </etc/pki/dovecot/certs/server.crt
ssl_key = </etc/pki/dovecot/private/server.key

ssl_protocols = TLSv1.1 TLSv1.2 TLSv1.3 !SSLv2 !SSLv3
ssl_cipher_list = ALL:!LOW:!SSLv2:!EXP:!aNULL

# Запрет аутентификации открытым текстом. yes - запретить, no - разрешить.
disable_plaintext_auth = yes

# Список разрешенных символов в имене пользователя.
auth_username_chars = abcdefghijklmnopqrstuvwxyzABCDEFGHIJKLMNOPQRSTUVWXYZ01234567890.-_@

# Расположение и формат файлов почты (%d - домен, %n - имя пользователя).
mail_location = maildir:/var/vmail/%d/%n

# Если при аутентификации не указан домен, то добавить этот (в данном примере - пустой)
auth_default_realm =

# Доступные варианты аутентификации (PLAIN, DIGEST-MD5, CRAM-MD5...).
# Для того, чтобы иметь меньше головной боли ставьте PLAIN
auth_mechanisms = PLAIN

# Приветственное сообщение
login_greeting = POP3/IMAP server ready.

# Одно из самых важных мест - предоставление сокетов для аутентификации пользователей.
# Если настроено неверно - ничего работать не будет!
service auth {
    # http://maint.unona.ru/doc/dovecot2.shtml
    # Указывает, что данный сокет будет использовать SMTP сервер для аутентификации.
    # Указывается пользователь, группа и права доступа к сокету. В данном случае это postfix
    # ("mail_owner = postfix" в файле /etc/postfix/main.cf).
    unix_listener /var/spool/postfix/private/auth {
        user = postfix
        group = postfix
        mode = 0660
    }
    unix_listener auth-master {
        user = vmail
        group = vmail
        mode = 0660
    }
    unix_listener auth-userdb {
        user = vmail
        group = vmail
        mode = 0660
    }
}

# Запрос параметров виртуальных почтовых пользователей
# (логин, пароль, домен, активный/неактивный и др.)
userdb {
    args = /etc/dovecot/dovecot-mysql.conf
    driver = sql
}
passdb {
    args = /etc/dovecot/dovecot-mysql.conf
    driver = sql
}

# Plugins

protocol imap {
    imap_client_workarounds = delay-newmail tb-extra-mailbox-sep
    mail_plugins = autocreate
}
protocol pop3 {
    pop3_client_workarounds = outlook-no-nuls oe-ns-eoh
    pop3_uidl_format = %08Xu%08Xv
}
protocol lda {
    # Куда будут перенаправлены недоставленные письма
    postmaster_address = postmaster@localhost
    auth_socket_path = /var/run/dovecot/auth-master
}


plugin {
    auth_socket_path = /var/run/dovecot/auth-master

    # Plugin: autocreate. Создаем и подписываемся на папки IMAP.
    autocreate = INBOX
    autocreate2 = Sent
    autocreate3 = Trash
    autocreate4 = Drafts
    autocreate5 = Junk
    autosubscribe = INBOX
    autosubscribe2 = Sent
    autosubscribe3 = Trash
    autosubscribe4 = Drafts
    autosubscribe5 = Junk

    # Plugin: квоты. Пока отключим.
    # http://wiki2.dovecot.org/Quota/Configuration
    #quota = maildir:User quota
    #quota_rule = *:storage=1GB
    #quota_rule2 = Trash:storage=+10%% # 10% of 1GB = 100MB
    #quota_rule3 = Junk:storage=+10%% # 10% of 1GB = 100MB
    #quota_rule4 = Drafts:storage=+10%% # 10% of 1GB = 100MB
}

10-logging.conf

Настройка лог файлов Dovecot производится в файле conf.d/10-logging.conf. По умолчанию используется Использование syslog. Выведем сообщения в отдельный файл и настроим ротацию (Описание и примеры настройки logrotate в Linux) лог- файлов

conf.d/10-logging.conf
#log_path = syslog
log_path = varlogdovecot.log
debug_log_path = varlogdovecot-debug.log
 
## Logging verbosity and debugging.
auth_verbose = yes
auth_verbose_passwords = no 
auth_debug = yes
auth_debug_passwords = yes
mail_debug = yes
verbose_ssl = yes
/etc/logrotate.d/dovecot
varlogdovecot*.log {
  rotate 8 
  missingok
  notifempty
  delaycompress
  sharedscripts
  postrotate
    doveadm log reopen
  endscript
}

Об аутентификации SMTP

Как вы заметили, строка в сообщении журнала используется кодировка base64 «Пароль:». Постфикс здесь регистрирует конкретный «вызов» аутентификации, на который он отправил и на который получил ошибочный ответ. Также существует предыдущая проблема для «Имя пользователя:» (). Однако даже для несуществующих пользователей об ошибке будет сообщено только после ввода пароля.

Значения строк запроса на самом деле не важны, и их следует игнорировать. Первый вызов всегда касается имени пользователя, а второй — пароля. Подробности об этом можно найти в спецификации метода LOGIN.

NB: Поскольку это все немного неприлично для простого переноса и проверки пары имя пользователя и пароля, LOGIN давно устарел. Метод PLAIN работает практически так же, но упаковывает обе части информации в одну строку base64.

Наконец, тот факт, что части этого разговора закодированы в base64, на самом деле является особенностью аутентификации SMTP в целом. Идея состоит в том, чтобы легко разрешить обмен произвольными (возможно, двоичными) данными между модулями SASL клиента и сервера, без необходимости того, чтобы эти модули SASL знали или заботились о самом SMTP. Вы можете получить представление о том, как работает SASL, из документации Cyrus SASL.

Tweet
Share
Link
Plus
Send
Send
Pin

Новое на сайте

13 май

почтовый сервер на основе Postfix с пользователями в MySQL и Dovecot как MDA

как установить почтовый сервер Postfix (MTA) для произвольного числа доменов и Dovecot 2.x в качестве MDA, использовать MySQL и PostfixAdmin, задействовать квоты, обеспечить защиту от спама и вирусов используя цифровую подпись DKIM, dspam и ClavaAV

подробнее…

18 апр

До опредленного времени, нежелательные сайты в офисе блокировались «прозрачным» SQUID-ом. Однако SQUID3 не может работать с SSL соединениями в режиме transparent и, соответственно, не может блокировать социалки, доступные по https. iptables нам поможет!

подробнее…

22 сент

настройка прозрачного squid3 с пулами задержки или как навести порядок в офисе

Работа в типичном офисе и социальные сети не совместимы. Любой администратор рано или поздно решает задачу — как запретить развлекательный контент и социальные сети в офисе и ограничить скорость Интернета. В этих начинаниях нам поможет Squid3.

подробнее…

18 мар

конечно можно настроить sftp или даже ftp на худой конец и деплоить каждый чих в своем приложении/сайте прямо из вашей любимой IDE, однако удобнее использовать опцию shared folders, которая идёт с VirtualBox прямо «из коробки».

подробнее…

17 фев

монтируем новый жёсткий диск в Debian или решаем проблемы со свободным местом

Знакомая ситуация  — заканчивается место на жёстком диске на виртуальном сервере разработки Debian (VirualBox). Разберёмся, как подключить новый жесткий диск, создать на нём ext4 раздел и смонтировать его через fstab по UUID.

подробнее…

06 янв

быстрый старт bower + grunt или дань моде

Часто приходится настраивать связку bower+grunt. Bower — незаменимый менеджер пакетов. Grunt — замечательное средство для автоматизации рутинны со статикой проекта. Ах да, для установки всего этого безобразия нам ещё потребуется Node.js

подробнее…

09 сент

настройка почтового сервера как резервного (backup MX) или пересылка почты для домена клиента

Нобходимо настроить наш сервер как резервный Backup MX для отдельных клиентов. Ситуацию усложняет необходимость иметь несколько активных ящиков на нашем сервере, вне зависимости есть они или нету на основном почтовом сервере. Зачем же это было нужно?

подробнее…

22 май

настройка квоты домена в MDA Dovecot используя dict + mysql

Дело вкуса, но жизнь требует возможности настройки квот на уровне домена по той или иной причине. Как же настроить квоты для доменов в Dovecot, если используется mysql и dict соответственно. Ответ прост — никак. Детали — под катом.

подробнее…

16 май

настройка «greylisting» для postfix (postgrey) или борьба со спамом продолжается

Еще один инструмент для борьбы со спамом – грейлистинг. Суть – временно отклонять почту от новых отправителей со словами «зайдите завтра». Добропорядочный сервер обязательно «зайдет». Типичный спаммер – нет. Итак, Postgray для Postfix.

подробнее…

15 май

настройка Fail2Ban для защиты служб сервера от атак извне или как сделать логи аккуратными

Благая цель – избавить сервер от лишней работы (нагрузки) и блокировать попытки перебора паролей и хакерских атак – крайне благородна. Настроим инструмент fail2ban для мониторинга лог-файлов служб на сервере и блокирования вредителей по IP…

подробнее…

E-mail:
Skype: dmitry_rendov
Тел.:
включите javascript чтобы видеть номер

Все обновления в Twitter twitter.com/DmitryRendov

Аутентификация на основе пользовательских сертификатов

  • Проверить можно из shell ()
  • Заработало в Thunderbird с импортированным в него пользовательским сертификатом в формате PKS#12
  • Установка параметров ssl_cert_username_field и ssl_username_from_cert позволяет указывать произвольное имя пользователя в почтовом клиенте
# cat ca.crt ca.crl > /root/ca_crt_crl.pem

# cat /etc/dovecot/conf.d/10-ssl.conf
...
#ssl_ca_file = </root/ca_crt_crl.pem
#ssl_ca = </root/ca_crt_crl.pem
...
ssl_verify_client_cert = yes
...
ssl_cert_username_field = commonName
...
# cat /etc/dovecot/conf.d/10-auth.conf
...
auth_ssl_require_client_cert = yes
...
auth_ssl_username_from_cert = yes
...
auth_mechanisms = EXTERNAL
...
# cat /etc/dovecot/conf.d/auth-system.conf.ext
...
passdb {
    driver = static
    args = nopassword=yes allow_all_users=yes
} 
...

Дополнительные материалы

FreeBSD

C поддержкой GSSAPI

 # cd /usr/ports/mail/dovecot2
[gate:ports/mail/dovecot2] # make config
[gate:ports/mail/dovecot2] make showconfig | grep '=on'
     DOCS=on: Build and/or install documentation
     EXAMPLES=on: Build and/or install examples
     KQUEUE=on: kqueue(2) support
     GSSAPI_BASE=on: Use GSSAPI from base 
[gate:ports/mail/dovecot2] # make install clean

Подготовка к запуску

 # cat /etc/rc.conf
...
dovecot_enable=yes
 # cp -R /usr/local/etc/dovecot/example-config/ /usr/local/etc/dovecot/

 # cd /usr/local/etc/dovecot/conf.d/

NTLM аутентификация и авторизация

Настройка dovecot на использование NTLM

# cat 10-auth.conf
...
auth_use_winbind = yes
...
#auth_winbind_helper_path = /usr/bin/ntlm_auth            #For Linux
#auth_winbind_helper_path = /usr/local/bin/ntlm_auth      #For FreeBSD
...
auth_mechanisms = ntlm
...
# chown root:dovecot /var/run/samba/winbindd_privileged/    #For Linux

# chown root:dovecot /var/db/samba34/winbindd_privileged/   #For FreeBSD
# chown root:dovecot /var/db/samba/winbindd_privileged/     #For FreeBSD

Тестирование GET-запросов

Повторимся, GET-запросы используются для получения данных с сервера. GET-запросы не меняют состояние данных на сервере (не добавляют, не удаляют и не изменяют данные).

Для обучения мы будем использовать простой открытый API: http://dummy.restapiexample.com/api/v1/employees

Давайте отправим GET-запрос с помощью Postman:

Открываем Postman

Мы рекомендуем завести аккаунт и использовать его для входа (чтобы сохранять запросы, коллекции и окружения для использования в будущем).

Шаг 1: Открываем новую вкладку, чтобы создать запрос (нажимаем на «+»):

Шаг 2: Создаем GET-запрос:

  1. Задаем тип запроса — GET
  2. Задаем request URL — https://jsonplaceholder.typicode.com/users
  3. Нажимаем на кнопку SEND, чтобы выполнить запрос.
  4. Вы увидите 200 OK в результате, если запрос выполнится успешно. Бывают случаи, когда GET-запросы выполняются с ошибками (например, при неправильном URL, некорректными авторизационными данными или из-за ошибок на стороне сервера)

После выполнения запроса вы должны будете увидеть данные от сервера во вкладке Body.

На скриншоте ниже вы видите код ответа сервера (Status: 200 OK), время выполнения запроса (Time: 1700ms) и размер ответа (Size: 1.62 KB)

По наведению на Time и Size появляется всплывающее окно с подробной информацией.

Время ответа сервера (Response Time)

Размер ответа (Response Size)

Куки (Cookies): Здесь можно увидеть информацию о куках, возвращаемых сервером

Хедеры ответа от сервера (Response headers)

Полезные команды Dovecot

Февраль 18th, 2017 Evgeniy Kamenev

Просмотр всех настроек Dovecot

# dovecot -a

1 # dovecot -a

Просмотр настроек отличных от дефолтных

# dovecot -n

1 # dovecot -n

Просмотр активных подключений

# doveadm who

1 # doveadm who

Размещение LOG-файлов Dovecot

# doveadm log find

1 # doveadm log find

Просмотр последних 1000 ошибок и предупреждений с момента последнего запуска Dovecot

# doveadm log errors

1 # doveadm log errors

Переоткрытие всех логов Dovecot(полезно выполнять после ручной ротации логов)

# doveadm log reopen

1 # doveadm log reopen

Тестирование аутентификации для пользователя(где rip-remote ip)

# doveadm auth test -x service=imap -x rip=10.10.1.4 [email protected]

1 # doveadm auth test -x service=imap -x rip=10.10.1.4 [email protected]

# doveadm auth test -x service=pop3 -x rip=10.10.1.4 [email protected]

1 # doveadm auth test -x service=pop3 -x rip=10.10.1.4 [email protected]

# doveadm auth test -x service=smtp -x rip=10.10.1.4 [email protected]

1 # doveadm auth test -x service=smtp -x rip=10.10.1.4 [email protected]

performs a passdb lookup (without authentication) instead of a userdb lookup.

# doveadm auth lookup [email protected]

1 # doveadm auth lookup [email protected]

Просмотр информации о пользователе

# doveadm user [email protected]

1 # doveadm user [email protected]

Поиск сообщений, которые совпадают под критерий поиска(для пользователя [email protected] в каталоге Корзина/Trash )

# doveadm search -u [email protected] mailbox Trash

1 # doveadm search -u [email protected] mailbox Trash

Удаление таких сообщений(всех сообщений из каталога Trash)

# doveadm expunge -u [email protected] mailbox Trash all

1 # doveadm expunge -u [email protected] mailbox Trash all

Удаление писем с каталога Trash, которые были помещены туда более 2 недель назад

# doveadm expunge -u [email protected] mailbox Trash savedbefore 2w

1 # doveadm expunge -u [email protected] mailbox Trash savedbefore 2w

Просмотр квоты пользователя

# doveadm quota get -u [email protected]

1 # doveadm quota get -u [email protected]

Аналогично,но для всех пользователей (например,список пользователей берется из таблицы postfix.mailbox )

# for user in `mysql -Bse «select username from postfix.mailbox»`; do doveadm quota get -u $user; done

1 # for user in `mysql -Bse «select username from postfix.mailbox»`; do doveadm quota get -u $user; done

Альтернативно можно попробовать использовать команду

# doveadm quota get -A

1 # doveadm quota get -A

Пересчет квоты пользователя

# doveadm quota recalc -u [email protected]

1 # doveadm quota recalc -u [email protected]

Аналогично,но для всех пользователей (например,список пользователей берется из таблицы postfix.mailbox )

# for user in `mysql -Bse «select username from postfix.mailbox»`; do doveadm quota recalc -u $user; done

1 # for user in `mysql -Bse «select username from postfix.mailbox»`; do doveadm quota recalc -u $user; done

Альтернативно можно попробовать использовать команду

# doveadm quota recalc -A

1 # doveadm quota recalc  -A

Опубликовано в рубрике Linux/Unix General, Mail Метки: doveadm, dovecot

Проверка работы квот

Для начала в командной строке вводим:

doveadm quota get -u [email protected]

[email protected] — почтовый пользователь, для которого нужно показать квоту.

Данная команда отобразит квоту для пользователя, например:

Quota name Type    Value Limit                %
User quota STORAGE  16420  50000               32
User quota MESSAGE    14     —                0

Теперь открываем PostfixAdmin — заходим в настройки почтового ящика и ставим небольшой лимит, например, в 5 Мб:

Теперь объем ящика превышает лимит:

doveadm quota get -u [email protected]

Quota name Type    Value Limit                %
User quota STORAGE  16420  5000               328
User quota MESSAGE    14     —                0

* объем превышен, почти, втрое.

Некоторые почтовые клиенты покажут превышение лимита, например, Thunderbird:

SSL

Пример настройки работы по IMAPS(порт 993), с использованием сертификатов Let’s Encrypt:

/etc/dovecot/conf.d/10-ssl.conf
ssl = yes
 
ssl_cert = </etc/letsencrypt/live/domain.ru/fullchain.pem
ssl_key = </etc/letsencrypt/live/domain.ru/privkey.pem
 
ssl_prefer_server_ciphers = yes
 
ssl_min_protocol = TLSv1
ssl_cipher_list = ALL:!LOW:!SSLv2:!EXP:!aNULL:!RC4::!eNULL:!LOW:!3DES:!MD5:!EXP:!PSK:!SRP:!DSS

Также нужно добавить в секцию «service imap-login» настройку для

/etc/dovecot/conf.d/10-master.conf
service imap-login {
    inet_listener imaps {
        port = 993
        ssl = yes
    }
}

Оповещения при превышении квоты

Открываем конфигурационный файл 90-quota.conf:

vi /etc/dovecot/conf.d/90-quota.conf

Снимаем комментарий или добавляем данные строки:

plugin {
  quota_warning = storage=95%% quota-warning 95 %u
  quota_warning2 = storage=80%% quota-warning 80 %u
}

* в данном примере мы указываем на необходимость делать 2 предупреждения — первое при достижении объема ящика в 80%, второе — 95%. Сервис dovecot, который будет это обеспечивать, называется quota-warning.

Теперь находим раздел service quota-warning и приводим его к виду:

service quota-warning {
  executable = script /usr/local/bin/quota-warning.sh
  user = dovecot
  unix_listener quota-warning {
    user = vmail
  }
}

* мы создали сервис quota-warning, который будет запускать скрит /usr/local/bin/quota-warning.sh.

Создаем сам скрипт quota-warning.sh:

vi /usr/local/bin/quota-warning.sh

cat << EOF | /usr/libexec/dovecot/dovecot-lda -d $2 -o «plugin/quota=maildir:User quota:noenforcing»
Content-Type: text/html; charset=utf-8
From: Администратор почты <[email protected]>
Subject: Предупреждение о превышении квоты на почтовый ящик
X-Priority: 2
<p>Размер Вашего почтового ящика составляет $1% от установленного ограничения.<br>
Чтобы уменьшить его размер Вы можете удалить большие письма с вложениями, старые письма или почистить корзину.</p>
EOF

* где [email protected] — административный почтовый ящик. Сам текст сообщения можно преобразовать, чтобы оно было более презентабельным.

Задаем права на исполнение скрипта:

chmod +x /usr/local/bin/quota-warning.sh

Проверяем, что нам приходят уведомления, запустив скрипт:

/usr/local/bin/quota-warning.sh 80 [email protected]

* где [email protected] — наш почтовый ящик, на который должно будет отправиться уведомление.

Перезапускаем службу dovecot:

systemctl restart dovecot

Настройка ведения журнала аудита почтовых ящиков для доступа администратора, делегата и владельца

Если для почтового ящика включено ведение журнала аудита почтовых ящиков, только действия администратора, делегата и владельца, указанные в конфигурации ведения журнала аудита, заносятся в журнал.

В этом примере указывается, что действия, выполняемые администраторами, будут зарегистрированы для почтового ящика Бена Смита.

В этом примере указывается, что действия, выполняемые пользователями делегирования, будут зарегистрированы для почтового ящика Бена Смита.

В этом примере указывается, что действия, выполняемые владельцем почтовых ящиков, будут зарегистрированы для почтового ящика Бена Смита.

Подробные сведения о синтаксисе и параметрах см. в разделе Set-Mailbox.

Пользователю не удается выполнить вход с помощью смарт-карты

В этом разделе рассматриваются три типичных сценария, когда пользователь не может войти на удаленный рабочий стол с помощью смарт-карты.

Эта проблема возникает в развертываниях, в которых задействован сервер RDSH на сайте филиала, где используется RODC. Сервер RDSH размещен в корневом домене. Пользователи на сайте филиала относятся к дочернему домену и используют смарт-карты для проверки подлинности. Контроллер домена RODC настроен на кэширование паролей и принадлежит к группе с разрешением реплицировать пароли RODC. Когда пользователи пытаются выполнить вход в сеанс на сервере RDSH, они получают сообщение, например: «Неудачная попытка входа в систему. Указано неверное имя пользователя или другие неверные личные данные.»

Эта проблема связана с тем, как корневой контроллер домена и RDOC управляют шифрованием учетных данных пользователей. Корневой контроллер домена использует ключ шифрования, чтобы зашифровать учетные данные, а RODC предоставляет ключ расшифровки клиенту. Если пользователь получает ошибку «Недопустимо», значит два ключа не совпадают.

Чтобы решить эту проблему, выполните одно из указанных ниже действий:

  • измените топологию контроллера домена, отключив кэширование паролей на RODC, или разверните на сайте филиала контроллер домена с доступом на запись;
  • переместите сервер RDSH в тот же дочерний домен, где находятся пользователи;
  • разрешите пользователям выполнять вход без смарт-карты.

Учтите, что эти решения предполагают наличие компромисса между производительностью и уровнем безопасности.

Эта проблема возникает, когда пользователи выполняют вход в систему компьютера Windows Server 2008 с пакетом обновления 2 (SP2), на котором установлено обновление KB4093227 (2018.4B). Когда пользователи пытаются выполнить вход с помощью смарт-карты, они получают отказ в доступе с сообщениями, например: «Действительные сертификаты не найдены. Убедитесь, что эта карта вставлена правильно и плотно сидит в разъеме». В то же время на компьютере Windows Server регистрируется событие приложения с сообщением «При получении цифрового сертификата с вставленной смарт-карты произошла ошибка: неправильная подпись.»

Чтобы устранить эту проблему, обновите на компьютере ОС Windows Server до повторного выпуска 2018.06 B (обновление KB4093227). См. статью Description of the security update for the Windows Remote Desktop Protocol (RDP) denial of service vulnerability in Windows Server 2008: April 10, 2018 (Описание обновления системы безопасности для защиты протокола RDP в Windows от уязвимости службы в Windows Server 2008 (10 апреля 2018 г.).

Основные причины

Рассмотрим самые частые причины появления ошибки при попытке подсоединения к Wi-Fi. Очень часто виной этому является обыкновенная человеческая невнимательность, проблемы с некачественным программным обеспечением телефонов на Андроиде и гораздо реже аппаратная неисправность роутера.

Неправильно набранный пароль

Чаще всего ошибка аутентификации при подключении к wi-fi на андроид случается из-за банальной ошибки при вводе ключа доступа, то есть пароля.

  1. Кликните в самом краю на иконку (если таковая есть) знака колодки, ключа, глаза или надпись: «Отображать символы/Показать пароль». Тогда вводимые символы будут отображаться как следует, и вы наверняка напишите верный пароль. Большие и маленькие буквы имеют разные значения, регистр учитывается, поэтому будьте внимательны.
  2. Если первый пункт не работает, напишите пароль в любом текстовом редакторе, скопируйте и вставьте свой пароль от wi-fi прямо в поле ввода пароля. Учите, что скопировать нужно только сам пароль. Если в буфер обмена попадут лишние пробелы, тогда он не подойдет.
  3. Проверьте правильность пароля Wi-Fi с помощью иного устройства. Подключитесь к сети с помощью этого же ключа, но уже с другого гаджета. Если все удалось – проблема на стороне первого девайса. Если нет, тогда потребуется вмешиваться в настройки роутера.

Несоответствие типа шифрования данных

«Отключено, требуется авторизация wi-fi андроид» – данная ошибка может появиться из-за несовпадения типа зашифрованных данных. Исправить это можно с помощью настроек роутера. Не забудьте проверить и телефонные настройки Wi-Fi для конкретной сети, чтобы сверить их с тем, что указано в админке роутера. При подключении новой сети на телефоне можно выставлять параметры, такие как DHCP, Proxy и прочее. Старайтесь использовать стандартные значения.

Неправильно выставленная дата на смартфоне

Все современные телефоны на iOS, Android умеют синхронизировать время по Интернету. Если доступа к Интернету нет, исправьте это вручную, зайдя в настройки даты и времени своего телефона. Выставьте точные данные и пробуйте подключиться к сети заново. Иногда это помогает устранить ошибку.

Неисправный роутер

Допустим, вы перепробовали все советы из данной статьи и ни один из них не приблизил вас к победе. Если все еще показывает, что требуется авторизация к wi-fi сети на телефоне, не исключено, что маршрутизатор вышел из строя или начал работать нестабильно. Это редкий случай, но исключать его не стоит.

Попробуйте перезагрузить устройство. Если не поможет, и вы 100% уверены, что проблема на стороне роутера (а проверить это можно, поочередно подключая несколько разных устройств), тогда сбросьте все настройки до заводских. Возможно, это устранит проблему, но если не помогло, следует перепрошить девайс.

Делать это стоит только если устройство уже не на официальной гарантии, иначе вы рискуете ее потерять. Скачивать прошивку рекомендуется только с официального сайта. Когда и это не сработает, видимо, проблема в аппаратной части. Роутер потребуется отнести на ремонт в сервисный центр. Если он на гарантии, это следует делать первым делом, а не перепрошивать самостоятельно.

7 ответов

Решение

просит пароль root. Так как Ubuntu по умолчанию не устанавливает пароль root, вы не можете использовать его, чтобы стать пользователем root.

Вместо этого, чтобы стать пользователем root, используйте с вашим личным паролем.

43

2011-04-10 07:51

запрашивает пароль учетной записи, которую вы пытаетесь войти. Это использование (упрощенно):

При опускании , имя пользователя по умолчанию , Поскольку пароль пользователя root по умолчанию отключен в Ubuntu, пароль не будет действительным. Предпочтительный способ запуска команд root не через оболочку su, а с помощью sudo, как в:

12

2011-04-10 08:27

учетная запись в Ubuntu по умолчанию отключена. Это означает, что у него нет пароля (что отличается от пустого пароля), и никакая попытка аутентификации с паролем root не будет успешной. Следовательно, или же не будет работать.

Вместо этого используйте запустить команду от имени root:

Если вы хотите корневую оболочку, как вы получаете с , бежать:

Если вы хотите корневую оболочку, как вы получаете с , бежать:

7

2013-02-14 17:20

просит пароль root.

Вы можете установить пароль пользователя root, пока вы являетесь пользователем root (указав при условии, что вы находитесь на файл), дав команду и установка нового пароля.

Это не рекомендуется по разным причинам.

1

2014-05-30 18:24

В моем случае это было потому, что запись для этого пользователя отсутствовала в ,

Я скопировал на другой тестовый сервер все записи в с ID выше 1000 вместе с но забыл , Так что каждый раз, когда я сделал с любым из этих пользователей я бы получил эту ошибку. После добавления отсутствующей записи в ошибка перестала бы появляться.

Например :

1

2016-07-17 21:30

Когда вам нужно войти в систему, как один из ваших неидентифицированных пользователей говорят (не имеет pwd)

РЕШЕНИЕ — используйте этот синтаксис для входа в систему как ИД пользователя

1

2017-03-07 13:27

Я наткнулся на ОС, Minibian, где бит setuid отсутствовал в , вызывая эту ошибку, даже если пароль учетной записи root был включен.

В Linux единственный способ стать пользователем root — выполнить файл setuid-root. Когда ты бежишь или же их бит setuid установлен, поэтому эффективный пользователь процесса становится пользователем root, а затем он выполняет аутентификацию уже как пользователь root! Если это не удается, они выходят.

Во всяком случае, вот симптомы и исправление:

Обратите внимание на разницу: до, после. 2016-01-03 21:09

2016-01-03 21:09

Настройка параметра аудита

Вы можете настроить этот параметр безопасности, открыв соответствующую политику в области конфигурации компьютера\Windows Параметры\Security Параметры\Local Policies\Audit Policy.

События Logon Описание
4624 Пользователь успешно вошел на компьютер. Сведения о типе логотипа см. в таблице Типы logon ниже.
4625 Сбой Logon. Попытка логотипа была предпринята с неизвестным именем пользователя или известным именем пользователя с плохим паролем.
4634 Процесс входа был завершен для пользователя.
4647 Пользователь инициировал процесс входа.
4648 Пользователь успешно вошел на компьютер с использованием явных учетных данных, уже во время входа в систему в качестве другого пользователя.
4779 Пользователь отключил сеанс сервера терминала без входа.

При входе в журнал события 4624 (Legacy Windows Event ID 528) в журнале событий также указан тип логотипа. В следующей таблице описывается каждый тип логотипа.

Тип Logon Название Logon Описание
2 Interactive (Интерактивные) Пользователь успешно вошел в систему на данном компьютере.
3 Network Пользователь или компьютер вошли в систему на данном компьютере через сеть.
4 Batch Пакетный тип входа используется пакетными серверами, исполнение процессов на которых производится по поручению пользователя, но без его прямого вмешательства.
5 Обслуживание Служба была запущена диспетчером служб.
7 Unlock Эта рабочая станция была разблокирована.
8 NetworkClearText Пользователь вошел в систему на данном компьютере через сеть. Пароль пользователя передан в пакет проверки подлинности в нехешированной форме. Встроенная проверка подлинности упаковывает все хешированные учетные записи перед их отправкой через сеть. Учетные данные не передаются через сеть открытым текстом.
9 NewCredentials Инициатор вызова клонировал свой текущий маркер и указал новые учетные данные для исходящих соединений. Новый сеанс входа в систему имеет то же самое локальное удостоверение, но использует другие учетные данные для других сетевых соединений.
10 RemoteInteractive Пользователь выполнил вход в систему на этом компьютере через службы терминалов или удаленного рабочего стола.
11 CachedInteractive Пользователь выполнил вход в систему на этом компьютере с сетевыми учетными данными, которые хранились локально на компьютере. Контроллер домена не использовался для проверки учетных данных.
Рейтинг
( Пока оценок нет )
Понравилась статья? Поделиться с друзьями:
Все про сервера
Добавить комментарий

;-) :| :x :twisted: :smile: :shock: :sad: :roll: :razz: :oops: :o :mrgreen: :lol: :idea: :grin: :evil: :cry: :cool: :arrow: :???: :?: :!: