Question :
Comment utiliser la requête d'acceptation LDAP pour valider les destinataires des messages entrants à l'aide de Microsoft Active Directory (LDAP) ?
Remarque : l'exemple suivant s'intègre à un déploiement Microsoft Active Directory standard, bien que les principes puissent être appliqués à de nombreux types d'implémentations LDAP.
Vous allez tout d'abord créer une entrée de serveur LDAP, à partir de laquelle vous devez spécifier votre serveur d'annuaire ainsi que la requête que l'appliance de sécurité de la messagerie exécutera. La requête est alors activée ou appliquée à votre écouteur entrant (public). Ces paramètres du serveur LDAP peuvent être partagés par différents écouteurs et d'autres parties de la configuration, telles que l'accès à la quarantaine de l'utilisateur final.
Pour faciliter la configuration des requêtes LDAP sur votre appareil IronPort, nous vous recommandons d'utiliser un navigateur LDAP, qui vous permet d'examiner votre schéma ainsi que tous les attributs sur lesquels vous pouvez effectuer des requêtes.
Pour Microsoft Windows, vous pouvez utiliser :
Pour Linux ou UNIX, vous pouvez utiliser la ldapsearch
commande.
Tout d'abord, vous devez définir le serveur LDAP à interroger. Dans cet exemple, le surnom de "PublicLDAP" est donné pour le serveur LDAP myldapserver.example.com. Les requêtes sont dirigées vers le port TCP 389 (par défaut).
REMARQUE : si votre implémentation Active Directory contient des sous-domaines, vous ne pourrez pas interroger les utilisateurs d'un sous-domaine à l'aide du DN de base du domaine racine. Cependant, lorsque vous utilisez Active Directory, vous pouvez également interroger LDAP sur le serveur de catalogue global (GC) sur le port TCP 3268. Le catalogue global contient des informations partielles pour *tous* les objets de la forêt Active Directory et fournit des références au sous-domaine en question lorsque des informations supplémentaires sont requises. Si vous ne parvenez pas à « trouver » des utilisateurs dans vos sous-domaines, laissez le DN de base à la racine et configurez IronPort pour qu'il utilise le port GC.
IUG:
- Créez un nouveau profil de serveur LDAP avec des valeurs situées précédemment sur votre serveur d'annuaire (Administration système > LDAP). Par exemple :
- Nom du profil de serveur : PublicLDAP
- Nom d'hôte : myldapserver.example.com
- Méthode d'authentification : Utiliser le mot de passe : Activé
- Nom d'utilisateur : cn=ESA,cn=Users,dc=exemple,dc=com
- Mot de passe : password
- Type de serveur : Active Directory
- Port : 3268
- BaseDN : dc=exemple, dc=com
Veillez à utiliser le bouton « Test Server(s) » pour vérifier vos paramètres avant de continuer. Une sortie réussie doit ressembler à :
Connecting to myldapserver.example.com at port 3268
Bound successfullywithDNCN=ESA,CN=Users,DC=example,DC=com
Result: succeeded
Utilisez le même écran pour définir la requête d'acceptation LDAP. L'exemple suivant compare l'adresse du destinataire aux attributs les plus courants, à savoir "mail" OU "proxyAddresses" :
- Nom : PublicLDAP.accept
- QueryString : (|(mail={a})(proxyAddresses=smtp:{a}))
Vous pouvez utiliser le bouton « Test Query » pour vérifier que votre requête de recherche renvoie des résultats pour un compte valide. Les résultats de la recherche de l'adresse du compte de service "esa.admin@example.com" doivent ressembler à ceci :
Query results for host:myldapserver.example.com
Query (mail=esa.admin@example.com) >to server PublicLDAP (myldapserver.example.com:3268)
Query (mail=esa.admin@example.com) lookup success, (myldapserver.example.com:3268) returned 1 results
Success: Action: Pass
- Appliquez cette nouvelle requête d'acceptation à l'écouteur entrant (Réseau > Écouteurs). Développez les options Requêtes LDAP > Accepter et choisissez votre requête PublicLDAP.accept.
- Enfin, validez les modifications pour activer ces paramètres.
CLI :
- Tout d'abord, vous utilisez la commande ldapconfig pour définir un serveur LDAP auquel la solution matérielle-logicielle doit se lier, et des requêtes pour l'acceptation du destinataire (sous-commande ldapaccept), le routage (sous-commande ldaprouting) et l'usurpation (sous-commande masquerade) sont configurées.
mail3.example.com> ldapconfig
No LDAP server configurations.
Choose the operation you want to perform:
- NEW - Create a new server configuration.
[]> new
Please create a name for this server configuration (Ex: "PublicLDAP"):
[]> PublicLDAP
Please enter the hostname:
[]> myldapserver.example.com
Use SSL to connect to the LDAP server? [N]> n
Please enter the port number:
[389]> 389
Please enter the base:
[dc=example,dc= com]>dc=example,dc=com
Select the authentication method to use for this server configuration:
1. Anonymous
2. Password based
[1]> 2
Please enter the bind username:
[cn=Anonymous]>cn=ESA,cn=Users,dc=example,dc=com
Please enter the bind password:
[]> password
Name: PublicLDAP
Hostname: myldapserver.example.com Port 389
Authentication Type: password
Base:dc=example,dc=com
- Ensuite, vous devez définir la requête à exécuter sur le serveur LDAP que vous venez de configurer.
Choose the operation you want to perform:
- SERVER - Change the server for the query.
- LDAPACCEPT - Configure whether a recipient address should be accepted or bounced/dropped.
- LDAPROUTING - Configure message routing. - MASQUERADE - Configure domain masquerading.
- LDAPGROUP - Configure whether a sender or recipient is in a specified group.
- SMTPAUTH - Configure SMTP authentication.
[]> ldapaccept
Please create a name for this query:
[PublicLDAP.ldapaccept]> PublicLDAP.ldapaccept
Enter the LDAP query string:
[(mailLocalAddress= {a})]>(|(mail={a})(proxyAddresses=smtp:{a}))
Please enter the cache TTL in seconds:
[900]>
Please enter the maximum number of cache entries to retain:
[10000]>
Do you want to test this query? [Y]> n
Name: PublicLDAP
Hostname: myldapserver.example.com Port 389
Authentication Type: password
Base:dc=example,dc=com
LDAPACCEPT: PublicLDAP.ldapaccept
- Une fois la requête LDAP configurée, vous devez appliquer la stratégie LDAPaccept à votre écouteur entrant.
example.com> listenerconfig
Currently configured listeners:
1. Inboundmail (on PublicNet, 192.168.2.1) SMTP TCP Port 25 Public
2. Outboundmail (on PrivateNet, 192.168.1.1) SMTP TCP Port 25 Private
Choose the operation you want to perform:
- NEW - Create a new listener.
- EDIT - Modify a listener.
- DELETE - Remove a listener.
- SETUP - Change global settings.
[]> edit
Enter the name or number of the listener you wish to edit.
[]> 1
Name: InboundMail
Type: Public
Interface: PublicNet (192.168.2.1/24) TCP Port 25
Protocol: SMTP
Default Domain:
Max Concurrency: 1000 (TCP Queue: 50)
Domain Map: Disabled
TLS: No
SMTP Authentication: Disabled
Bounce Profile: Default
Use SenderBase For Reputation Filters and IP Profiling: Yes
Footer: None
LDAP: Off
Choose the operation you want to perform:
- NAME - Change the name of the listener.
- INTERFACE - Change the interface.
- LIMITS - Change the injection limits.
- SETUP - Configure general options.
- HOSTACCESS - Modify the Host Access Table.
- RCPTACCESS >- Modify the Recipient Access Table.
- BOUNCECONFIG - Choose the bounce profile to use for messages injected on this listener.
- MASQUERADE - Configure the Domain Masquerading Table.
- DOMAINMAP - Configure domain mappings.
- LDAPACCEPT - Configure an LDAP query to determine whether a recipient address should be
accepted or bounced/dropped.
- LDAPROUTING - Configure an LDAP query to reroute messages.
[]> ldapaccept Available Recipient Acceptance Queries
1. None
2. PublicLDAP.ldapaccept
[1]> 2
Should the recipient acceptance query drop recipients or bounce them?
NOTE: Directory Harvest Attack Prevention may cause recipients to be
dropped regardless of this setting.
1. bounce
2. drop
[2]> 2
Name: InboundMail
Type: Public
Interface: PublicNet (192.168.2.1/24) TCP Port 25
Protocol: SMTP
Default Domain:
Max Concurrency: 1000 (TCP Queue: 50)
Domain Map: Disabled
TLS: No
SMTP Authentication: Disabled
Bounce Profile: Default
Use SenderBase For Reputation Filters and IP Profiling: Yes
Footer: None
LDAP: ldapaccept (PublicLDAP.ldapaccept)
- Pour activer les modifications apportées au processus d'écoute, validez vos modifications.