SMTP AUTH avec TLS, POP3, IMAP avec TLS par courrier pour exim4 sur Debian 5.0 (Lenny)
Créé par Solip le 16 Mars 2010
Comme une version plus grande pour la mise en place Exim4 à utiliser SMTP-AUTH et TLS, voici un guide sur la façon d'installer sur la base du Auth Exim4 SMTP avec TLS et accès à la messagerie via POP3 ou IMAP (tous deux également avec TLS) peut être établie.
Ainsi prend en charge les protocoles suivants: SMTP, avec authentification ssmtp, POP3, pop3s, imap2, IMAPS.
Exim4 comme agent de transport de messagerie par défaut (MTA) de Debian est disponible en deux versions: légers et lourds. La variante lourde peut être étendu bien plus de la livraison du courrier seulement au niveau local. Tout d'abord peut-être utilisé le paquet des lourds-légers de Exim4 de la version à être remplacé. Cela est possible à tout moment sans avoir à modifier la configuration.
aptitude install exim4-daemon-heavy
Puis installer des paquets au total pour l'installation sont nécessaires.
aptitude install courier-authdaemon courier-imap courier-imap-ssl courier-pop courier-pop-ssl swaks libnet-ssleay-perl ssl-cert
Le processus d'authentification avec cette configuration ressemble à ceci: Connection -> exim4 -> Courrier -> Système (PAM). Les utilisateurs sont des utilisateurs locaux, et donc ils se tiennent dans des ressources telles que le fichier / etc / passwd, / etc / group et / etc / shadow.
Ainsi, les futurs utilisateurs ont aussi une structure de dossiers pour l'e-mail, nous créons un tel ensemble de nouveaux comptes d'utilisateurs. maildirmake créé la structure dans / etc / skel.
maildirmake /etc/skel/Maildir
Les utilisateurs existants sans structure de dossier pour l'e-mail peut obtenir le dossier est ajouté:
maildirmake ~/Maildir
Il est recommandé que l'utilisateur de les trier en groupes. Par exemple, e-mail des utilisateurs, les utilisateurs avec shell valide .. l'ordonnance devrait être rendue avant que l'on investit beaucoup d'utilisateurs. Cet exemple suppose que notre groupe de sociétés "Solip" à cet effet. Tous les utilisateurs de ne pas avoir accès au shell, mais une boîte postale.
groupadd solip
useradd -g solip -s /bin/false -d /home/demouser demouser
Les utilisateurs peuvent également plus tard encore, à tout point avec la commande usermod pour modifier.
Pour les paramètres de rien Courrier a besoin d'être changé. Cependant, vous avez besoin d'un changement au certificat pour IMAPS et POP3S:
rm -rf /etc/courier/*.pem
make-ssl-cert /usr/share/ssl-cert/ssleay.cnf /etc/courier/imapd.pem
make-ssl-cert /usr/share/ssl-cert/ssleay.cnf /etc/courier/pop3d.pem
Eventuellement, si l'authentification ne fonctionne pas plus tard, n'a pas encore été apporté la modification suivante:
chmod 755 /var/run/courier/authdaemon
Maintenant, nous vérifions si les services sont exécutés:
netstat -utal | egrep -e 'pop|imap'
La sortie devrait ressembler à ceci:
tcp6 0 0 [::]:imaps [::]:* LISTEN
tcp6 0 0 [::]:pop3s [::]:* LISTEN
tcp6 0 0 [::]:pop3 [::]:* LISTEN
tcp6 0 0 [::]:imap2 [::]:* LISTEN
Maintenant, nous vérifions le serveur IMAP, y compris une connexion interactive:
telnet localhost imap2
Trying 127.0.0.1...
Connected to localhost.localdomain.
Escape character is '^]'.
* OK [CAPABILITY IMAP4rev1 UIDPLUS CHILDREN NAMESPACE THREAD=ORDEREDSUBJECT THREAD=REFERENCES SORT QUOTA IDLE ACL ACL2=UNION STARTTLS] Courier-IMAP ready. Copyright 1998-2008 Double Precision, Inc. See COPYING for distribution information.
AB LOGIN "root" "CHANGE"
AB OK LOGIN Ok.
BC SELECT "Inbox"
* FLAGS ($MDNSent NonJunk $Forwarded $label1 $label2 \Draft \Answered \Flagged \Deleted \Seen \Recent)
* OK [PERMANENTFLAGS ($MDNSent NonJunk $Forwarded $label1 $label2 \* \Draft \Answered \Flagged \Deleted \Seen)] Limited
* 190 EXISTS
* 0 RECENT
* OK [UIDVALIDITY 1205133440] Ok
* OK [MYRIGHTS "acdilrsw"] ACL
BC OK [READ-WRITE] Ok
ZZZZ LOGOUT
* BYE Courier-IMAP server shutting down
ZZZZ OK LOGOUT completed
Connection closed by foreign host.
Maintenant, pour Exim4. Nous générons un certificat X.509 pour le chiffrement. Exim4 a son propre outil pour les passages de cette voisins dans les instructions.
bash /usr/share/doc/exim4-base/examples/exim-gencert
Ils sont générés certificat et la clé dans / etc/exim4.
Désormais, la configuration d'Exim4 pour TLS doit être adapté. Par conséquent, nous comprennent bijou. Documentation, tapez:
2.1.3. Using Exim Macros to control the configuration" and "2.2.2. Enabling TLS support for Exim as server" from /usr/share/doc/exim4-base/README.Debian.gz, you should create a file with name /etc/exim4/conf.d/main/000_localmacros (split configuration) or /etc/exim4/exim4.conf.localmacros (non-split configuration), and insert lines as following:
#####################################################
### main/03_exim4-config_tlsoptions
#####################################################
MAIN_TLS_ENABLE = true
tls_on_connect_ports = 465
Peut également être déterminé encore au même endroit si SMTP-AUTH doivent être cryptées ou non. Standard est également approuvé en clair.
auth_advertise_hosts = ${if eq{$tls_cipher}{}{}{*}}
Autorise uniquement les connexions cryptées SMTP-AUTH à utiliser.
Depuis, nous aimerions nous cryptée Exim4 SMTP sur le port 465 pour la norme fournit, nous avons également éditer le fichier / etc/default/exim4 comme suit:
# options for daemon listening on port 25
SMTPLISTENEROPTIONS='-oX 465:25 -oP /var/run/exim4/exim.pid'
Maintenant ont dans la section authenticators regarder le Exim4 PLAIN et LOGIN configuration comme suit. Régler ou remplacer est possible ici.
plain_courier_authdaemon:
driver = plaintext
public_name = PLAIN
server_condition = \
${extract {ADDRESS} \
{${readsocket{/var/run/courier/authdaemon/socket} \
{AUTH ${strlen:exim\nlogin\n$auth2\n$auth3\n}\nexim\nlogin\n$auth2\n$auth3\n} }} \
{yes} \
fail}
server_set_id = $auth2
.ifndef AUTH_SERVER_ALLOW_NOTLS_PASSWORDS
server_advertise_condition = ${if eq{$tls_cipher}{}{}{*}}
.endif
: Login_courier_authdaemon
driver = plaintext
public_name = LOG
server_prompts Nom d'utilisateur = ::: Mot de passe ::
server_condition = \
$ {Extrait {address} \
{{{$ Socket lire / var / run / courier / authdaemon / socket} \
{{$ AUTH strlen: exim \ nlogin \ n auth1 $ \ n $ auth2 \ n} \ Nexim \ nlogin \ n auth1 $ \ n $ auth2 \ n}}} \
{Oui} \
fail}
server_set_id = $ auth1
. Ifndef AUTH_SERVER_ALLOW_NOTLS_PASSWORDS
server_advertise_condition = $ {if eq {} {} {} {$ tls_cipher *}}
. Endif
Si nécessaire. Exim4 est de configurer encore. Cela peut, à tout moment en utilisant dpkg-reconfigure exim4-config peut être effectuée. Parmi les points clés:
- Split configuration en petits fichiers: Non
- Nom de système de messagerie: la même que dans le certificat et dans la configuration du système
- Méthode de la livraison pour le courrier local: le format Maildir dans le répertoire home
Maintenant, nous vérifions si le service SMTP fonctionne comme souhaité.
netstat -utal | egrep -e 'smtp|ssmtp'
La sortie devrait ressembler à ceci:
tcp 0 0 *:ssmtp *:* LISTEN
tcp 0 0 *:smtp *:* LISTEN
tcp6 0 0 [::]:ssmtp [::]:* LISTEN
tcp6 0 0 [::]:smtp [::]:* LISTEN
Maintenant, vous pouvez essayer une fois pour vous envoyer un e-mail et aussi l'extérieur à l'adresse suivante:
echo "test" | mail -s "test" root
echo "test" | mail -s "test" test@domain.de
Le dit Exim4 log / var/log/exim4/mainlog vous que tout fonctionne correctement.
Maintenant, nous vérifions si TLS est activé:
swaks -a -tls -q HELO -s localhost -au root -ap '<>'
Et si vous utilisez l'authentification TLS est aussi (s'il vous plaît entrez le mot de passe):
swaks -a -tls -q AUTH -s localhost -au root
Maintenant, toujours en utilisant Exim4 /etc/init.d/exim4 restart pour redémarrer et vérifier les journaux et la fonction.
Filed under Debian GNU / Linux | No Comments »



