Como obter uma lista de usuários do Dovecot IMAP

2

Como você obtém uma lista de usuários para um servidor de e-mail dovecot que se conecta via IMAP (em oposição ao POP)?

Nosso servidor está configurado para autenticar via LDAP / PAM. Existe uma maneira fácil de obter uma lista dos usuários que estão acessando seus e-mails via IMAP, em vez de POP? Estou prestes a migrar nosso servidor para o Google Apps e quero migrar todos os e-mails apenas para meus usuários IMAP (algumas centenas de centenas de usuários no total). O correio POP será migrado separadamente do terminal do cliente, obviamente.

Eu prefiro migrar apenas os usuários IMAP em vez de todo o domínio, o que inclui a migração de um monte de emails POP deixados no servidor que já foram lidos / classificados / excluídos no programa de e-mail do cliente. A migração de todos os emails POP restantes e inúteis pode desperdiçar semanas de tempo de migração.

Suponho que analisar alguns logs para ver quem se conectou em uma porta IMAP (995 ou 993) me forneceria uma lista funcionaria se alguém pudesse me ajudar a fazer isso. Eu sei que tenho os logs dovecot, mas estou esperando por uma solução mais limpa.

    
por Colt McCormack 07.09.2012 / 09:18

1 resposta

2

Para obter uma lista de logins:

cat /var/log/mail.log | grep imap-login 

Agora, precisamos reduzi-lo a algo um pouco mais útil: filtrar o nome de usuário e eliminar duplicatas:

cat /var/log/mail.log | grep imap-login:\ Login | sed -e 's/.*Login: user=<\(.*\)>, method=.*//g' | sort | uniq

Isso obtém os logins do imap que são completos (forneça um nome), usa o sed com um regex para cortar o nome, classifica-o e depois pega os nomes exclusivos.

    
por 26.09.2012 / 23:44