Ainsi parla patrick <[EMAIL PROTECTED]>, le 20 août de
l'an de grâce 2003 :
> Salut

'lut.

> on souhaite remplacer un serveur crosoft exchange (200 clients) par
> Exim 4.20 installé sur une RH9

Une bonne idée, s'il en est. Enfin, moi j'aurais pas mis une RH, mais
les goûts et les couleurs, hein...

> Pour limiter le spaming on a mis en place sur Exchange une
> authentification SMTP.

Bonne idée aussi.

> On souhaite mettre une sécu identique sur l'exim mais comment faire???

La doc sur le sujet est à <http://minilien.com/?fFlY8RTsmy>. Il y a un
didacticiel en Rital pour Exim 3.x à <http://minilien.com/?07zTYXOIKX>.

Pour Exim 4, c'est presque pareil. En gros :

1. Tu installes Exim (je suppose que c'est déjà fait).
2. Tu rajoutes ceci dans ton fichier de conf :

begin acl

(...)

acl_check_rcpt:

  (... les ACL que tu veux ici...)

  accept authenticated = *

(...)

begin authenticators

login:
  driver = plaintext
  public_name = LOGIN
  server_prompts = "Username:: : Password::"
  server_condition = "${if pam{$1:$2}{1}{0}}"
  server_set_id = $1

3. Ensuite, il faut compiler un module spécial pour PAM. En fait, tout
ceci n'est pas à proprement parler _obligatoire_, ma Debian avait par
défaut ceci :

  server_condition = "${if 
crypteq{$2}{${extract{1}{:}{${lookup{$1}lsearch{/etc/exim4/passwd}{$value}{*:*}}}}}{1}{0}}"

Ceci devrait fonctionner, à condition de copier le fichier /etc/shadow
dans le répertoire qui va bien et en faisant un chown mail:mail dessus.
Mais ceci signifie que je devrais à chaque changement me rappeler de
copier le fichier. Ça signifie aussi qu'Exim aurait accès au MdP root à
moins de le virer à la main. Bref, je préfère tenter le coup avec PAM,
et je tape :

cd /usr/local/src
wget http://kernel.org/pub/linux/libs/pam/pre/library/Linux-PAM-0.76.tar.gz # 
ma version de PAM est la 0.76
wget http://www.e-admin.de/pam_exim/pam_exim.tgz
tar -vxzf Linux-PAM-0.76.tar.gz
cd Linux-PAM-0.76
tar -vxzf ../pam_exim.tgz
./configure
cd modules/pam_exim
vi unix_chkpwd.c

Ici, je change quelques valeurs, comme indiqué dans le howto :

#define MINUID          1000    // grep UID_MIN /etc/login.defs
#define EXIMUID         8       // id mail (si Exim utilise l'utilisateur 
'mail', of course)
#define EXIMGID         8       // (pareil avec le groupe)

# make

Bon, ça marche pas, il lui faut les bibliothèques de dev, mais j'ai pas
envie de recompiler tout PAM pour lui, donc un coup d'apt-get
libpam0g-dev plus tard, je relance la commande. Ça marche. C'est beau la
vie :-)

make install
cd /etc/pam.d/
cat > exim
#%PAM-1.0
auth required /lib/security/pam_exim.so
account required /lib/security/pam_permit.so
^D
/etc/init.d/exim4 restart

4. Bon, ben, on teste :

[EMAIL PROTECTED]|ttyp2:/etc/pam.d# telnet 192.168.1.2 smtp
Trying 192.168.1.2...
Connected to 192.168.1.2.
Escape character is '^]'.
220 betelgeuse.frnic1.corp.goretsoft.net.invalid ESMTP Exim 4.20 Wed, 20 Aug 
2003 06:59:02 +0200
EHLO toto
250-betelgeuse.frnic1.corp.goretsoft.net.invalid Hello root at 
betelgeuse.frnic1.corp.goretsoft.net.invalid [192.168.1.2]
250-SIZE 52428800
250-PIPELINING
250-AUTH LOGIN
250 HELP
MAIL FROM: <[EMAIL PROTECTED]>
250 OK
RCPT TO: <[email protected]>
550 relay not permitted
RSET
250 Reset OK
AUTH LOGIN
334 VXNlcm5hbWU6
************
334 UGFzc3dvcmQ6
************
235 Authentication succeeded
MAIL FROM: <[EMAIL PROTECTED]>
250 OK
RCPT TO: <[email protected]>
250 Accepted

Au poil ! Une précision pour les tests, les deux lignes de '*' sont
tout simplement le login et le MdP en base64. Tu peux les générer sans
souci avec Perl et le module MIME::Base64 par exemple :

perl -e 'use MIME::Base64; print(encode_base64("monlogin"));'

Voilà. Au passage, Exim supporte d'autres méthodes d'authentification
(PLAIN, CRAM-MD5, etc.) mais comme je n'en ai pas vraiment l'usage, je
ne les ai pas utilisées. D'autre part, des trucs exotiques comme
CRAM-MD5 ne sont pas toujours supportés par tous les mailers...

> D'avance Merci pour les infos

De rien.

> kenavo

Buona fortuna, caro mio.

> Patrick

Jacques.

+++
-- 
   Jacques Caruso |    Administrateur système    | Life? Don't talk to
[EMAIL PROTECTED] |   Webmaster, jeuxdroles.org  | me about life!
(+33) 493 847 728 | Membre des Minotaures du Sud |   -- Marvin the
 PGP : 0x41F5C63D |     Membre de Linux-Azur     |   paranoid android

Linux-Azur :      http://www.linux-azur.org
Désinscriptions: http://www.linux-azur.org/liste.php3
**** Pas de message au format HTML, SVP ****

Répondre à