Published on Stefano Sasso (http://stefano.dscnet.org)
Exim: autenticazione SMTP basata su server IMAP
By stefano
Data di creazione 08/12/2007 - 18:27

Creiamo subito il file /etc/exim/exim_perl.pl

#!/usr/bin/perl
use Net::IMAP::Simple;
sub imapLogin
{
  my $host = shift;
  my $account = shift;
  my $password = shift;
  # open a connection to the imap server
  if (! ($server = new Net::IMAP::Simple($host)))
  {
    return 0;
  }
  # login, if success return 1 (true) else 0 (false)
  if ($server->login( $account, $password ))
  {
    return 1;
  }
  else
  {
    return 0;
  }
  server->close();
}

E all'inizio della configurazione di exim inseriamo:

perl_startup = do '/etc/exim/exim_perl.pl'
perl_at_start

Mentre nella parte relativa all’autenticazione smtp inseriamo

begin  authenticators
plain:
  driver               =  plaintext
  public_name          =  PLAIN
  server_condition     =  ${perl{imapLogin}{localhost}{$2}{$3}}
  server_set_id        =  $2
login:
  driver               =  plaintext
  public_name          =  LOGIN
  server_prompts       =  "Username:: : Password::"
  server_condition     =  ${perl{imapLogin}{localhost}{$1}{$2}}
  server_set_id        =  $1
Creative Commons License Linux Kernel Debian GNU/Linux Apache Web Server Drupal CMS gnustile.net

Source URL (retrieved on 05/02/2012 - 14:34): http://stefano.dscnet.org/a/exim_autenticazione_smtp_basata_su_server_imap