PSR SE2a4 2022/2023 G3

De Wiki d'activités IMA
Révision datée du 13 juin 2023 à 21:56 par Msergean (discussion | contributions) (Séance 3)

Nous allons dans ce wiki vous expliquer le déroulement de notre projet de mise en place d'une messagerie permettant d'envoyer et recevoir des mails

Pour cela, nous avons choisi de décrire la manière dont nous avons évolué à chaque séance.

[Disclaimer]

Dernière mise à jour du wiki : 13/06/2023 refonte complet du wiki => ajout des notes prises en dehors. La mise à disposition de l'archive des notes n'a pas fonctionné donc finition du wiki avec les notes en plus

Mémo

- Adresse IP de la VM : 193.48.57.165

- Connexion au serveur capbreton : ssh root@capbreton.plil.info

- Connexion à la VM : ssh root@193.48.57.165

- Dépôt des fichiers sur la VM : scp -r /home/pifou/Desktop/(/NOM/)/PSR-ReX-v6/ root@193.48.57.165:/

- Vérification du port 25 (savoir s'il est occupé) : ss -tpln

- Commande pour tuer un process : service 'nom_service' stop

- Compiler le projet : make clean /puis/ make debug


- Test mail avec nc :

HELO regretable.site

MAIL FROM:<root@regretable.site>

RCPT TO:<ajouter une adresse mail>

DATA

Subject: 'objet'

[ajouter du texte] .

quit

Séance 1

Cette séance n'a pas été fructueuse en termes de code pur et dur, mais elle nous as permis de bien comprendre le sujet et vers ou nous allions. Nous avons pu effectuer ceci :

- Lecture du sujet

- Découverte et Décryptage du code notamment les fichiers in.c, out.c

- Compilation du code et envoi de premiers mails tests

- Test de la VM, non concluant, à approfondir à la prochaine séance.

Séance 2

La séance a démarré par une explication des points les plus complexes du code.

La prise en main de VM fut plus concluante, nous avons pu nous y connecter via la commande ssh @root193.48.57.165

Tâches à faire après la période entreprise : focus sur SMTPin (analyser mx.c et in.c)

Travail de debug durant la période entreprise 1 :

1) compréhension du in.c : *Contient les fonctions permettant de récupérer les MX. *On envoie un mail au MX ayant la priorité la plus basse. Si échec, on renouvelle l'envoi par un autre MX.

Problème rencontré : Quand un envoi est un succès, continue d'envoyer le mail aux autres MX. Il faut donc pouvoir arrêter le code quand l'envoi est OK.

2) Debug in.c => ajout de la ligne else{break;}

Séance 3

Durant la scéance, nous avons testé le lancement du serveur sur la VM.

Le problème que nous avons rencontré est que SMTPin et SMTPout se lancent sur le même port, à savoir le 25 (on ne peut pas utiliser les deux sur le même port). Il faut donc modifier le programme pour prendre en compte une nouvelle interface pour que le SMPTin et out utilisent deux interfaces différentes

Modificiation des codes codes args.c et args.h du SMTPout pour ajouter une interface

Bilan : Bug au moment du lancement du SMTPout, ne prend pas en compte l'argument -i 25

A faire : corriger le bug

Séance 4

Continué à établir une liaison entre SMTP in et out -> Correction de programmes dans args.c args.h

PB rencontré : Port 25 occupé soit par SMTP in soit par SMTP out donc out.c du SMTPout à corriger

SMTP in à voir plus en profondeur à la prochaine séance pour l'envoi de mails.

Séance 8

Nous arrivons enfin à envoyer des mails !

En recevoir n'est pas encore résolu, mais le SMTP fonctionne donc enfin en partie, ce qui représente déjà une avancée.

Pour cela, nous avons modifié le code de la manière suivante :

RAJOUTER CODE SMTPIN QUAND ACCES A LA VM