Mémoire de soutenance
Titre RNCP Niveau II Administrateur Systèmes,
Réseaux et Bases de Données
Nom Prénom Gherissi Vianney
Nom(s) Prénom(s) du ou des tuteurs Denis Daullé
Acronyme de la certification visée ASRBD
Niveau visé 2
Date de la soutenance
Lieu de la soutenance
Mémoire de soutenance
2
Mémoire de soutenance
3
Remerciements
Tout d’abord, je tiens à adresser mes sincères remerciements à mon tuteur
Denis Daullé pour m’avoir accompagné, soutenu, conseillé pendant toute la durée de mon
stage de 12 semaines, et pour avoir contribué à mon enrichissement professionnel.
Je remercie grandement le patron de la société Skapánê, José Corral Gallego de
m’avoir offert l’opportunité de travailler au sein de sa société, et pour ses précieux conseils.
Je désire également remercier Rémy Ponthieu, administrateur Systèmes et Réseaux,
qui m’a beaucoup aidé lors du stage, et ce particulièrement lorsque je rencontrais des
difficultés.
Par ailleurs, je n’oublierai pas l’esprit de convivialité de cette entreprise, ainsi que
l’aide apportée par tous mes collègues de travail, toujours disponibles et sympathiques.
Enfin, je tiens à remercier l’équipe pédagogique de l’école EPSI de Lille, le corps
enseignants et les intervenants qui m’ont apporté leur soutien pour cette formation, sans
oublier Eddie Alamasset, responsable pédagogique, qui m’a apporté toute l’aide théorique
nécessaire à la réussite de ma scolarité.
Mémoire de soutenance
4
Sommaire
Introduction ..…………………………………………………………………………………………………………………………………… 5
Présentation des entreprises .……………….…………………………………………………………………………………………. 7
Authentification forte ………………………………………………..……………………………………………………………….…. 13
Changement de locaux …………………………………………………………………………………………………………………… 37
Finalisation de l’authentification forte …………………………………………………………………………………………… 39
Labo GSB ………………………………………………………………………………………………………………………………………… 52
Demande utilisateur ………………………………………………………………………………………………………………………. 56
Contrôle des procédures de paiements ………………………………………………………………………………………….. 58
Vérification des équipements ………………………………………………………………………………………………………… 59
Conclusion ……………………………………………………………………………………………………………………………………… 61
Glossaire ………………………………………………………………………………………………………………………………………… 62
Annexe 1 ………………………………………………………………………………………………………………………………………… 64
Annexe 2 ………………………………………………………………………………………………………………………………………… 67
CV …………………………………………………………………………………………………………………………………………………… 68
Mémoire de soutenance
5
Introduction
Présentation générale du contexte et des missions
Skapánê est une société située à Euratechnologies, qui évolue dans le conseil
informatique dans le Big Data.
Mon tuteur, Directeur des Opérations, s’occupe des différentes missions concernant
l’architecture réseau de la société : ajout d’un serveur, changement de réseau, commande
de nouveaux matériaux et logiciels tels que barrettes de RAM ou solutions de sécurité.
Skapánê étant une société avec des développeurs ayant des dates de livraisons de
projets à respecter, certains employés ont la possibilité de se connecter à distance grâce à
une connexion VPN avec une certification, via le logiciel OpenVPN. En effet, la société
possède une adresse publique qu’elle loue à Eurafibre. Cette solution de connexion à
distance, même si elle a fait ses preuves, présente néanmoins des faiblesses :
- Une personne dérobant un PC où le client VPN est installé aura accès au réseau
d’entreprise.
- Les certificats et le mot de passe sont toujours identiques.
A cause de faiblesses présentes sur la connexion VPN, mon tuteur a pensé à une
solution plus sécurisée. La mission pour laquelle j’ai été embauché est de mettre en place
une solution d’authentification forte à double temps pour pallier les inconvénients de la
solution actuelle.
Mémoire de soutenance
6
Annonce du plan
Dans ce mémoire, je vais présenter les entreprises pour lesquelles j’ai travaillé.
Ensuite, je détaillerai les différentes missions effectuées au cours de mes expériences
professionnelles : la mise en place de la solution d’authentification forte à double temps, le
support de niveau 1, la vérification des équipements réseau et les autres tâches.
Je terminerai par une conclusion recueillant les connaissances acquises et la
finalisation de mes missions.
Enfin, il y aura un glossaire répertoriant les termes techniques et leur définition, ainsi
que des annexes contenant des fichiers utiles et des liens pour accéder à des procédure que
j’ai rédigé.
Mémoire de soutenance
7
1 Présentation des entreprises
Skapánê
Skapánê, qui signifie à la fois « chercher » et « trouver » dans la langue grecque, a
été créé en mars 2015 par Morgane Winterholer et José Corral Gallego, passionnés par les
nouvelles technologies. La société héberge une grande partie de ses serveurs dans deux
sites se situant à Anzin et Sainghin-en-Mélantois. Ces sites sont des data centers
appartenant à l’entreprise CIV, spécialisée dans l’hébergement de serveurs.
Dès sa création, Skapánê a rejoint l’espace accélérateur d’Euratechnologies,
s’intégrant ainsi dans un tissu d’innovation et de start-up.
Euratechnologies est un pôle d’excellence dédié aux nouvelles technologies créé
en 2009. Ce complexe n’abrite pas uniquement des start-ups prometteuses, mais aussi des
grands noms du domaine du numérique, tels que IBM, Capgemini, Microsoft ou encore
Cisco. Cet écosystème assiste et soutient leur développement grâce à une assistance et une
méthodologie unique dans l’accompagnement des entreprises.
Il a été positionné dans le top 10 des accélérateurs les plus actifs en Europe, selon
l’étude European Accelerator Report 2015 menée par Gust et Fundacity. En France, Eu-
ratechnologies se place numéro 1.
En quelques chiffres, Euratechnologies c’est :
- 3 600 salariés
- 65 000 m²
- 160 entreprises
Mémoire de soutenance
8
Branche d’activité :
La société Skapánê est spécialisée dans les traitements Big Data et Machine
Learning en temps réel.
Elle a la certitude que le Big Data et le Machine Learning représente une révolution
aussi importante que l’arrivée d’Internet. Cette révolution donne l’opportunité aux entreprises
de passer intégralement dans « l’ère du numérique à valeur ajoutée », grâce à la création, le
développement et à la mise en œuvre de solutions d’infrastructures de traitements
massivement distribuées, telles que mapR de Google, Hadoop, etc, …
Leurs offres :
- Maintenance prédictive :
La maintenance prédictive : c’est une forme de maintenance qui a pour but de
réduire le risque d’incidents sur des critères préétablis. Pour arriver à ce résultat, les objectifs
sont d’anticiper les incidents potentiels, d’ajouter des capacités de prévision d’incidents
avant que ceux-ci se manifestent sur les environnements industriels qui sont opérationnels.
Les industriels ont désormais la possibilité de prévoir et d’éviter les incidents
apparaissant, évitant la mise en arrêt des équipements qui cause des coûts
supplémentaires.
Les résultats sont une maximisation de la prédiction des modèles utilisés en
production. Les incidents sur un équipement sur une période de 10 ans de vie peuvent être
détectés avec une précision de 95%.
Mémoire de soutenance
9
- La lutte contre la fraude :
La lutte contre la fraude : Les sites d’e-commerce qui utilisent des moyens
d’authentification forte du paiement peuvent subir des pertes de paniers, car l’expérience
utilisateur n’est pas la plus simple.
C’est pourquoi un moteur de lutte contre la fraude active permet de choisir
l’expérience utilisateur en fonction de la caractérisation de fraude potentielle ou pas.
L’intégration de la solution Skapánê dans le site du e-marchand permet d’augmenter les
ventes en diminuant le nombre de paniers perdus, et permet l’augmentation de la détection
de transactions potentiellement frauduleuses.
- La constitution automatique :
La constitution automatique : la société Skapánê utilise un réseau de
neurones capable de construire un modèle sémantique sur la base d’un corpus de recettes
de cuisine.
Mémoire de soutenance
10
Cet algorithme mis en œuvre est ensuite capable d’associer des mots ayant le
même sens, même sans aucune racine lexicale commune. L’algorithme est donc capable
d’apprendre de lui-même, son apprentissage n’a donc pas besoin d’être encadré, ne
nécessitant aucune intervention humaine.
- La classification automatique de messages :
La classification automatique de messages : cette offre permet une augmentation
des performances des contacts clients à une catégorisation automatique et pertinente de
tous les messages arrivant. La gestion des contacts pourra être mesurée, comprise et
optimisée grâce à des outils statistiques, des indicateurs de suivi, et des capacités
d’exploration dynamique des données de contact.
Des services d’aide à la décision (préconisation de réponse et qualification de
contact) sont également inclus dans cette offre.
Mémoire de soutenance
11
Atos Worldline
Créée en 2004, Atos Worldline, filiale d’Atos Origin, possède plusieurs sites en
France, mais aussi l’étranger. Avec un chiffre d’affaires de 1,6 milliards d’euros en 2016,
Atos Worldline a su s’élever au rang de géant dans la sécurité informatique.
Cette entreprise est leader à l’étranger, et notamment en Belgique, pour les terminaux
de paiements, les paiements électroniques et en ligne grâce à l’offre end-to-end. Elle gère
aussi les services de paiement pour les marchés nationaux et internationaux. De plus, elle
offre une large gamme de services incluant la maintenance des terminaux et le service Card
Stop.
J’ai eu l’occasion de faire 2 stages dans cette entreprise :
Le premier était dans le service nommé CSS (Cutomers Service Support) qui a une
équipe informatique spécialisée dans e-support informatique. Ce service a pour métier de
contrôler les données des différents clients de Worldline, la vérification des sites de paiement
en ligne comme par exemple le site « Ticket Master ».
Le second service dans lequel j’ai travaillé était le service TO (Technical Operations)
composé d’une équipe d’ingénieurs Systèmes et Réseaux. Ce service est le département
réseau de Worldline, il s’occupe de la création de l’ensemble du plan d’adressage IP de WL
et de la configuration des équipements réseaux.
Mémoire de soutenance
12
Efficom
EFFICOM Lille est une école supérieure en 2,3 ou 5 ans post Bac qui dispense des
enseignements hautement professionnalisant, organisés en 4 pôles d’expertise : le pôle
digital, design, business et tech.
Chaque pôle est constitué de filières diplômantes, proposant des cursus jusqu’ à
Bac+5, en formation initiale et en alternance, permettant à chacun de construire son projet
professionnel selon son appétence et son ambition.
Le pôle digital contient 3 branches de formation pour le domaine du digital : Design &
User Expérience, Développement Digital et Marketing Digital.
Le pôle design contient 3 branches de formation pour le domaine de la création
d’entreprise : Graphisme, Espace et Web.
Le pôle business contient 3 branches de formation pour le domaine du management
des entreprises au niveau stratégique et opérationnel : Marketing & Communication,
Business & Relation Client et Ressources Humaines.
Le pôle tech contient 2 branches de formation pour le domaine du numérique :
Ingénierie Informatique et Web.
Les étudiants sont les futurs managers et entrepreneurs, capables de gérer un projet
dans sa globalité, de prendre part à la transformation des entreprises traditionnelles et de
créer des écosystèmes innovants.
Mémoire de soutenance
13
2 Authentification forte
La première mission dont je vais parler s’est déroulée dans la société Skapánê.
Dès le premier jour et après la présentation de l’entreprise, un salarié de la société m’a
expliqué qu’il y avait 2 réseaux chez Skapánê : le réseau « Dev », ce réseau se trouvant
dans leurs locaux, et le réseau de « Pré-prod et Prod ». Ce réseau est dédié au client de la
société, différents serveurs s’y trouvent dans lesquels des applications et des services ont
été développés pour leur clients. J’ai dû mettre en place mon environnement de travail, un
PC portable avec une distribution Ubuntu et un deuxième écran. Etant installé dans leurs
locaux, j’étais connecté sur le réseau de « Dev ».
L’après-midi, mon tuteur m’a expliqué plus précisément ce qu’il souhaitait pour la
solution d’authentification forte, le but étant d’établir une connexion sécurisée pour se
connecter à distance sur les machines de la société en utilisant la technologie des tokens
OTP.
J’avais pour première mission l’étude de la mise en place de 2 solutions sécurité : la
connexion SSH sécurisée avec OTP et la connexion VPN sécurisée avec OTP. Pendant
presque toute la première journée, je me suis donc renseigné sur les technologies liées à
l’OTP en premier, mais je me suis aperçu que ce concept était une des possibilités parmi
d’autres méthodes d’authentification forte.
L’authentification forte
L’authentification forte est une pratique qui consiste à utiliser au minimum deux facteurs
qui permettent l’authentification dans le milieu de la sécurité des systèmes d’information.
Cette pratique a été inventée dans un souci de renforcer la sécurité des équipements
informatiques, d’une transaction en ligne ou d’une demande de session.
En effet, l’authentification en générale ne demande qu’un mot de passe, or ce dernier
peut être volé ou connu par un ou plusieurs autres individus. L’authentification forte est très
utilisée dans les transactions en ligne par exemple, le site peut vous envoyer par téléphone
un code PIN sur le smartphone pour confirmer votre authentification.
Mémoire de soutenance
14
Pour ce faire, l’authentification forte s’appuie sur plusieurs facteurs ayant chacun leur
particularité, ainsi un attaquant aura beaucoup de difficultés à pénétrer le système lors d’une
hypothétique attaque. Ces différents facteurs sont les suivants :
- Ce que l’on connaît, exemple : un mot de passe, une passphrase.
- Ce que l’on possède, exemple : une clé USB, un smartphone, une carte magnétique
ou encore un jeton d’authentification.
- Ce que l’on est, exemple : une empreinte digitale, un élément biométrique ou encore
une empreinte rétinienne.
- Ce que l’on sait faire, exemple : une biométrique comportementale, un calcul connu
de lui seul, une reconnaissance de voie, etc…
- L’endroit où l’on se situe.
Pour que la solution de sécurité soit considérée comme de l’authentification forte, il faut
qu’il y ait au moins 2 facteurs. Avec la combinaison de ces différents facteurs,
l’authentification forte peut grandement réduire la réussite d’attaque visant à récupérer les
identifiants de connexion d’un utilisateur. En effet, même si l’attaque vient à récupérer les
identifiants (login et mot de passe), il manquerait le ou les autres facteurs qui permettraient
de s’authentifier.
Parmi ces méthodes d’authentification, on en compte 3 :
1) OTP (One Time Password / mot de passe unique)
C’est un mot de passe qui a la particularité de n’être valable que le temps d’une
connexion à une session (il fait partie du facteur « ce que je possède »), cela veut
dire que si un pirate réussit à récupérer les identifiants d’un utilisateur (login, mot de
passe et OTP), il ne pourra pas se connecter car même si le login et le mot de passe
restent les mêmes, l’OTP ne sera plus valide, celui-ci ayant déjà été utilisé pour se
connecter à distance ou autres, les attaques par rejet deviennent impossibles. C’est
un mot de passe qui est calculé par un serveur, et non par un utilisateur. Des
technologies additionnelles sont utilisées pour se souvenir des OTP car ces derniers
ne peuvent pas être retenus.
Mémoire de soutenance
15
Plusieurs moyens existent pour que les utilisateurs aient leurs codes OTP à
disposition à tout instant :
o Les OTP qui sont générés par un serveur et envoyés à destination de
l’utilisateur par un moyen de télécommunication comme les SMS
généralement.
o Il y a des applications sur les smartphones des utilisateurs, Google
Authenticator étant l’exemple le plus connu.
o Les jetons d’authentifications (tokens) qui génèrent les codes OTP
consultables sur un écran et qui sont petits.
Ils existent 2 types d’OTP :
a. HOTP (HMAC-based One-time Password) : c’est une variante du OTP, le mot
de passe à usage unique est basé sur un compteur de type incrémentiel, ce
compteur subit une incrémentation à chaque fois que celui-ci est utilisé, du
côté client et du côté serveur, sinon il y aura une désynchronisation.
L’algorithme du HOTP fonctionne ainsi :
i. Le compteur est incrémenté lorsqu’il est utilisé
ii. Un calcul prenant en compte le compteur et la clé privée est exécuté
par une fonction de hachage HMAC avec la formule « OTP = HMAC
(K, C) »
iii. Ce calcul permet la création de l’OTP.
Le serveur accepte une petite tolérance par rapport au compteur car si un utilisateur
appuie plusieurs fois, le compteur sera forcément plus élevé côté client que le
compteur côté serveur ; ainsi, le serveur fait un calcul de plusieurs valeurs et la valeur
de l’utilisateur doit être retrouvable dans les différentes valeurs calculées par le
serveur.
Mémoire de soutenance
16
b. TOTP (Time-based One Time Password) : c’est une variante du OTP, le mot
de passe à usage unique est un compteur basé sur le temps. C’est le
standard pour faire une solution à double authentification. Comme avec
l’HOTP, ce dernier utilise différentes valeurs pour générer les OTP. Pour la
mesure du temps, l’heure POSIX a été retenue. L’heure POSIX est une
mesure du temps qui a commencé le 1er janvier 1970 à 00:00:00 UTC, elle
s’exprime toujours en secondes.
Le mot de passe disparait généralement au bout de 1 à 2 minutes pour laisser
place à un autre. A la seconde où le mot de passe OTP change, l’ancien ne
peux plus être utilisé.
L’exemple le plus populaire en matière de mot de passe unique basé sur le temps est
le très connu SecurID de la société RSA Security ci-dessous.
Généralement, le code OTP est un code de 6 à 8 chiffres. L’avantage de ce système est
que si un pirate arrive à récupérer les identifiants, il ne pourra pas se connecter car le code
OTP ne sera plus le même.
Mémoire de soutenance
17
2) Les certificats
Les certificats numériques ont pour but de chiffrer des messages, ou de s’identifier et
s’authentifier lors d’une connexion (il fait partie du facteur « ce que je possède »), ils sont
comme une pièce d’identité numérique propre à la personne physique ou morale.
Ces certificats utilisent le chiffrement asymétrique et emploient un challenge. En effet, un
message qui a été encrypté par une clé privée ne pourra être ouvert et lisible que si et
seulement si le destinataire possède une clé publique.
Grâce à cette technologie, la possibilité de pouvoir assurer le principe de non-réputation
est assuré. En effet, seul le destinataire a sa clé privée.
3) La biométrie
La biométrie, dans le principe d’authentification forte, désigne le contrôle des accès
grâce à une partie du corps humain (entrant dans le facteur : « ce que l’on est »), c’est-à-dire
la possibilité de s’authentifier via une reconnaissance physique propre à chacun. L’accès par
biométrie désigne deux façons d’utilisation : le contact physique et sans contact physique.
Le contact physique désigne la morphologie de la main, la vérification de l’empreinte
digitale ou encore la reconnaissance de vaisseaux sanguins au niveau du doigt.
Mémoire de soutenance
18
Ces différents moyens d’authentification peuvent être combinés entre eux pour une
sécurité supplémentaire. Le contact physique dans la biométrie est la méthode la plus
répandue et plus précisément la vérification de l’empreinte digitale.
Le sans contact physique désigne la très populaire reconnaissance faciale, c’est-à-dire
l’identification du visage, et la vérification de l’iris. Une autre méthode sans contact nommée
« finger on the fly » est capable de lire les 4 doigts d’une main grâce à un simple mouvement
et cela sans le moindre contact.
Après m’être renseigné sur l’authentification forte, mon tuteur m’a confirmé l’utilisation
de la méthode OTP, et plus précisément la technologie TOTP.
Recherche d’une solution d’authentification forte
Etant dans le réseau de « Dev », je devais monter la solution d’authentification à
double temps dans ce réseau, le réseau de « Pré-prod / Prod » serait sécurisé une fois le
premier réseau terminé. J’ai installé VMware Workstation dans le but de me créer un
environnement de production pour la mise en place de l’authentification forte. La Machine
Virtuelle créée était une distribution Linux, et plus précisément la version Debian 9. En effet,
cette version a été choisie car la société travaille avec Debian 8 et allait bientôt mettre leurs
serveurs à jour sur Debian 9. J’ai donc commencé à regarder les solutions qui répondaient le
mieux à mon besoin : un logiciel qui permet de faire une authentification forte via un OTP.
Mémoire de soutenance
19
Google Authenticator
Après avoir fini et appris l’essentiel de l’authentification forte, je suis allé directement
sur le net pour commencer à rechercher les logiciels qui utilisent la technologie TOTP. J’ai
trouvé un logiciel qui était assez connu et simple d’utilisation Google Authenticator. C’est un
logiciel open-source créé par Google qui peut être utilisé pour des services comme Gmail,
Facebook ou encore Discord ; il peut s’installer sur un environnement Linux et le code OTP,
ou ici TOTP, est disponible sur les smartphones.
De ce fait, non seulement ce logiciel pourrait sécuriser les serveurs de l’entreprise,
mais les salariés pourraient également s’en servir pour leurs comptes personnels.
Cependant, mon tuteur n’était pas intéressé par cette solution car il fallait un logiciel qui
supporte les tokens ou jetons d’authentifications.
Les tokens
Les tokens sont des jetons d’authentifications créés pour mettre en place des
solutions d’authentifications à double temps. Ces outils de sécurité sont utilisés pour prouver
une identité à distance par voie électronique pour que l’utilisateur du jeton puisse accéder à
une ressource particulière : accès à un serveur, se connecter sur le réseau d’une entreprise
à distance. Ils sont employés comme remplacement d’un mot de passe ou en complément
de celui-ci.
Mémoire de soutenance
20
Ces jetons sont petits, facilement transportables et peuvent se mettre sur un porte-
clés. En effet, certains sont équipés d’un anneau et peuvent se mettre dans une poche, ce
qui évite aisément les pertes.
Le principe est que l’utilisateur qui veut se connecter à distance sur les différents
serveurs de l’entreprise utilise le moyen de communication que l’entreprise lui a fourni. Puis,
il entre son login et son mot de passe : représente pour l’instant une authentification à un
temps. Ensuite, l’utilisateur doit rentrer un code OTP qui est inscrit sur le jeton et qui
changera dans la minute qui suit.
Je vais utiliser ce schéma pour illustrer mes propos :
Un utilisateur veut se connecter à un serveur pour pouvoir accéder à des ressources
disponibles sur ce dernier. Ce dernier utilise une connexion SSH : il saisit l’adresse IP du
serveur couplé à son login, puis il doit maintenant entrer son mot de passe. A partir de là,
l’utilisateur doit maintenant se servir de son token car la connexion SSH demande un « Code
OTP », ce code est présent sur le token.
Mémoire de soutenance
21
La connexion demande donc login, mot de passe et l’OTP, et ce toujours dans cet ordre :
Donc une fois la connexion établie et les différents identifiants rentrés, le serveur
cible (ressources) va aller interroger une machine (un serveur en général, on parlera alors de
« serveur OTP ») qui va alors procéder à la vérification de l’OTP.
Sur le Serveur OTP, le token a été déclaré opérationnel et associé à l’utilisateur
voulant se connecter. Si le token est valide, l’utilisateur pourra accéder aux ressources ;
dans le cas contraire, il ne pourra pas.
UniOTP
J’ai continué la recherche d’un logiciel en prenant en compte qu’il peut exploiter les
tokens ; dans le même temps, mon tuteur m’a donné un token utilisant le logiciel UniOTP, j’ai
téléchargé ce logiciel.
UniOTP est un logiciel développé par la société Secutech, qui permet de faire de
l’authentification forte en utilisant les tokens propre à la solution : UniOTP 500 qui font du
TOTP.
L’installation de ce logiciel s’est révélée extrêmement compliquée, que ce soit sur la
partie serveur ou client. En effet, lors de son installation plusieurs problèmes sont apparus
au fur et à mesure :
Première chose, après avoir terminé l’installation, j’ai tenté une connexion à
l’interface graphique pour commencer à enregistrer les tokens, mais une fois les identifiants
rentrés pour se connecter, j’étais redirigé sur une page blanche. Une analyse approfondie du
code a été faite pour comprendre d’où venait cette erreur ; le code en PHP avait une
particularité : un symbole arobase « @ » était mis sur toutes les fonctions, ce qui sert à
cacher les messages d’erreur. En les supprimant, les messages d’erreur apparaissaient au
lieu d’une page blanche, ce qui m’avait permis d’y voir plus clair.
Mémoire de soutenance
22
Donc une fois reconnecté, un message d’erreur indique un problème lié à une
fonction dans le code, il s’est avéré que pour que le logiciel fonctionne, il était obligatoire
d’avoir installé PHP version 4.5 qui était l’ancienne version. Donc après avoir installé une
version de PHP plus ancienne, j’avais désormais accès à l’interface graphique.
Une fois un utilisateur créé, une tentative d’importation d’un token a été effectuée,
mais ce fut un échec à chaque fois. Après une recherche intensive dans la résolution du
problème d’importation, l’erreur a été corrigée : en fait, dans le fichier d’importation du token
(seed), une clé qui permet la création du TOTP contenait des caractères de type « Varchar »
et « Binaire », mais dans la base de données MySQL fournie avec le logiciel, le champ de la
clé était de type Varchar.
De ce fait, seul les données Varchar étaient lues. En remplaçant le type par
« Varbinary», les 2 types de caractères étaient désormais lus.
Le serveur UniOTP étant terminé, j’ai tout de suite commencé l’installation du client.
Une fois le serveur et le client finis, j’ai testé le logiciel mais un autre problème est survenu :
la tentative de connexion par SSH a échoué, j’ai donc regardé dans les logs pour en savoir
plus et ce message apparaissait :
Ce message signifiait que le système en 64 bits de l’ordinateur ne peut pas utiliser
une bibliothèque en 32 bits. A cause ce problème, j’ai installé SSH en 32 bits mais cela ne
fonctionnait toujours pas.
Avec tous les problèmes rencontrés et l’impossibilité de régler le souci, il a été décidé
d’abandonner le logiciel et de réfléchir au nouveau.
Mémoire de soutenance
23
FOAS
Après l’abandon de UniOTP, j’ai proposé un logiciel qui répondait à nos attentes : la
solution FOAS.
La solution FOAS (Feitian OTP Authentication Server) est comme un logiciel qui
permet de faire de l’authentification forte en utilisant la méthode OTP avec les 2 types :
TOTP et HOTP. Cette solution a été développée par la société Feitian Technologies Co ; elle
est disponible sur Windows et Linux.
Cette solution se compose de 2 logiciels : l’OTP Server et l’OTP Client.
L’OTP Server, comme son nom l’indique, correspond à la partie serveur de la
solution. Ce logiciel va s’occuper de la gestion des tokens, du type d’authentification et du
management des utilisateurs.
L’importation d’un token se fait grâce à un fichier nommé « seed », ce fichier permet
d’importer le token sur le serveur. Dans ce fichier, il y a toutes les informations concernant le
token : son numéro, la clé de chiffrement, le type de codage, la date de création et de fin de
vie, la durée d’un OTP, ...
OTP Server est divisé en 4 modules qui sont :
• OTP Center : l’interface web du logiciel qui permet la gestion des tokens, des
utilisateurs, des serveurs, des machines clients, des méthodes d’authentifications ou
encore l’envoi d’emails et de SMS.
• MySQL : la base de données où sont stockées toutes les données présentes sur
l’OTP Center.
• OTP Portal : une autre interface web du logiciel, mais pour les utilisateurs ; ils
peuvent gérer leurs tokens, déclarer un token défaillant ou perdu, ou encore tester le
bon fonctionnement de leurs tokens.
• OTP Authentification : le service qui permet de faire l’authentification forte en
interrogeant le serveur lors d’une tentative de connexion.
Quant à l’OTP Client, il correspond à la partie client de la solution. Ce logiciel est un
agent qui va être installé sur la machine voulue pour que lors de la future connexion en SSH,
l’OTP sera nécessaire.
Mémoire de soutenance
24
Après avoir lu les différentes documentations sur la solution, les 2 logiciels et sur les
différentes installations, j’ai repris le logiciel VMware pour créer une nouvelle VM. Étant
donné que la société Skapánê travaille essentiellement sous Linux, l’installation des 2
logiciels s’est fait sur une machine virtuelle Debian 9.
OTP Server
Installation de OTP Server
J’ai commencé par mettre en place OTP Server avec sa version 4.5 ; sa mise en
place se fait via le Shell (le terminal) où il faut exécuter un script qui va demander si les
termes de la licence sont acceptés :
Et si les 4 modules cités plus haut doivent être installés :
A la fin de l’installation, un message indique que le logiciel est correctement installé et
indique également qu’il faut aller sur un navigateur web et rentrer l’adresse donnée dans
l’URL pour pouvoir accéder à la configuration de OTP Center :
Mémoire de soutenance
25
Une fois cette adresse rentrée, la configuration de OTP Center peut commencer, il
faudra rentrer des informations concernant la base de données, le compte administrateur et
des modules additionnels.
Une fois que la configuration est terminée, il suffit d’actualiser la page et rentrer les
identifiants du compte administrateur pour enfin accéder à l’interface web.
Depuis cette interface web, il est possible de créer des utilisateurs ou des autres
administrateurs, importer des tokens, lier les tokens aux utilisateurs, choisir la méthode
authentification, avoir une trace des connexions et pouvoir déclarer les différents clients. Le
tout se trouve au niveau des différents onglets se trouvant en haut de la page web :
Mémoire de soutenance
26
Utilisation basique de OTP Center
Comme dit précédemment, cette interface web permet de créer les tokens et de les
lier à des utilisateurs,
La démarche est la suivante :
Commencez par cliquer l’onglet « Organisation », puis cliquez sur « Edit ». Ici, vous
pouvez modifier le domaine pour mettre le nom de votre entreprise par exemple, puis cliquez
sur Save pour enregistrer la modification :
Mémoire de soutenance
27
Maintenant mettez votre souris sur « VENDOR » et cliquez sur « Add », vous arrivez sur
la page où il est possible d’ajouter d’autres constructeurs :
• Vendor No : « numéro du constructeur »
• Vendor name : « le nom du constructeur »
Ceci n’est pas obligatoire car il y a déjà un vendeur de base « Feitian »
Il est maintenant possible d’importer des tokens, mettez votre souris sur l’onglet « TOKEN »
et cliquez sur Import. Remplir de la manière suivante :
• Organization of import into: « votre domaine »
• Token file formats : « choisir le format de votre fichier token »
• Token file : « sélectionner fichier correspondant à votre token » (ce fichier est vital
pour la synchronisation entre le serveur et le token)
• Token belongs vendor : « sélectionner le nom du fabricant du token
• Enable token : Yes
Mémoire de soutenance
28
Le token est maintenant importé et déclaré, il faut l’associer à un utilisateur mais
actuellement il n’y en a pas encore. Pour les créer, mettez votre souris sur « USER » et
cliquez sur « Add » pour créer les utilisateurs qui seront associés au tokens.
La création d’un utilisateur se fait de la façon suivante :
• Select organization : « votre domaine »
• User account : « nom de l’utilisateur »
• Real name : « le vrai nom de l’utilisateur »
• Local authentication mode: Verify static password an OTP
Il est possible de mettre « Verify static password and OTP » cette option utilise le mot
de passe du compte utilisateur OTP Center + OTP, il faudra créer un nouveau mot de passe.
Mémoire de soutenance
29
Une fois que l’utilisateur a été créé, OTP Center envoie un message demandant si vous
voulez associer l’utilisateur à un token. Comme un token a été déclaré, il est possible de le
faire immédiatement.
A partir d’ici, il faut sélectionner un token dans la liste pour le lier à l’utilisateur. Une
fois le token associé à l’utilisateur, celui-ci est prêt à l’emploi.
Il ne reste plus qu’à déclarer la machine cliente, cette action se fait sur l’interface web
dans l’onglet Authentification → Agent, l’ajout d’un client se fait de la façon suivante :
• Agent Name : « le nom de l’agent »
• Agent IP : « IP de votre client »
• Shared Key : « clé partagé entre le serveur et le client
• Confirm shared key : « retapez votre clé partagée »
• Server List : « sélectionnez un serveur d’authentification »
• Agent type : Linux PAM agent
• Agent configuration : linux-pam-config
• Description : « pas obligatoire »
Mémoire de soutenance
30
Une fois le client ajouté, aller dans la sous onglet « List », dans la rubrique
« Opération » et télécharger un fichier (avec pour extension .acf) qui sera vital dans la mise
en place du client plus tard en cliquant sur la dernière icône.
Le dernier point important du logiciel OTP Server est la possibilité d’avoir un
historique (log) de toutes les actions en rapport avec la solution FOAS : une identification sur
un service (OTP Center, OTP Portal), un token synchronisé, une authentification ou encore
le résultat d’une connexion OTP. Pour chaque action réalisée qui a échoué, l’historique
affiche un message d’erreur qui permet de déterminer la cause de l’échec de l’opération.
L’objectif de la solution FOAS étant une connexion avec un OTP, les logs sont très
complets : il est possible de voir quel utilisateur s’est connecté, le numéro de série du token,
la date de la connexion, l’IP du client et du serveur, et le résultat de l’opération.
Mémoire de soutenance
31
OTP Client
La partie serveur étant mis en place, il est désormais possible de s’attaquer à la
partie client. Cette partie se fait via le 2ème logiciel nommé OTP Client ou précisément OTP
Server PAM authentication agent. Ce logiciel s’installe sur la machine, serveur ou PC, où un
besoin de connexion sécurisé est voulu, en général, il y a des données sensibles sur la
machine.
L’installation du logiciel s’est faite, comme le logiciel OTP Server, sur une VM Debian
9, car comme dit précédemment la société Skapánê a toutes ses machines sur sous la
distribution Linux.
Le logiciel se met en place via l’exécution d’un script, il faudra accepter les termes de
la licence et entrer le chemin du fichier.acf téléchargé avant. Ce fichier contient l’ensemble
des informations utiles qui seront utilisées par la machine cliente : l’IP du serveur, le type
d’authentification, la clé secrète pour éviter une intrusion.
L’installation de l’agent est maintenant terminée, il ne reste plus qu’à le configurer. La
configuration de l’agent se fait par le mécanisme d’authentification PAM (installé de base sur
les distributions Linux).
Mémoire de soutenance
32
PAM est un mécanisme qui donne la possibilité d’inclure différentes solutions
d’authentification qui permet à l’administrateur système d’avoir une grande souplesse pour
créer sa politique de sécurité. En effet, PAM permet d’avoir une grande diversité de type
d’authentification par service grâce à l’utilisation de librairie (bibliothèque dynamique). PAM
repose sur 4 modules pour avoir une authentification personnalisée :
- account : module qui contrôle si l’accès est bien autorisé,
- auth : module qui permet l’authentification d’un utilisateur,
- password : module qui gère les mots de passe et qui peut aussi les spécifier,
- session : module qui s’occupe de paramétrer les sessions des utilisateurs.
La modification des fichiers PAM pour faire fonctionner l’agent se fait dans le fichier
« SSHD » (pour la connexion en SSH) et dans le fichier « login » (pour les identifiants), il faut
rajouter la librairie « pam_otp.so » fournie lors de l’installation de l’agent dans ces 2 fichiers.
Il faut également créer un compte sur la machine client. En effet, le login et le mot de passe
à rentrer lors de la connexion sécurisée sont ceux de la machine cliente.
Test de l’authentification forte
Maintenant que tous les fichiers de configuration sont correctement disposés, il est
grand temps de vérifier le fonctionnement de l’authentification forte. Pour faire le test, il est
possible de le faire sur n’importe quelle machine (le protocole SSH doit être installé) en
utilisant une connexion SSH vers la machine client :
Mémoire de soutenance
33
La connexion se fait par la demande d’un premier mot de passe, ici c’est le mot de
passe du compte de l’utilisateur sur la machine client « usertest01 »
La connexion demande un « Passcode » qui est l’OTP affiché sur l’écran du Token.
La connexion s’effectue, le test est un succès, l’authentification forte (authentification
à double temps) est opérationnelle !
En résumé, la démarche à suivre pour se connecter est :
• SSH « nom de l’utilisateur de la machine cible » @ « IP de la machine cible »
• Password : « mot de passe présent sur la machine cible »
• Passcode : « OTP »
OTP Portal
La solution FOAS a mis à la disposition des utilisateurs une interface web nommée
OTP Portal. Cette interface est gérée par OTP Center, elle a été conçue pour ceux qui ont
un token et qui souhaite modifier une donnée les concernant ou gérer leurs tokens.
Le lien pour accéder à cette interface est donné à la fin de l’installation de OTP
Server :
Mémoire de soutenance
34
Pour se connecter à OTP Portal, l’utilisateur doit avoir un compte (login et mot de passe)
enregistré sur le OTP Center. Une fois connecté, l’utilisateur arrive sur la page d’accueil où
un résumé des informations relatives à son compte et à son token est disponible :
• User account : le nom de du compte utilisateur
• Bound token : le numéro de série du token (inscrit aussi sur le nom de du token)
• Real name : le vrai nom et prénom de l’utilisateur
• User state : état du compte, s’il est écrit « Locked » le compte a été désactivé, il
faudra contacter l’administrateur système
• Authentication type : indique le type d’authentification du compte :
◦ Only verify password : authentification par mot de passe seul (le mot de passe
enregistré sur l’OTP Center
◦ Only verify OTP: authentification par OTP (token) seul
◦ Verify password and token : authentification par mot de passe et OTP
• Email : l’adresse mail
• Mobile phone : le numéro de téléphone portable
• Login time(s) : le nombre de connexion total sur OTP Portal de l’utilisateur
Mémoire de soutenance
35
A gauche de la page web se trouvent diverses options pour les utilisateurs ; ces options leur
permettent de gérer leurs comptes utilisateurs, ainsi que leurs tokens. Il est également
possible de déclarer un token défaillant, un token volé ou perdu, tester le bon
fonctionnement de leurs tokens assignés.
Cette page OTP Portal peut être personnalisée. En effet, sur OTP Center dans
l’onglet Configuration, OTP Portal, ici plusieurs options sont disponibles et peuvent être
facilement intégrées uniquement en les cochant.
La solution d’authentification forte étant finalement opérationnelle sur mon
environnement de test, l’étape suivante allait être l’installation de la solution sur un serveur
prévu spécialement à cet effet. Mais avant cela, il a fallu que je fasse une présentation de
cette solution au CEO, c’est-à-dire au Directeur de la société, à l’aide d’un PowerPoint. La
présentation portait sur l’ancienne connexion et ses faiblesses, les tokens et leur prix et le
réseau de l’entreprise après l’installation de la solution FAOS. La possibilité de mettre en
place de la haute disponibilité : mettre 2 serveurs OTP ou plus, ainsi si le premier serveur
OTP tombe, un deuxième serveur OTP qui est en « standby » prendra le relais.
Mémoire de soutenance
36
Gestion de fournisseur
Une fois la solution mise en place, j’ai contacté la société Feitian pour avoir les tarifs
concernant le prix d’une licence et les coûts des tokens HT, en dollars ou en euros. Nous
avons discuté plus précisément sur la durée d’une licence, sur les conditions d’une
maintenance, le moyen de récupération des fichiers « seed », le pays de provenance des
tokens ou encore si le logiciel existe sur smartphone.
La solution FOAS ne dispose pas d’une version payante, mais d’une licence par
nombre de tokens : si nous achetons une licence pour 50 tokens, nous ne pourrons utiliser
que ce même nombre au maximum.
Mémoire de soutenance
37
3 Changement de locaux
Vérification des prises électriques et Ethernet
Peu de temps après la mise en place de l’installation de la solution d’authentification
forte sur mon environnement de test, Skapánê a décidé de changer de locaux pour avoir 2
grandes pièces avec un petit espace de réunion pouvant également servir de salle de
stockage de matériel. Mais avant le déménagement dans les nouveaux locaux, mon tuteur a
décidé qu’il fallait vérifier l’alimentation des prises électriques et le bon fonctionnement des
ports Ethernet. Pour la vérification pour des prises électriques, nous avons pris nos PC
portables et nous avons branché le chargeur à chaque prise électrique dans les 2 salles pour
ainsi vérifier si le PC portable était en charge ou pas.
Une fois les prises électriques contrôlées et opérationnelles, il restait les ports
Ethernet à contrôler. Pour ce faire et après vérification du bon fonctionnement des switches,
mon tuteur et moi avons connecté nos PC portables sur un port Ethernet avec un câble
RJ45 ; puis à l’aide une commande « ping », nous avons constaté que les deux PC portables
communiquaient bien. La même méthode a été utilisée pour le test des autres ports
Ethernet, le PC portable de mon tuteur restait connecté sur le même port et je connectais
mon PC portable à tous les ports restants des 2 salles pour terminer la vérification.
Installation des nouveaux matériaux
Une fois finie, toutes les prises électriques et les ports Ethernet étaient opérationnels.
Il fallait maintenant passer aux câblages : les switches se situent dans une armoire au
plafond et sur des rails suspendus à hauteur dans les salles où se trouvaient tous les câbles
électriques, Ethernet, …
Mémoire de soutenance
38
Etant stagiaire, je n’avais pas le droit de monter sur une échelle pour y ajouter les
nouveaux câbles Ethernet. Les nouveaux câbles installés, une vérification a été effectuée
pour s’assurer que ceux-ci fonctionnaient correctement à l’aide un commande « ping ».
Les salles étaient maintenant prêtes pour le déménagement. Celui-ci a pris toute la
journée, il a fallu transporter le matériel lourd avec un charriot, démonter les tables, puis les
remonter. J’étais positionné dans les nouveaux locaux pour installer et effectuer le
branchement pour PC fixes et portables qui commençaient à arriver, j’ai également installé
un switch Netgear 6 ports par groupes de bureaux dans la première salle.
Une fois le déménagement terminé et les PC installés, je demandais aux non-
informaticiens si leur connexion Internet était fonctionnelle.
Problème de réseau
Tous les postes étaient prêts et connectés, sauf un groupe de 3 bureaux qui n’arrivait
pas à se connecter à Internet. J’ai donc effectué une commande « ping » vers le routeur
pour voir s’il y avait au moins une connexion en local : le « ping » n’a pas fonctionné. L’erreur
venait en fait du switch Netgear, quelqu’un avait branché un câble Ethernet sur un autre port
du switch ce qui provoquait une boucle réseau. Il a suffi de retirer ce câble pour régler le
problème.
Mémoire de soutenance
39
4 Finalisation de l’authentification forte
Une fois la société installée dans ses nouveaux locaux et le serveur arrivé, je pouvais
passer à l’étape suivante : l’installation d’un serveur (Bastion) qui allait héberger la solution
d’authentification à double temps. Mon tuteur a acheté un serveur rack Dell PowerEdge
R410, un serveur rack s’installe dans des armoires en salles informatiques climatisées, et
peut contenir plusieurs serveurs.
A l’aide d’une clé bootable, j’ai installé un OS Linux Debian 9 dessus (UEFI), le
serveur contient 2 disques de 2 Téraoctets et un disque de 256 Go. Une fois l’OS mis en
place et le serveur prêt à l’emploi, j’ai installé l’hyperviseur VMware Workstation Pro version
14, puis j’ai utilisé la procédure que j’ai dû concevoir pour élaborer le serveur et l’agent, cette
procédure comprend :
- La pré-installation d’une Machine Virtuelle correspond à :
o le nom de la Machine Virtuelle,
o le nombre de processeurs,
o le nombre de cœurs par processeurs,
o la RAM,
o ses disques,
o son type de disque virtuel,
o son fichier ISO qui correspond à l’OS voulu,
Mémoire de soutenance
40
o le type de connexion réseau :
▪ Bridged où l’adresse IP de la Machine Virtuelle est sur le même
réseau que la Machine Physique,
▪ NAT où l’adresse IP de la Machine Virtuelle est le réseau des cartes
réseau VMware virtuelle (VMware Network Adapter),
▪ Host-only.
- L’installation de la Machine Virtuelle, c’est-à-dire la mise en place de son OS, ici
Debian 9, cette partie correspond aux points suivants :
o le nom de l’hostname,
o le nom du domaine,
o la création des utilisateurs :
▪ Le super utilisateur Root (utilisateurs qui a tous les droits)
▪ L’utilisateur (qui a des droits restreints)
o la méthode de partitionner les disques :
▪ Disque entier
▪ Disque avec LVM
▪ Disque avec LVM chiffré
o La sélection d’un miroir (cela sert pour l’importation de paquets),
o La sélection des logiciels prédéfinis.
- La mise en place du logiciel d’authentification forte
- La mise en place de l’agent
- L’utilisation de l’interface utilisateur
Les liens pour consulter ces 3 procédures sont disponibles dans les annexes.
Mémoire de soutenance
41
Etant donné qu’il a été décidé de mettre en place l’OTP Server et l’OTP agent sur 2
Machines Virtuelles, je n’ai pas importé mes Machines Virtuelles du serveur et de l’agent
depuis mon PC portable. L’installation des Machines Virtuelles a était refaite à zéro avec
l’utilisation de la procédure afin que je contrôle s’il n’y avait aucun élément manquant et si un
utilisateur pouvait mettre en place le logiciel d’authentification forte sans aucun souci.
Une fois la solution d’authentification forte mise en place sur le serveur Dell
PowerEdge R410, j’ai fait un test de connexion depuis mon PC portable (une connexion
SSH) sur la Machine Virtuelle.
Le test est un succès ! Pour être certain du résultat, un test a également été effectué
dans les 2 salles sur les PC des employés pour vérifier le bon fonctionnement de
l’authentification à double temps. La phase 2 de l’authentification forte pouvait maintenant
commencer.
La solution de l’authentification forte fonctionne désormais dans le réseau de
développement de Skapánê, en local donc. Le but de la mise en place de cette
authentification à double temps est que le développeur et autres personnes de la société
puissent se connecter de chez eux pour continuer leurs projets.
Cependant, la société Skapánê n’utilise pas de Machine Virtuelle, mais utilise à la
place la technologie Docker :
Docker est un logiciel open source développé par la société du même nom (Docker
inc) qui a pour but de rendre le développement, le partage, le déploiement et l’automatisation
d’application web dans des conteneurs logiciels.
Mémoire de soutenance
42
Les conteneurs aussi appelés « Docker » ressemblent assez aux Machines Virtuelles
bien que ceux-ci soient assez différents. La différence réside dans le fait qu’une Machine
Virtuelle crée, émule un environnement en fonction de l’OS choisi par l’intermédiaire d’un
hyperviseur (VMware Workstation, Virtual Box, …), la Machine Virtuelle prend une grande
partie des ressources de la machine physique. Elle fait une copie virtuelle de toute la partie
hardware de la machine physique : disque, CPU, RAM, … La Machine Virtuelle possède une
complète isolation. Cependant, la mise en place d’une Machine Virtuelle nécessite
l’installation d’une interface graphique sur le serveur, ce que Docker permet d’éviter sur les
serveurs ; l’économie de ressources est une grande force de la technologie Docker.
A la différence d’une Machine Virtuelle, le Docker utilise directement le système
d’exploitation de la machine physique. Une isolation est aussi présente, mais le Docker
s’appuie sur le kernel de la machine physique ; il est construit via une image choisie, cette
image est comme un OS car le conteneur a un système de fichiers correspondant à l’image
voulue. En fait, le Docker est comme une Machine Virtuelle allégée qui ne nécessite que peu
de ressources pour fonctionner. Docker est disponible sur les distributions Linux, il y a une
version pour Windows Serveur qui est parue récemment.
Une des forces de Docker est de combiner les couches d’une application en
conteneurs qui peuvent être distribués sous la forme d’images se trouvant dans un registre
qui se nomme « Docker registry ». Ses conteneurs ont la possibilité d’être facilement
transportables, d’exécuter quels que soient l’environnement et la plateforme, que ce soit un
poste se trouvant en local, un cloud soit privé, soit public.
Mémoire de soutenance
43
Un point important à souligner sur les Dockers est que s’il est éteint, puis est rallumé,
toutes les données sur ce Docker seront perdues. Il existe également la version Docker pour
Windows. Cependant, tous ceux créés sur un ordinateur Windows seront en Linux. A noter
également que les Dockers sont tous en ligne de commande ; contrairement à une machine
virtuelle, il n’est pas possible d’installer une interface graphique pour les Dockers.
Après avoir fait connaissance avec la technologie Docker, j’ai installé la solution
d’authentification à deux temps sur 2 dockers : 1 pour OTP Server et l’autre pour OTP Client.
Une fois les 2 Dockers mis en place sur le bastion, un test de l’authentification forte a de
nouveau été effectué dans les 2 salles de la société, mais le test ne fonctionnait dans
aucune des salles ; c’était tout-à-fait normal car les Dockers ont leur propre réseau, donc
différent de celui de la société. Le logiciel Docker crée son propre réseau grâce à une carte
réseau virtuelle : la carte virtuelle Docker sur le bastion était en 172.30.0.0/24 et les Dockers
ont leur propre carte réseau virtuelle dans ce réseau. Le réseau de Skapánê étant en
192.168.0.0/24, ce réseau est différent, donc la connexion depuis un PC est impossible.
Pour résoudre ce problème, j’ai dû mettre en place une redirection de port sur le
Docker Client. Cette méthode permet de définir une règle précise en fonction de l’adresse IP
et du port utilisé. Cette règle est la suivante : si telle adresse IP utilisant tel port arrive sur le
bastion, la connexion est redirigée sur le Docker en changeant de port. Par exemple, je fais
une connexion en SSH en utilisant le port 7500 vers le bastion (ssh [email protected] -p
7500), avant cela, j’ai mis une redirection sur le Docker Client qui est la suivante :
0.0.0.0:7500 → 22. Cela est traduit par « une tentative de connexion sur le port 7500 qui
devra être redirigée sur ce docker avec le port 22.
Mémoire de soutenance
44
La connexion au Docker « OTP Client » était maintenant opérationnelle dans les 2
salles de la société, mon tuteur a contrôlé le travail effectué et m’a suggéré de créer les
Dockers en m’appuyant sur la technologie « Dockerfile et Docker Compose ».
Dockerfile est un fichier qui permet de construire et monter un Docker
automatiquement en utilisant des instructions sous forme de commandes en langage Linux à
partir d’une image. Le conteneur pourra être lancé via une commande « build » qui sert,
comme son nom l’indique, à construire le Docker en se basant sur l’image. La construction
du Docker est alors très rapide, on obtient un gain de temps non négligeable. Un autre
avantage à utiliser cette technologie est que pour la création du même Docker sur une autre
machine, il suffit de prendre le fichier « Dockerfile » et de le lancer. Les instructions clé du
Dockerfile sont les suivantes :
- FROM : cette instruction sera toujours la première, elle va chercher l’image sur laquelle le
conteneur va s’appuyer.
- RUN : cette instruction permet d’exécuter une commande Unix sur le Docker.
- ADD : cette instruction permet de copier n’importe quel fichier et de l’importer dans le
Docker.
- EXPOSE : cette instruction désigne les ports qui seront autorisés à communiquer à
l’extérieur du Docker.
- ENV : cette instruction donne la possibilité d’ajouter une variable d’environnement.
- CMD : cette instruction est la seule possible dans un fichier Dockerfile, elle définit la
commande à exécuter lors du lancement d’un conteneur.
Docker-compose est un outil qui permet de créer, de gérer et d’interconnecter
plusieurs conteneurs et fournit la capacité pour persister des données. En effet, lorsqu’un
Docker est redémarré, toutes les données et les différents changements opérés dans ce
dernier sont supprimés. La persistance d’un volume d’un Docker se fait sur le machine hôte
sous la forme « dossier où seront sauvegardées les données du Docker : dossier du Docker
à sauvegarder », exemple : /volumes/data1/etc/pam.d/:/etc/pam.d/.
Mémoire de soutenance
45
Pour utiliser Docker-compose, un fichier « docker-compose.yml » doit être créé, dans
lequel 3 parties devront être déclarées :
- version : définit la version du fichier « docker-compose.yml », il est recommandé de
mettre la version 2 car la version 1 sera bientôt inutilisable.
- services : c’est dans cette partie que les différents conteneurs sont déclarés avec
leur noms, les ports exposés, leur adresse IP ou encore leurs images. Se trouvent aussi les
différents volumes déclarés persistants.
- networks : permet de définir le réseau auquel appartiennent les dockers, ainsi que
leur passerelle.
Pour démarrer tous les Dockers présents dans le fichier, il suffit de lancer la
commande « docker-compose up -d » et « docker-compose down » pour les arrêter.
Une astuce consiste à combiner les deux technologies « Dockerfile » et « Docker-
compose ». En effet, il s’agit de combiner leurs avantages : la création de conteneurs avec
un fichier « Dockerfile » pour chaque Docker voulu et les déclarer dans le fichier « docker-
compose.yml ». Dans ce fichier, il ne faudra pas mettre le nom de l’image, mais le chemin du
fichier « Dockerfile ».
Une fois les 2 conteneurs (OTP Server et OTP Client) recréés avec les méthodes
citées précédemment et le bon fonctionnement testé et approuvé dans le réseau interne
« Dev » de Skapánê, en local donc, il était maintenant temps de faire la mise en place de la
connexion à distance pour ainsi se connecter depuis l’extérieur du réseau de la société.
Cependant, étant donné que les adresses IP des Dockers, et donc du bastion (serveur rack),
sont privées, il n’était pas possible de faire une connexion SSH directement dessus.
Heureusement, la société Skapánê possède une adresse IP publique sur son routeur,
nous avons fait un test grâce à un PC en le connectant à Internet via un point d’accès sur un
smartphone ; le PC se trouve alors hors du réseau de la société. Mais avant de faire le test, il
fallait aller sur le routeur et lui ajouter une redirection de port, comme le bastion car on
change de réseau. Cette règle stipulait que toutes connexions arrivant de l’extérieur sur tel
port devaient être redirigées sur l’adresse IP du bastion : 0.0.0.0:8000 →
192.168.0.52:7500. Comme il y avait déjà une autre redirection de port pour accéder au
docker voulu, le test fut un succès.
Mémoire de soutenance
46
La connexion à double authentification via le protocole SSH était maintenant
opérationnelle sur le réseau de dev de la société et en dehors de celui-ci : l’objectif de mon
stage était rempli. Il restait l’installation de l’authentification forte sur l’autre réseau interne de
la société, le réseau de « Pré-prod / Prod ». Pour mettre la solution en place, il nous fallait un
deuxième serveur identique au bastion du réseau de « Dév » pour commencer. Il ne restait
plus qu’à le commander…
OpenVPN :
Après la mise en place de la solution « FOAS », chaque salarié de la société qui avait
besoin de se connecter à distance pour continuer sa mission reçut un token et était
enregistré sur le logiciel « OTP Server ». Cela avait également pour but de confirmer le bon
fonctionnement de cette nouvelle authentification. Après quelques jours, un feedback avait
été fait par ces salariés, ainsi que par le directeur de la société : la solution mise en place
fonctionnait correctement et personne n’avait pas rencontré de soucis avec le jeton
d’authentification. Malgré ses bons retours concernant la solution, les problèmes arrivèrent
après qu’ils se soient authentifiés.
Mémoire de soutenance
47
La connexion SSH permet d’avoir un accès à distance et de se connecter sur le
réseau « Dev » de la société. Certes, les utilisateurs trouvent cette solution mieux sécurisée,
mais moins pratique que la solution d’avant qui utilisait le logiciel OpenVPN.
OpenVPN est un logiciel libre qui permet de créer un VPN, un réseau virtuel privé.
Différence :
Avec ce logiciel, les utilisateurs peuvent facilement accéder à leurs applications et à
leurs fichiers. Ils ont un accès complet au partage du réseau, de l’intranet. Techniquement, il
y a un accès complet entre le PC Client et le réseau cible, contrairement à SSH qui sert
uniquement à communiquer avec un service : le terminal de commande. De plus, OpenVPN
est plus compliqué à mettre en place que SSH, mais OpenVPN est plus simple d’utilisation
pour les salariés. En effet, avec ce logiciel qui se fait par interface graphique au lieu d’avoir
un Shell, comme pour SSH, c’est complément transparent au niveau des utilisateurs.
De plus, avec une connexion SSH, on a uniquement l’accès au serveur auquel l’IP de
destination a été précisé lors de la ligne de commande. Si l’utilisateur veut se connecter à un
autre serveur, il faudra non seulement que le serveur en question possède un agent SSH,
dans le cas de Linux « openssh-client », mais en plus il faudra refaire la commande de
connexion SSH. Ce qui veut dire qu’un nouveau paquet devra être installé sur tous les
serveurs ayant la possibilité d’être exploités à distance, ce qui prend de la place.
Un autre inconvénient de cette connexion à distance via SSH est le fait que certains
fichiers qui contiennent des informations nécessaires au travail à distance devront être
téléchargés depuis le serveur sur le PC personnel des utilisateurs. En effet, certains types de
fichiers, exemple un document Word, ne pourront pas être interprétés et être lus en ligne de
commande ; l’utilisateur devra le télécharger, ce qui peut prendre du temps pour l’exploiter
selon la taille du document. OpenVPN permet lui d’ouvrir le fichier grâce à un équivalent
présent sur le PC de l’utilisateur.
Mémoire de soutenance
48
Un point important est que la société et les utilisateurs connaissent bien ce logiciel
qui était l’ancienne solution de communication à distance. En effet, passer de l’interface
graphique à la ligne de commande sans les avantages qui vont avec n’est pas forcément
utile.
En résumé, avec l’utilisation du logiciel OpenVPN, les salariés de la société sont
« branchés physiquement au switch » d’une certaine manière, mais, comme énoncé dans
l’introduction, les inconvénients de l’OpenVPN sont que les certificats et les mots de passe
sont toujours les mêmes et que si le PC personnel de l’utilisateur est dérobé, le voleur aura
accès à tout le réseau car les identifiants sont les mêmes.
Nous sommes alors passés à une nouvelle étape dans ma mission initiale : remettre
en place le logiciel OpenVPN en y ajoutant la solution d’authentification forte.
OpenVPN et la solution FOAS
Le but de cette partie est de se connecter via le logiciel OpenVPN, il faut donc avoir
un certificat valide, puis entrer ses identifiants et trouver un moyen pour que le logiciel
demande un code OTP en interrogeant le Docker « OTP Server ».
Pour commencer, il a fallu récréer un Docker pour le logiciel OpenVPN. Pour cela,
nous avons repris les technologies du « Dockerfile » et du « Docker-compose ». Le Docker
« OpenVPN » remplacera le Docker « OTP Client ». En effet, désormais il ne s’agit plus de
faire une connexion SSH, mais une connexion VPN, le Docker « OTP-Client » n’a plus
d’utilité.
Dans le nouveau Docker, il y aura le serveur « OpenVPN » et l’agent OTP. Pour
résumer, le Docker « OpenVPN » et le Docker « OTP-Client » ont fusionné (pour rappel, les
Dockers ou conteneurs sont sur le bastion qui est un serveur).
Donc, une fois déclaré ce nouveau conteneur dans le fichier « Docker-
compose.yml », je pouvais commencer la création du fichier « Dockerfile » pour les
conteneurs. Comme je maîtrise parfaitement l’installation et la configuration de l’agent OTP,
j’ai d’abord commencé par remettre les instructions pour la mise en place du logiciel OTP-
Client. Après avoir fini de mettre les commandes de construction pour la partie Agent, je
pouvais attaquer la mise en place du logiciel OpenVPN.
Mémoire de soutenance
49
Installation d’OpenVPN dans le « DockerFile »
Premièrement, il faut installer les logiciels qui sont sous forme de paquets OpenVPN
et « easy-rsa ». Le paquet « easy-rsa » sert à la création de certificat qui sera envoyé avec
une intervention manuelle au PC personnel du client. Il sert aussi à créer les certificats de
l’autorité de certification, mais aussi à générer les certificats du serveur et paramétrer le
fichier de configuration du serveur.
Ensuite, avec des commandes liées aux Dockers, le certificat client a été exporté sur
la machine physique (bastion) et stocké sur un répertoire prévu à cet effet.
Sur le PC qui effectuera la connexion VPN, et non pas sur le docker client, le paquet
OpenVPN devra être installé. Il faut maintenant exporter le certificat créé sur le Docker
serveur :
Avant de commencer la partie OTP, j’ai fait un test de l’OpenVPN pour m’assurer de
son bon fonctionnement. La connexion était un succès. Cependant, la découverte des
réseaux est inaccessible et aucune connexion à Internet n’est possible. Il fallait aller dans le
fichier de configuration d’OpenVPN et rajouter la ligne suivante : push redirect gateway
def1 ; cette ligne sert à monter le serveur OpenVPN en passerelle par défaut pour les clients.
Après une nouvelle tentative de connexion VPN, la découverte réseau était opérationnelle et
l’accès Internet présent :
Mémoire de soutenance
50
Il était maintenant possible de mettre la partie agent OTP dans le Docker
« OpenVPN », qui devient « OpenVPN + OTP » ; j’ai donc modifié le fichier « Dockerfile » de
ce Docker en rajoutant les lignes qui permettent l’installation de l’agent (disponible en
annexe).
Tout était mis en place pour faire le test, mais bien que toutes les lignes de
configuration des Dockers soient correctement déclarées, le logiciel OpenVPN n’interrogeait
pas le serveur OTP pour demander une double authentification. Mon tuteur avait également
fait un essai sur son PC personnel avec comme distribution Windows. Le résultat était le
même : la partie OpenVPN était parfaitement configurée, il fallait le certificat, puis la
demande des identifiants (username / password) liés au client OpenVPN ; mais aucune
notion d’OTP lors de la connexion.
Pamtester
Nous avons trouvé un programme qui permet de faire le test de l’authentification via
pam nommé « Pamtester ». Ce programme sert à vérifier le bon fonctionnement d’un
mécanisme d’authentification lié à PAM :
Ici, j’ai testé l’authentification forte avec le token et le résultat fut un succès.
Dans le fichier de configuration de OpenVPN sur le Docker « OpenVPN + OTP », il y
a la possibilité d’ajouter des scripts pour personnaliser, ajouter un ou des paramètres en
plus. Il a alors été décidé de créer 2 scripts qui permettent de faire appel à la demande
d’OTP.
Mémoire de soutenance
51
Une fois les scripts intégrés au Docker « OpenVPN + OTP », nous avons fait un test
pour vérifier le bon fonctionnement de l’utilisation des 2 scripts utilisant « pamtester » :
Désormais, la nouvelle solution d’authentification à double temps utilisant la
technologie Docker, l’OpenVPN et l’TOTP était maintenant opérationnel.
Mémoire de soutenance
52
5 Labo GBS
Pendant l’épreuve E4 pour le BTS, j’ai dû mettre en place une infrastructure réseau
composée de serveurs, d’un switch, d’un routeur, de 2 points d’accès et d’une imprimante.
Une machine virtuelle AD-DHCP-DNS, ainsi qu’un back-up pour la réplication et la haute
disponibilité ont été installés sur le serveur de production du VLAN « Prod ». Les services
configurés sur les 2 VM étaient les suivants :
- Active Directory : ce service d’annuaire sert à créer et gérer les différents comptes
visiteurs.
- DHCP : ce service sert pour les connexions des salariés de l’entreprise.
- DNS : ce service sert à la résolution de nom, indispensable de l’accès à Internet.
Chaque ordinateur présent était dans un des 4 VLANs disponibles, le besoin de
l’entreprise était que les VLANs puissent communiquer entre eux. J’ai donc mis au point un
routage inter-VLAN sur un routeur :
Le routage inter-VLAN a commencé par la déclaration des VLANs sur chaque port du
switch, le numéro des VLANs est :10, 20, 30 et 40, ce qui correspond respectivement aux
VLANs : Prod, Pré-Prod, Dev et Visiteur.
Mémoire de soutenance
53
Une fois les ports affectés à chaque VLAN du réseau, j’ai mis une passerelle par
défaut sur le switch pour pouvoir me connecter depuis n’importe quel ordinateur dans
n’importe quel VLAN grâce au routage inter-VLAN. La connexion au switch se fait en SSH,
seul l’administrateur qui dispose du privilège maximum peut s’y connecter. Pour finir, un port
du switch a été mis en mode « trunk » pour le passage de tous les VLANs.
Donc, la configuration du routage inter-VLAN a été effectuée sur le routeur Cisco :
premièrement un port du routeur a mis en mode « trunk » qui est relié au port « trunk » du
switch. Puis dans cette interface, j’ai déclaré 4 sous-interfaces, une pour chaque VLAN,
ensuite la configuration de l’encapsulation a été mise sur chaque sous-interface.
La notion de NAT pour l’accès à internet a également été mis en place par le biais
des Access List autorisant seulement l’adressage IP de chaque VLAN à bénéficier du NAT.
Comme pour le switch, la connexion au routeur en SSH se fait depuis n’importe quel PC.
Ensuite, une fois l’architecture mise en place, ainsi que le routage et les différents
serveurs définis dans leurs VLANs correctement configurés, les 2 situations professionnelles
pouvaient désormais commencer : la mise en place du portail captif et d’un serveur
supervision.
Portail Captif :
Le but de cette situation professionnelle est de mettre en place un portail captif avec une
authentification Radius qui permettra aux visiteurs de l’entreprise GSB de se connecter en
Wifi et d’avoir accès à Internet.
Pour arriver à cette finalité, j’ai installé 2 PFsense sur le logiciel VMware Workstation Pro,
un PFsense maître et un PFsense esclave, sur le serveur physique du VLAN Visiteur. Pour
son installation, les futurs portails captifs ont 3 cartes réseau : une LAN, une WAN et une
autre OPT1, cette dernière interface servira seulement à synchroniser les 2 PFsense, ce qui
permettra une haute disponibilité, une répartition de charge et une réplication des données.
En effet, comme les échanges entre les deux Pfsense seront envoyés en multicast, il est
possible qu’un pirate soit en écoute sur ce canal et récupère des informations sensibles, j’ai
donc décidé de créer un lien dédié à la synchronisation entre les 2 machines virtuelles via
l’interface OTP.
Mémoire de soutenance
54
Une fois le PFsense installé et configuré sur un poste fixe qui se trouve dans le VLAN
Visiteur, ce poste aura l’adresse 172.16.8.129, et ses deux cartes réseaux auront l’adresse
172.16.8.130 et 172.16.8.131.
Je crée le portail captif avec ses différentes configurations comme le nombre
d’utilisateurs maximum, le temps de connexion, la page de session, … Comme dit
précédemment, l’authentification se fera via le protocole Radius. Le protocole Radius est
employé pour déterminer les accès des utilisateurs pour un réseau en s’appuyant sur la base
d’authentification comme un registre LDAP.
Un serveur DHCP sera également installé sur le PFsense pour donner une adresse IP
dynamiquement au client ; la plage IP ira de 172.16.9.140 à 172.16.9.160.
Ensuite, je branche un câble RJ45 à la borne Wifi Cisco, son adresse IP sera
172.16.9.134, son masque 255.255.255.192 et sa passerelle 172.16.9.190.
Après je crée une nouvelle fonctionnalité sur le poste production, le serveur Radius ;
grâce à ce dernier, il y aura une authentification qui s’appuiera sur l’Active Directory.
Une fois terminé, je déploie le second PFsense qui assura la redondance dans le cas où
le premier PFsense ne pourrait plus assurer ses fonctions ; pour ce faire l’interface OPT1 et
OPT2 auront respectivement les adresses IP 10.0.0.8 et 10.0.0.9.
Les utilisateurs sont connectés au portail captif en Wifi via le point d’accès ; concernant
la connexion pour avoir l’accès à Internet, les utilisateurs devront entrer un login qui leur aura
été donné et qui se trouve dans la base de données du serveur AD-DHCP-DNS où le
serveur Radius est installé et va rechercher les comptes dans cette base.
Supervision :
Le but de cette situation professionnelle est de mettre en place un superviseur qui
permettra les remontés d’informations sur les différentes machines du réseau du laboratoire
GSB.
Il y a une machine virtuelle Windows Server 2012 (poste Production) se trouvant dans le
Vlan Prod ; c’est dans cette machine physique que je mettrai le superviseur. Le superviseur
aura comme adresse IP 172.16.9.14 car il est dans le VLAN 30 (Prod).
Mémoire de soutenance
55
Pour ce faire, j’ai décidé d’installer un Centreon, une seule carte réseau Lan suffit, il faut
mettre la machine virtuelle dans le VLAN Prod. Une fois installé et déployé, j’ai fait un test de
commande avec une requête SNMPWALK, la commande me donne bien la MIB de
l’équipement.
Avant d’ajouter les hôtes sur le Centreon, j’ai décidé d’installer les sondes SNMP, il faut
aller dans les machines de l’ensemble du réseau et activer les sondes SNMP qui serviront à
récupérer l’état de tel ou tel composant et de l’envoyer au Superviseur.
Les différentes communautés seront :
- Prod
- Pré-prod
- Client-dev
- Visiteurs
- Routeur
- Switch
- NAS
- AP
- Portail captif
- Imprimante
Pour l’activation de sondes SNMP, sur la machine Windows Server 2012, il faut installer
la fonctionnalité SNMP, aller dans Services, clic droit sur Service SNMP :
- Sécurité : mettre le nom de la communauté et préciser l’IP du superviseur
- Agent : mettre le nom du contact et l’emplacement de la machine.
Pour les distributions Linux, il faut installer 2 paquets SNMP et SNMPD, puis les
configurer. Sur le point d’accès, rien n’est installé, il faut juste configurer le service SNMP en
indiquant la communauté à laquelle il appartient.
Une fois les sondes SNMP installées et configurées, je me suis connecté à l’interface
web du serveur Centreon et j’ai ajouté les différents hôtes du réseau GSB.
Mémoire de soutenance
56
6 Demande Utilisateur
A l’école Efficom de Lille, une de mes missions consistait à me mettre à l’écoute des
élèves et du personnel concernant des demandes de matériels et des problèmes liés au
réseau et aux matériels, ainsi qu’à leur résolution.
Le premier cas où j’ai dû intervenir fut lorsqu’un étudiant avait un problème pour se
connecter sur sa session, mon poste envoyait ce message d’erreur :
L’origine de l’erreur de connexion se trouvait être le câble RJ-45 qui était mal
branché. En effet, la session de l’étudiant était sur un Active Directory et non en local. Pour
que le poste puisse aller voir si la session existe, il doit être synchronisé avec l’AD, donc être
connecté au réseau de l’école. En branchant le câble RJ-45, le PC était de nouveau sur le
réseau. De plus, ce problème allait être récurrent au niveau des étudiants.
Chaque jour, de nouvelles demandes et problèmes survenaient : un intervenant qui
n’arrivait pas à avoir accès à Internet alors qu’il était connecté sur le réseau de l’école. Après
avoir analysé le problème et lui avoir demandé ce qu’il avait fait avant, j’ai trouvé d’où venait
le souci de connexion. Il était bien connecté sur le réseau de l’école, mais n’avait pas indiqué
ses identifiants Wifi dans le portail captif. Après avoir rentré l’adresse IP du portail captif et
après qu’il eut rentré ses identifiants, il a enfin pu avoir accès à Internet.
Mémoire de soutenance
57
Parfois des étudiants n’arrivaient pas à se connecter à Internet car ils avaient oublié
les identifiants Wifi. Etant donné que je n’avais pas accès à la base de données contenant
ces identifiants, soit mon tuteur était là et donnait leurs identifiants, soit il n’était pas là et
dans ce cas je devais dire aux intéressés que je ne pouvais pas les leur donner et qu’il fallait
attendre que le responsable informatique revienne.
Cette mission de demande et résolution de problèmes m’a amené à effectuer
différentes tâches :
- Redémarrer un poste pour que la souris et le clavier soient pris en compte.
- Aller dans le bios d’un poste, changer l’ordre du boot sur le disque dur.
- Changer le câble VGA par un neuf.
- Expliquer aux étudiants la procédure pour imprimer.
- Changer le toner d’une imprimante.
- Installer un nouveau poste dans une salle.
Mémoire de soutenance
58
7 Contrôle des procédures de paiements
Durant mon premier stage à Worldline au service CSS, ma mission principale était
l’automatisation sur Excel via l’utilisation des Macro. Mais, j’avais également une mission
quotidienne qui était la vérification des procédures de paiements sur plusieurs sites grâce à
un logiciel propre à Worldline qui se nomme ECStools.
Dans ce logiciel, il y a une liste de sites à vérifier tels que Ticketnet.com, Ticketmaster.fr,
Auchan, etc… On m’a fourni un compte commun pour réserver les billets, et ainsi aller
jusqu’au bout de la procédure de paiement afin de contrôler si aucun problème ne survenait.
Par exemple, la procédure sur Ticket Master est la suivante : d’abord aller sur le site à
contrôler, aller dans un des menus « Musique », « Arts et Spectacle » ou encore « Sport » ;
simuler l’achat d’un billet pour un quelconque événement en achetant une place, et rentrer
les identifiants tests donnés par l’entreprise. Une fois la procédure arrivée à son terme, la
vérification est maintenant terminée.
S’il y a eu une erreur, un problème ou qu’un élément me semble suspect, il faut alors le
reporter sur le logiciel ECStools. Il y a 2 types d’enregistrement d’erreur sur ce logiciel : si
lors de la procédure de paiement, un ou plusieurs problèmes surviennent, mais que l’on
arrive bien à acheter ou réserver une place ou un produit sur le site, le nom du site est mis
en « warning » ; il y a donc un problème lors du paiement sur le site. Le deuxième
enregistrement est le « critical » si lors de l’achat d’une réservation ou d’un produit, un
problème empêche complètement la finition de la procédure de paiement, alors le site est
mis en « critical », c’est donc qu’un problème majeur empêche l’achat sur le site.
Cette mission quotidienne est très importante car si les clients ne peuvent plus effectuer
d’achats sur le site, l’entreprise responsable perdra beaucoup, à la fois au niveau financier,
mais aussi en réputation.
Mémoire de soutenance
59
8 Vérification des équipements
Cette mission a été effectuée quand je faisais mon stage chez Worldline, j’avais pour
mission de vérifier, de tester et d’améliorer des plugins sur Linux, de contrôler des routeurs
Cisco et HP montés sous forme de clusters au moyen de requêtes SNMP (snmpwalk,
snmpget) ou en utilisant un plugin Icinga de validations des configurations HSRP. Je devais
aussi trouver les bonnes OIDs des routeurs pour extraire les informations demandées en me
basant sur leur MIB correspondantes.
Pour la vérification et le test de plugins, je suis passé par VMware Workstation pour
créer des ordinateurs, des routeurs et même des firewalls virtuels.
L’état de fonctionnement des clusters se faisait par le billet de Net Portal qui est une
base de données des différents équipements réseau (routeurs, firewall) de Worldline. En
cliquant sur le nom d’un routeur et en allant dans sa configuration, il fallait vérifier si l’adresse
IP standby d’un cluster, donc de deux routeurs un en actif et l’autre en passif, était la même
sur les deux. Il s’agit là d’une notion de haute disponibilité. Si dans un cluster, le routeur actif
tombe en panne, le routeur en passif doit alors passer en actif.
Il était aussi possible de vérifier l’état des interfaces du cluster pour voir l’état actuel
grâce à des requêtes SNMP, mais il fallait d’abord trouver l’OID pertinente, ou utiliser un
plugin HSRP prévu à cet usage mais toujours en utilisant une OID.
Pour trouver l’OID du service voulu, je devais parcourir la MIB de l’équipement en
question :
Mémoire de soutenance
60
La commande snmpwalk me permettait de visualiser la MIB correspondante d’un
équipement, puis une fois l’OID trouvé dans la MIB, j’utilisais la commande snmpget pour
interroger l’OID sur le service voulu, ici pour contrôler si le protocole HSRP était toujours en
place. Selon le résultat reçu, je devais prévenir mon tuteur si le protocole était défaillant.
Mémoire de soutenance
61
Conclusion
Ces expériences professionnelles se sont toujours révélées extrêmement
enrichissantes :
Mon stage chez la société Skapánê s’est révélé très instructif en terme
d’apprentissage et de mise en place d’équipements et de logiciels. Cette société m’a appris
la notion d’authentification à double temps, ce qui était intéressant pour comprendre et avoir
la possibilité de mettre en place cette technologie. Je peux également l’utiliser à titre
personnel pour sécuriser mes comptes sur de nombreux sites où la fonction « double mot de
passe » est présente. Par exemple, avec l’application sur smartphone « Google
Authenticator », je peux sécuriser mon compte Facebook. De plus, ayant choisi l’option
sécurité à l’école EPSI, j’aurai peut-être l’occasion de réutiliser cette technologie.
J’ai également pu découvrir et mettre en place d’autres choses comme les fichiers .so
qui sont des librairies dynamiques, la mise en place d’OpenVPN, les Dockers, l’installation et
la configuration de serveur Rack… Skapánê étant une société spécialisée dans le Machine
Learning, j’ai pu découvrir ce concept et en comprendre les bases.
Concernant mon stage chez Efficom, celui-ci s’est également révélé intéressant car
j’ai pu y apprendre le support de niveau 1. Désormais, je sais quelle est la démarche dans la
résolution des problèmes informatiques. Dans mon avenir professionnel, je serai très
certainement amené à accompagner des utilisateurs lors de soucis liés à l’informatique.
Enfin, mon stage chez Worldline et plus précisément dans les services CSS et TO
m’a appris à contrôler et à vérifier quotidiennement des sites web et des équipements
réseaux.
Les missions que j’ai eu la chance de pouvoir expérimenter dans ces différentes
entreprises m’ont permis d’acquérir une grande expérience, d’améliorer ma pratique et m’a
conforté dans mon envie de continuer mes études dans l’informatique, et plus précisément
dans les domaines Systèmes et Réseaux.
Mémoire de soutenance
62
Glossaire
VPN : Le VPN est un tunnel qui passe par Internet et qui permet la communication entre 2
équipements réseau, le tunnel crée une liaison virtuelle entre les 2 réseaux. Cette liaison est
sécurisée car les données qui y transitent sont chiffrées ; même en cas de récupération des
données celles-ci seront indéchiffrables.
SSH : C’est un protocole qui permet une connexion sécurisée entre 2 équipements réseaux,
cette connexion est sécurisée grâce à un échange de clé de chiffrement à chaque
commencement de connexion.
OTP : c’est un mot de passe qui a la particularité de ne durer que pour une connexion ou
transaction, il peut être combiné avec un login et un autre mot de passe pour une double
authentification. L’OTP est soit basé sur le temps (TOTP), sur un compteur (HOTP) ou sur
un défi (OATH).
VM : C’est machine qui est virtualisée sur une machine physique qui peut émuler n’importe
quel système d’exploitation. L’avantage de cette technologie est l’économie de matériel
physique ; en effet, plusieurs ordinateurs se trouvent dans une machine physique.
Switch : C’est commutateur qui permet de relier plusieurs équipements dans un réseau, il
joue le rôle d’intermédiaire entre 2 équipements en s’assurant de correctement diriger les
échanges entre l’émetteur et le destinataire. Il peut également s’occuper du routage dans
certains cas.
Ping : C’est une commande de diagnostique qui permet de vérifier si un équipement réseau
est actif ou s’il a la bonne adresse IP. Elle permet également de connaître le temps d’une
réponse , ce qui permet de contrôler sa connexion à Internet par exemple.
UEFI : C’est un micrologiciel qui indique à la carte mère quels sont les périphériques qui lui
sont connectés. L’UEFI est le successeur du BIOS ; en effet, il apporte de nouvelles
fonctionnalités dont le dépassement de la limite des disques de 2,2 To.
AD : L’Active Directory est un service d’annuaire qui permet de répertorier tous les
équipements réseau et tous les utilisateurs d’un réseau interne pour ensuite leur accorder
des droits différents sur l’accès aux ressources.
DHCP : C’est un protocole qui permet de configurer une carte réseau dynamiquement au
niveau IP pour n’importe quel équipement réseau.
Mémoire de soutenance
63
DNS : C’est un protocole qui est vital pour l’accès à Internet ; en effet, ce protocole permet
d’attribuer une adresse IP d’un site web, par exemple, à un nom de domaine.
NAT : C’est un protocole qui a été créé pour pallier l’épuisement des adresse IPv4 ; le NAT
permet à une adresse IP publique d’être associée à plusieurs adresses IP privées ; en effet,
il faut disposer d’une adresse IP publique pour l’accès à Internet et celles-ci sont épuisées.
Portail Captif : C’est un intermédiaire par lequel les utilisateurs sont obligés de s’authentifier
avec un compte valide pour avoir un accès à Internet. Le portail captif se déclenche dès
l’ouverture d’un navigateur web.
Mémoire de soutenance
64
Annexe 1
Tout document technique rédigé pendant la période passée en entreprise ou qui donne une
vue approfondie de votre travail (fichier de configuration, source, …).
Skapánê :
L’installation de la solution FOAS qui contient 3 procédure :
L’installation de l’OTP Server :
https://viangblog.files.wordpress.com/2018/06/otp-server.pdf
L’installation de l’OTP Client :
https://viangblog.files.wordpress.com/2018/06/otp-client.pdf
L’installation de l’OTP Portal :
https://viangblog.files.wordpress.com/2018/06/otp-portal.pdf
Docker du serveur OTP :
Mémoire de soutenance
65
Docker du OTP client partie installation agent :
Docker du OTP client partie VPN
Mémoire de soutenance
66
Les 2 scripts qui permettent la demande de l’OTP
Mémoire de soutenance
67
Annexe 2
Epreuve E4 :
Documents relatifs au portail captif :
https://viangblog.wordpress.com/portail-captif/
Documents relatifs à la supervision :
https://viangblog.wordpress.com/supervision/
Extrait du plan d’adressage de laboratoire GSB :
Mémoire de soutenance
68
CV
Top Related