Как получить список пользователей почтового сервера dovecot, которые подключаются через IMAP (в отличие от POP)?
Наш сервер настроен для аутентификации через LDAP / PAM. Есть ли простой способ получить список пользователей, которые получают доступ к своей почте через IMAP, а не через POP? Я собираюсь перенести наш сервер на Google Apps и хочу перенести всю почту только для моих пользователей IMAP (пара сотен из нескольких сотен пользователей). Очевидно, что POP-почта будет перенесена отдельно от клиентской части.
Я бы предпочел перенести только пользователей IMAP, а не весь домен, что включало бы перенос кучи почты POP, оставшейся на сервере, которая уже была прочитана / отсортирована / удалена в почтовой программе клиента. Перенос всей этой бесполезной оставшейся почты POP может потратить недели на миграцию.
Я полагаю, что анализ некоторых журналов, чтобы увидеть, кто подключился к порту IMAP (995 или 993), дал бы мне список, который работал бы, если бы кто-то мог мне помочь в этом. Я знаю, что у меня есть необработанные журналы голубятни, но надеюсь на более чистое решение.
Чтобы получить список логинов:
cat /var/log/mail.log | grep imap-login
Теперь нам нужно сократить его до чего-то более удобного - отфильтровать имя пользователя и удалить дубликаты:
cat /var/log/mail.log | grep imap-login:\ Login | sed -e 's/.*Login: user=<\(.*\)>, method=.*/\1/g' | sort | uniq
Это получает завершенные логины imap (укажите имя), использует sed с регулярным выражением для вырезания имени, сортирует его и затем принимает уникальные имена.