AS/400, serveur POP3 et SMTP Il s'agit ici, d'intégrer des standards de messagerie du monde TCP/IP: 1/ envoi de messages (SMTP) 2/ stockage des messages (notion de boite aux lettres) gestion des connexions et restitution des messages (POP3) 3/ support des documents attachés (MIME) Avec en plus : - le gestion de ces services sur les protocoles IP, IPX et SNA - la duplication du répertoire système en tant que carnet d'adresses - une passerelle d'assurée avec SNADS. |
Quelques précisions : SMTP, est le protocole d'envoi de message dans le monde INTERNET. L'AS400 est client ET serveur SMTP il peut envoyer des messages SMTP il peut recevoir des messages SMTP l'annuaire SMTP est couplé avec le répertoire SNADS avec la commande CVTNAMSMTP le répertorie SNADS possède trois zones supplémentaires et le répertoire SMTP est fusionné avec le répertoire système, il peut ainsi être répliqué vers d'autres sites. l'AS/400 peut servir de passerelle entre un réseau privé SNADS et une messagerie SMTP. |
POP3 est le standard de STOCKAGE des messages SMTP en mode déconnecté. les messages sont envoyés au serveur via SMTP. il sont stockés par le serveur dans une boite aux lettres dédiée à l'utilisateur (sur AS/400 QTCPTMM/MAIL/nom-du-profil) le Client POP3 se connecte, s'identifie, (ici avec le profil et le mot de passe AS/400) demande à voir le contenu de sa boite aux lettres, et éventuellement demande à redescendre certaines informations sur son disque local. L'AS/400 est serveur POP3 depuis les versions 3.20/3.70. il N'EST PAS CLIENT POP3 (il ne sait pas interroger un serveur et aller chercher des messages) |
ANYMAIL : il s'agit d'une couche basée sur des APIs permettant à des tiers d'écrire un système de messagerie s'appuyant sur ces APIs. POP3 et MIME s'appuient sur ANYMAIL (ou Mail server Framework). MIME : Multipurpose Internet Mail Extension. standard du monde Internet permettant d'indentifier des documents quant à leur contenu fonction de leur extension. (.doc, .txt, ..) C'est grace à MIME que l'on peut attacher des documents à un message tout en identifiant s'il s'agit d'un document texte, d'une image ou d'un format binaire (tel quel). Le serveur doit être capable d'indiquer au client quel type MIME de fichier est attaché au message Le serveur MIME permet ainsi l'échange de documents attachés entre officevision/SNADS et Internet (mais UNE SEULE attache). |
SNADS : les utilisateurs sont enregistrés dans le répertoire système avec les paramètres suivants : Modification d'un poste du répertoire ID util et adresse . . : AF400CM AF400CM Indiquez vos modifications, puis appuyez sur ENTREE. Niveau de service de messagerie . . . . . 1 <-- 1=Index utilisateur 2=Messagerie système 3=Autre service de .../... messagerie Adresse de prédilection 1 <-- 1=ID util et adresse 2=Nom d'O/R 3=Nom SMTP 4=Autre adresse .../... |
SMTP : les utilisateurs sont enregistrés dans le répertoire système avec les paramètres SMTP suivants : Modification d'un poste du répertoire ID util et adresse . . : AF400CM AF400CM Indiquez vos modifications, puis appuyez sur ENTREE. Niveau de service de messagerie . . . . . 2 <-- 1=Index utilisateur 2=Messagerie système 3=Autre service de .../... messagerie Adresse de prédilection 3 <-- 1=ID util et adresse 2=Nom d'O/R 3=Nom SMTP 4=Autre adresse Type d'adresse MIME <-- F4=Liste ... .../... |
Si votre e-mail est identique à votre USERID SNADS et si votre profil fait moins de 9 caractères, vous pouvez en rester là. >Prenons l'exemple d'un utilisateur POPUSER (7 c) sur le système S44R1234, machine dont le domaine[CFGTCP option 12] est as400.com son inscription SNADS est POPUSER à S44R1234 - Pour lui envoyer un message, saisissez popuser@s44r1234.as400.com - Il se connecte sous l'identifiant POPUSER (avec son mot de passe AS/400) et demande ses messages: tout va bien. >deuxième exemple : utilisateur EMAILUSER (9 c) sur le même système. son inscription SNADS est MAILUSER à S44R1234 (USERID sur 8c maxi) - Pour lui envoyer un message, saisissez mailuser@s44r1234.as400.com - Il se connecte sous l'identifiant EMAILUSER avec son mot de passe AS/400 (la différence MAILUSER/EMAILSUER peut être perturbante) |
Dans ce cas il peut être intéréssant d'attribuer comme email à votre utilisateur emailuser@s44r1234.as400.com Pour attribuer un nom SMTP, utilisez WRKDIRE puis, F19 = permet de gérér l'adresse SMTP : SMTPAUSRID SMTP emailuser SMTPDMN SMTP S44R1234.AS400.COM l'adresse de messagerie pour cet utilisateur est alors cohérente. |
Il est toujours possible d'attribuer un nom SMTP à un utilisateur (même SNADS),par F19. pour un utilisateur SNADS son adresse SMTP sera USERID?SYSTEM@as400 si vous n'indiquez pas de nom SMTP. Attribuer un nom SMTP est obligatoire si vous devez envoyer un message à un utilisateur SMTP depuis SNADS (Officevision ou commande SNDDST) Dans tous les cas cela semble très conseillé si vous utilisez la passerelle de messagerie. |
Vous pouvez indiquer à la place une route pour l'adresse (F19 puis Rollup) SMTPRTE SMTP exemple : ...................... user1@host1 : il s'agit d'une route directe : préférer alors l' : (user1 sur système host1) : alias et le domaine: :....................: host2:user1@host1 : il s'agit d'une route indirecte (user1 sur système host1 que l'on peut joindre en passant par host2) il est TOUJOURS déconseillé de figer une route. |
Vous pouvez aussi définir un nom de système [CHGSMTPA / MAILROUTER().] qu'il faut utiliser quand on n'arrive pas à résoudre une adresse. Pour résoudre une adrese le système utilise la DNS du domaine et cherche les enregistrements MX qui indentifient un serveur de messagerie à l'intérieur d'un domaine. si vous souhaitez avoir comme adresse user@societe.com et non user@as400.societe.com indiquez dans l'enregistrement MX de la DNS que le serveur de messagerie pour le domaine societe.com est as400.societe.com Attention le nom as400.societe.com doit être le premier nom de la table des hosts. (cfgtcp option 10) et il faut revoir vos utilisateurs (WRKDIRE) pour indiquer comme domaine societe.com (et non as400.societe.com) |
Vous modifiez les paramètres SMTP par CHGSMTPA AUTOSTART *YES | *NO AUTOADD *YES | *NO indique si l'on souhaite ajouter dans le répertoire système de manière automatique un ID pour les utilisateurs recevant des messages et étant inconnus du système (QSMxxxxs de QSMRMTAD) Vous modifiez les paramètres POP par CHGPOPA AUTOSTART *YES | *NO NBRSRV nombre de jobs actifs (3) Vous démarrez les serveurs par: STRTCPSVR SERVER(*POP | *SMTP) SNADS doit être démarré (STRSBD SNADS), MAILSERVEUR FRAMEWORK aussi(STRMSF) |
Pour utiliser ces services, vous devez choisir une méthode : ----------------------------------------------------------- A/ indépendement de la version de | B/ indépendement du protocole Windows | | produit micro compatible MAPI produit micro compatible POP3 | (EXCHANGE, LOTUS Mail,...) ! (EUDORA, ...) | ! ! | ............................. . | : norme MAPI (Microsoft) : ! | :...........................: ! | ............................. ........................ | : Windows 95/NT : : : | :...........................: : couche TCP/IP : | ! :......................: | ............................. ! | : : ! | : couche réseau (IP|IPX|SNA): ! | :...........................: serveur POP-AS/400 | ! | ! | serveur POP-AS/400 |
Du coté client (PC) : A/ La solution la plus souple mais la moins complète consiste à utiliser directement SMTP et POP via TCP/IP, sans service supplémentaire : - vous ne pouvez vous connecter qu'en IP (pas de contrôleur 5x94) - vous ne bénéficiez pas de la duplication du répertoire système sur votre disque dur. Mais, cela fonctionne avec les PC sous Windows 3.1 - il faut être connecté en IP. - Vous n'avez pas besoin d'installer Client Access Vous pouvez utiliser EUDORA, ou tout produit micro, en indiquant : - l'adresse IP de votre AS/400 en tant que serveur POP. - votre profil en tant qu' "account" POP [profil@système.domaine] |
B/ Si vous êtes en SNA (ou IPX) il vous faut utiliser Client Access 95/NT. 1/ cliquez sur l'icone Courrier dans le panneau de configuration. 2/ Choisissez le service "IBM AS/400" qui utilisera votre connexion AS/400 active.(routeur Netsoft, IP ou IPX). 3/ prenez ensuite l'onglet "adressage", utilisez "Ajouter" et sélectez "carnet d'adresse IBM AS/400" qui enverra sur votre PC le répertoire de distribution (géré par ADDDIRE). 4/ Sur l'AS/400, renseignez la commande CHGPOPA avec HOSTSVRCNN(*SNA *IP *IPX) ADRBOOK(*YES) arrêtez et relancez le serveur POP par ENDTCPSVR *POP STRTCPSVR *POP. |
Vous pouvez utiliser Lotus Mail , livré avec Client Access. Mais vous pouvez aussi utiliser tout produit compatible avec les MAPI (Messaging API) de Windows 95/NT. Les MAPI ont deux intérets : - les clients MAPI : tout simplement tous les programmes proposant l'option "envoyer ... " et qui proposent d'envoyer le document en cours en tant que pièce jointe d'un message. - les serveurs MAPI: les systèmes capables de répondre à une demande (ou services MAPI) d'envoi de message. le service messagerie internet est automatiquement configuré sous windows 95/NT. Client Access implémente un nouveau service qui peut être utilisé conjointement avec Internet. |
Le lien de tout cela est assuré avec SNADS : + Depuis un terminal passif : - SNDDST TYPE(*MSG) TOUSRID((USER SYSTEM)) + DSTD('entête du message') MSG('corps du message') le système fait le lien avec le nom SMTP (renseigné via F19) - l'utilisateur se connecte avec son logiciel micro pour aller chercher ses messages. + Depuis un micro vers un terminal passif : - Vous envoyez un message à USER?SYSTEMàS44R1234.AS400.COM <-ID SNADS> <système><-domaine> ou tout simplement à USER@S44R1234.AS400.COM si la partie système de l'identifiant SNADS et le nom de système sont identiques (ce n'est pas le cas de QSECOFR QSECOFR, etc ...) ou si vous avez renseigné le nom SMTP par F19. |
- pour recevoir QRYDST dans un OUTFILE (pour connaitre la clé) puis RCVDST avec la(les) clé(s) lue(s). La commande RCVDST peut être réalisée : - dans un Document (il faut renseigner DOC et FLR) - dans un OUTFILE (il faut indiquer OUTDTATYP(*DOC)) Attention les fichiers attachés sont intégrés au texte principal si vous n'utilisez pas OFFICEVision. Il est donc conseillé de se limiter à de l'envoi de messages de type texte entre utilisateurs SMTP et SNADS. Le paramètre KEEP(*NO) indique qu'il faut supprimer le courrrier lors de sa reception dans le fichier de travail.KEEP(*YES) conserve le courrier Et enfin vous pouvez gérer du courrier par procuration, il faut que l'utilisateur vous l'accorde par GRTUSRPMN. |
Apports V4R10 : on peut maintenant envoyer un message à un utilisateur internet non enregistré dans le répertoire système. on peut aussi envoyer des messages longs [TYPE(*LMSG)] il faut la ptf SF45328 en V3R20 SF45415 en V3R70 SF45226 en V4R10 la commande SNDDST devient : SNDDST TYPE(*LMSG) TOINTNET(user@societe.com) LOGMSG('votre message') dans votre message : "/N" sera interprété comme un retour chariot "/P" comme un changement de paragraphe tout caractère héxa spécifique au format FFT sera reconnu. |
vous devez créer un utilisateur fictif dans le répertoire (le redbook propose INTERNET SMTPRTE) Ajout d'un poste au répertoire Indiquez vos choix, puis appuyez sur ENTREE. Niveau de service de messagerie . . . . . 1 1=Index utilisateur Adresse de prédilection 9 1=ID util et adresse 2=Nom d'O/R 3=Nom SMTP 9=Autre adresse Type d'adresse . . . ATCONTXT F4 pour liste Pour l'option 9=Autre adresse: Nom de zone . . . . NETUSRID *IBM F4 pour liste |
Puis passer la commande CHGDSTA SMTPRTE(INTERNET SMTPRTE) Pour OFFICE : il faut indiquer Y dans le paramètre ALWINTNETA via les commandes ADDOFCENR ou CHGOFCENR, afin que l'utilisateur puisse utiliser une adresse internet non répertoriée dans le répertoire système. lors de l'envoi de note la liste de destinataires s'affiche : ######################################################################### # # # ----------------------------adresses------------------------------- # # USER SYSTEM # # user1@societe.com # # user2@societe.com # # QSECOFR QSECOFR # # # # # ######################################################################### |
les versions 3.20 et 3.70 proposent un substitut qui consiste à placer l'e-mail dans le corps du message. il faut appliquer des PTFs : SF33896 en V3R70 SF33943 en V3R20 puis définir un pgm d'exit par ADDEXITPGM EXITPNT(QIBM_QZMSF_LST_EXP) FORMAT(MSFF0100) PGMNBR(2000) PGM(QSYS/QZMFCTXT) PGMDTA(*JOB 12 'SPCL010001CX') vous pouvez vérifier par WRKREGINF |
et enfin définir un utilisateur fictif par : ADDDIRE USRID(INTERNET GATEWAY) USRD('passerelle internet') SYSNAME(INTERNET) MSFSRVLVL(*USRIDX) PREFADR(NETUSRID *IBM ATCONTXT) il faut envoyer les messages à INTERNET GATEWAY et placer dans le message /internet /to user@societe.com <-- la ligne /to peut être répetée. /end votre message si l'envoi n'aboutit pas, il sera noté en erreur (*ERR) pour l'adresse "*ATCONTXT *UNKNOW" dans le DSPDSTLOG. |