PSR SE2a4 2022/2023 G2 : Différence entre versions
(→Séance du 10/02/2023) |
(→Séance du 10/02/2023) |
||
Ligne 1 : | Ligne 1 : | ||
− | == | + | == A faire (concernant les serveurs SMTP): == |
− | |||
− | |||
-un système doit être réalisé permettant au serveur SMTP sortant de mettre en file d’attente les messages non remis à destination pour cause d’erreur transitoire du serveur SMTP cible; | -un système doit être réalisé permettant au serveur SMTP sortant de mettre en file d’attente les messages non remis à destination pour cause d’erreur transitoire du serveur SMTP cible; | ||
-les communications peuvent ne pas être chiffrées, les communications non chiffrés sont reçues sur le port 25 ; | -les communications peuvent ne pas être chiffrées, les communications non chiffrés sont reçues sur le port 25 ; | ||
Ligne 8 : | Ligne 6 : | ||
-les serveurs SMTP doivent gérer les enregistrements MX permettant d’associer un nom de domaine à un serveur de messagerie, le recours aux enregistrements AAAA et A est à utiliser en cas d’absence de MX ; | -les serveurs SMTP doivent gérer les enregistrements MX permettant d’associer un nom de domaine à un serveur de messagerie, le recours aux enregistrements AAAA et A est à utiliser en cas d’absence de MX ; | ||
− | + | == A faire (concernant le stockage des courriels): == | |
- ne doivent être stockés que les courriels à destination d’un utilisateur local ; | - ne doivent être stockés que les courriels à destination d’un utilisateur local ; | ||
-le processus de remise stocke le message dans le sous-répertoire Maildir/tmp puis le déplace dans le sous-répertoire Maildir/new, déplacement doit être fait par la primitive rename ; | -le processus de remise stocke le message dans le sous-répertoire Maildir/tmp puis le déplace dans le sous-répertoire Maildir/new, déplacement doit être fait par la primitive rename ; | ||
Ligne 24 : | Ligne 22 : | ||
-dans MTA int ou MTA ext : "./SMTPin -p25" et "./SMTPext -p25" | -dans MTA int ou MTA ext : "./SMTPin -p25" et "./SMTPext -p25" | ||
-dans la racine du prog : "nc localhost 25" | -dans la racine du prog : "nc localhost 25" | ||
+ | |||
+ | == Modifications dans le programme: == | ||
+ | Prog "in.c" -> fonction "gestionCourriel" | ||
+ | Une fois qu'on a trouvé les MX, on | ||
+ | Lorsqu'on initialise la connexion au serveur, on ne teste pas si la socket de dialogue s'est bien créée". |
Version du 10 février 2023 à 18:15
A faire (concernant les serveurs SMTP):
-un système doit être réalisé permettant au serveur SMTP sortant de mettre en file d’attente les messages non remis à destination pour cause d’erreur transitoire du serveur SMTP cible; -les communications peuvent ne pas être chiffrées, les communications non chiffrés sont reçues sur le port 25 ; -les communications peuvent être chiffrées par TLS, les communication chiffrées peuvent être négociées directement sur le port 465 ; -il doit être possible de basculer sur une communication chiffrée à partir du port 25 en utilisant les commandes EHLO et STARTTLS ; -les serveurs SMTP doivent gérer les enregistrements MX permettant d’associer un nom de domaine à un serveur de messagerie, le recours aux enregistrements AAAA et A est à utiliser en cas d’absence de MX ;
A faire (concernant le stockage des courriels):
- ne doivent être stockés que les courriels à destination d’un utilisateur local ; -le processus de remise stocke le message dans le sous-répertoire Maildir/tmp puis le déplace dans le sous-répertoire Maildir/new, déplacement doit être fait par la primitive rename ; -pour assurer un nom unique aux fichiers de stockage, utilisez la date en seconde (fonction time), le PID et un compteur commun à tous les flux d’exécution (utilisation de sémaphores indispensable).
Résumé : -Se connecter au serveur : "ssh root@capbreton.plil.info" -Se connecter à la VM : "ssh root@193.48.57.164"
Exécuter le programme: -ouvrir le terminal en mode root : "su -" -vérifier si le port 25 est déjà occupé : "ss -tpln" -??? : "service exim4 stop" -dans la racine du prog : "make" (voir makefile pour make et makefile???) -dans MTA int ou MTA ext : "./SMTPin -p25" et "./SMTPext -p25" -dans la racine du prog : "nc localhost 25"
Modifications dans le programme:
Prog "in.c" -> fonction "gestionCourriel" Une fois qu'on a trouvé les MX, on Lorsqu'on initialise la connexion au serveur, on ne teste pas si la socket de dialogue s'est bien créée".