[FUG-BR] SMTP com autenticação
Patrick Tracanelli
eksffa em freebsdbrasil.com.br
Quinta Agosto 31 17:34:27 BRT 2006
Bruno Oliveira wrote:
> Boa tarde,
>
> Estou procurando na internet, porém sem sucesso ainda uma documentação que me
> ensine a adicionar autenticação no meu servidor Qmail, o objetivo é que para
> enviar e-mails pelo meu servidor via algum programa seja necessário um
> usuário e senha para isso, diferente do usuário e senha para logar no
> servidor. Basicamente seria um usuário e senha para o POP3 e outro usuário e
> senha para o SMTP.
>
> Alguém poderia me ajudar ?
Bruno, nao tem nenhuma receita de bolo, mas a ideia eh bem simples. Voce
precisa de um programa qualquer que implemente a API checkpassword do
DJB, que em linhas gerais pode ser implementada em menos de 10 linhas de
codigo num programa. Existem toneladas de implementacoes alternativas,
as mais comuns voce vai encontrar aqui:
http://qmail.usp.br/top.html#checkpassword
Escolha uma delas, tem uma (checkcdb) ai que confere os usuarios de um
cdb, acho uma das mais indicadas.
Entao chame esse programa como argumento para o qmail-smtpd ao inves do
autenticador que voce esta usando agora (por exemplo, ao inves de vchkpw
caso esteja usando vpopmail). Basta popular corretamente a base desse
checkpassword.
Outra alternativa e usar um programa que implemente essa API e faca
distincao entre protocolos. No caso, o proprio vchkpw o faz. Voce pode
com vmoduser definir se o usuario tem acesso POP, SMTP, etc. Entao se
quiser pode usar o mesmo vchkpw para ambos, popper/smtpd e restringir as
autenticacoes, por exemplo habilitando apenas pop no usuario X e apenas
smtp no usuario Y.
Tem varios, em perl, em C, em python, usando mysql/pgsql/ldap/cdb como
backend. E a ideia eh a mesma, quem quer que implemente a API do
checkpassword pode ser usado.
--
Patrick Tracanelli
FreeBSD Brasil LTDA.
(31) 3281-9633 / 3281-3547
316601 em sip.freebsdbrasil.com.br
http://www.freebsdbrasil.com.br
"Long live Hanin Elias, Kim Deal!"
Mais detalhes sobre a lista de discussão freebsd