Como posso usar o fetchmail (ou outro grabber de email) com o keychain do OSX para autenticação?

2

Muitos tutoriais do fetchmail que eu li dizem que colocar a senha da sua conta de e-mail em um arquivo de configuração é seguro. No entanto, eu prefiro a segurança através de camadas [*** exemplo bobo: * se o meu terminal estiver ativo e alguém suspeitar que esse e-mail deslize e simplesmente digitar "grep -i pass ~ /.*" então, oops, all my base são deles! especialmente se o meu provedor de e-mail usa o openid (ou eu sou burro o suficiente para usar a mesma senha para o meu banco) ] **.

Agora, com o msmtp (em oposição ao sendmail), posso autenticar usando o keychain do OSX. Existe um “grabber” de e-mail gratuito / de código aberto que me permite usar Chaveiros (ou, pelo menos, que me deixe MD5 a senha)?

    
por bias 09.06.2010 / 01:47

5 respostas

1

Se a recuperação de mensagens via POP3 for suficiente para você, dê uma olhada no excelente mpop . É do mesmo autor do msmtp e também possui suporte a keychain do OSX para armazenar credenciais de autenticação.

Para o IMAP4, você pode usar o OfflineIMAP muito agradável e conectá-lo a uma chave do OSX usando William Snow Orvis 'gancho de Python .

Pessoalmente, prefiro essas ferramentas em relação ao fetchmail (devido, por exemplo, à velocidade de download, ao conjunto de recursos, à configuração), mas sua milhagem pode variar.

    
por 13.06.2010 / 19:10
5

De uma perspectiva simples de utilitário, sim, você pode usar o Keychain. Eu recomendo strongmente que você leia toda a página security(1) man, que tem ressalvas adicionais.

Você pode inserir a senha usando o programa Keychain ou através da linha de comando:

# WARNING: exposes password in ps(1), history(1), etc.
$ security add-internet-password -a $USER -s pop3.example.com -w 'Mellon!'

Você pode extrair isso com:

# Note: by default, first use will prompt
$ security find-internet-password -s pop3.example.com -a $USER -g

Se você Sempre permitir , security(1) poderá extrair essas credenciais sem prompts adicionais. Isso pode ser um risco para o seu sistema. Você pode optar por ter isso sempre solicitar sua senha antes de iniciar, no entanto.

Por fim, usando isso, você pode agrupar sua chamada fetchmail com um script de trampolim que define a senha a ser usada.

user=$USER
server=pop3.example.com
# WARNING: insecure tmpfile creation and usage
# As [DAM][1] mentions, see mkstemp(3)
tmpfile=/tmp/fetchmailrc.$$ 

password=$(security find-internet-password -s $server -a $USER -g 2>&1 \
           | perl -ne '/password: "(\S*)"/ and print $1')

# create temporary fetchmailrc and pass to fetchmail, etc...
cat <<EoF > $tmpfile
poll $server with proto POP3 and options no dns
  user $user with pass '$password' is $user here 
  options keep mda '/usr/bin/procmail -d %T'
EoF

fetchmail -d -f $tmpfile
rm -f $tmpfile

Embora isso atinja o objetivo declarado de não ter arquivos óbvios com senhas, observei os riscos de segurança ainda presentes nessa configuração, o que você deve considerar.

    
por 12.06.2010 / 15:27
1

Se o conjunto de chaves permitir que a senha de texto sem formatação seja removida, isso é possível, mas você não pode digitar senhas MD5 localmente, pois o servidor quer em seu próprio formato (geralmente texto sem formatação)

    
por 11.06.2010 / 18:30
1

Para usar o imap / smtp / pop3 padrão, você precisa de uma senha em texto sem formatação. Então, se você quiser armazenar isso localmente, ele precisa estar em um formato reversível, o que não é uma ótima notícia para usar o Keychain. No entanto, se o servidor de correio suportar, você poderá autenticar usando um certificado X.509 e SSL. Esse certificado pode ser com ou sem senha e pode ser armazenado na chave do Mac OS X.

O que não posso responder é se algum software realmente suporta essa configuração, já que não sou usuário de Mac. Além disso, você também precisa do seu servidor para suportar a autenticação X509.

    
por 11.06.2010 / 19:48
1

@medina,

Em vez de "tmpfile = / tmp / fetchmailrc. $$", eu recomendaria usar o mktemp (1) se estiver disponível.

    
por 12.06.2010 / 16:29