IMAP como fazer o login com AUTH = LOGIN no console com o OpenSSL

1

Eu vi alguns servidores que retornam

AUTH=LOGIN

quando solicito a CAPABILIDADE do servidor IMAP, por exemplo:

1 CAPABILITY

CAPABILITY IMAP4 IMAP4rev1 AUTH=LOGIN AUTH=PLAIN AUTH=XOAUTH2 SASL-IR UIDPLUS ID UNSELECT CHILDREN IDLE NAMESPACE LITERAL+

Como posso encontrar mais informações sobre AUTH=LOGIN e como posso usá-lo para fazer login diretamente no console no servidor?

Eu tentei pesquisar no Google , mas não obtive sucesso. E gostaria de implementar este formato de Login no meu cliente JAVA IMAP.

    
por DeMarco 26.12.2017 / 18:22

2 respostas

1

O mecanismo LOGIN SASL é muito semelhante ao mecanismo PLAIN, mas são necessários dois passos para autenticar:

CLIENT: AUTH LOGIN
SERVER: VXNlcm5hbWU6
CLIENT: am9l
SERVER: UGFzc3dvcmQ6
CLIENT: bXkgc2VyY3JldA==

Qual, após a decodificação de base64, traduz:

CLIENT: AUTH LOGIN
SERVER: Username:
CLIENT: joe
SERVER: Password:
CLIENT: my secret

A especificação diz que os desafios do servidor devem ser User Name e Password , mas:

Note: There is at least one widely deployed client which requires that the challenge strings transmitted by the server be "Username:" and "Password:" respectively. For this reason, server implementations MAY send these challenge strings instead of those listed above.

Não há criptografia / hashing de senha envolvida, portanto, você pode testar ambos os lados de forma bastante fácil, para uso de comunicação não criptografada netcat para openssl s_client ou openssl s_server criptografado.

Observe que o exemplo acima não possui as necessidades de protocolo usadas, já que essa parte é comum a todos os protocolos que você pode precisar (SMTP / POP3 / IMAP ...). A comunicação real ainda deve seguir as especificações do protocolo:

IMAP

1 AUTH LOGIN
VXNlcm5hbWU6
am9l
UGFzc3dvcmQ6
bXkgc2VyY3JldA==

SMTP

AUTH LOGIN
334 VXNlcm5hbWU6
am9l
334 UGFzc3dvcmQ6
bXkgc2VyY3JldA==
    
por 09.01.2018 / 15:57
0

É uma extensão obsoleta e não padrão. Ele não está listado no registro da IANA sobre os recursos do IMAP . Ele vem de um obsoleto draft-murchison-sasl-login-00 (veja o ANa lista de esquemas de autenticação SASL ).

Ele não traz nenhum novo recurso em relação ao AUTH=PLAIN padrão do IMAP LOGIN command .

    
por 09.01.2018 / 15:27