application hnt - wordpress.com · 2015-06-06 · en effet, actuellement, tous les utilisateurs se...
TRANSCRIPT
BTS-SIO
JULIENNE Laurent
HOULLIER Fabrice
LEGRAND Alexandre
HANNEQUIN Ludovic
HOARAU Anthony
Application HNT
1
PPE7 Application HNT
Sommaire
Contexte…………………………………………………………………page 2
Partie développement
Première partie…………………………page 2
Deuxième partie ……………………...page 4
Partie réseau
Documentation technique de la solution de
sécurité………………………………….…page 8
Documentation utilisateur………..page 15
Gestion de projet……………………………………………………page 20
Bilan……………………………………………………………………….page 21
2
PPE7 Application HNT
Contexte :
Humanist Network a souhaité faire évoluer son site Web HNT en le rendant encore plus
dynamique grâce à Ajax.
Il faudra répondre aussi à une demande de la part des ONG.
Mais attention les informations de votre réseau deviennent, de plus en plus, primordiales et
par voie de conséquence, elles devront être protégées ainsi que vos serveurs. Pour cela, il va
falloir mettre en place notamment une DMZ.
Partie développement
Première partie
Vous ferez évoluer le site web d'HNT, qui est hébergé sur le serveur de la
société, en remplaçant le maximum de champs de saisie par des listes
déroulantes avec un système d’auto complétion exploitant la technologie AJAX.
3
PPE7 Application HNT
Auto complétion
MySQL :
On va chercher
dans la base de
données tous les
métiers qui
existent déjà puis
on garde
uniquement ceux
qui
correspondent
aux premières
lettres saisies par
l'utilisateur, dans le champ concerné. Ensuite les résultats sont affichés en
dessous.
Auto Completion
XML
C'est le même
principe que pour
l'auto complétion
MySQL sauf qu’au
lieu d'aller chercher
les informations
dans la base de
données on va les
chercher dans un
fichier .XML présent sur le serveur qui a été mis en place.
4
PPE7 Application HNT
Deuxième partie
Les infirmiers des ONG sur le terrain se plaignent de ne pas avoir un outil
simple mais indispensable pour leur détection de malnutrition. Ils
souhaiteraient pouvoir avoir une aide à l’interprétation des résultats sanguins
et cela directement sur leur GSM (Smartphone tournant sous le système
Android).
Les hématies : Les hématies, appelées aussi globules rouges, font partie des éléments figurés du sang. Elles assurent le transport des gaz respiratoires comme le dioxygène (O2) et le dioxyde de carbone (CO2). Cette application doit comporter plusieurs pages. Sur la page d’accueil nous devions ainsi retrouver un menu avec :
- Test Hématies : page ci-dessus - Présentation de HNT : texte simple
Il vous est demandé de développer cette application Android
5
PPE7 Application HNT
L’application
Ici nous avons l’application qui nous a été
demandé. Celle-ci nous permet ainsi, grâce
au taux d'hématie présent dans le sang et
au sexe de la personne de calculer si elle
est en bonne santé ou pas
Voici page d'accueil, elle nous permet
de nous diriger soit vers l'application
soit vers une page de description du
site HNT.
Il y’a aussi un menu permettant de se
diriger directement d'une page à l'autre
sans avoir à passer à nouveau par la
page d'accueil.
6
PPE7 Application HNT
Et voici une description simple du Site HNT
C’est images sont issue des tests que nous avons fait depuis une tablette qui
nous a été fournis à cet effet. Nous pouvons donc constater le bon
fonctionnement de notre application sur tablette et smartphone.
7
PPE7 Application HNT
Partie Réseau
Vous allez devoir mettre en place une architecture type DMZ afin de protéger un maximum vos divers serveurs en prenant soin de choisir le positionnement de vos serveurs (Web, AD). Vous pourrez modifier votre adressage si vous le jugez nécessaire après avoir consulté le consultant Administrateur de Réseaux. Votre solution DMZ ne doit pas empêcher de consulter les sites web, mais doit impérativement protéger vos bases de données sous MySQL ou sous SQL Server ainsi que l'application VB de toutes intrusions. Vous devrez ainsi mettre en œuvre les moyens nécessaires à la mise aux normes du réseau. En effet, actuellement, tous les utilisateurs se connectant au réseau wifi ont désormais accès à Internet, mais vous n’avez aucune trace de leur navigation. Or la législation française oblige les entreprises à conserver notamment le journal des logs (cf. site de la CNIL) Vous allez donc devoir mettre en place une solution pour imposer un
identifiant et un mot de passe à tout utilisateur et ainsi enregistrer toutes les
navigations. Une solution de portail captif serait souhaitable.
8
PPE7 Application HNT
Pour réussir au mieux cette partie nous avons décidé
d’utiliser PfSense pour notre solution de DMZ.
C’est un routeur / pare-feu open source basé sur FreeBSD. Il peut être installé sur un simple ordinateur personnel comme sur un serveur.
Basé sur PF (packet filter), comme iptables sur GNU/Linux, il est réputé pour sa fiabilité.
Après une installation en mode console, il s'administre ensuite simplement depuis une interface web et gère nativement les VLAN.
Documentation technique de la solution de sécurité
Nous allons vous présenter ici comment nous avons mis en place notre solution de DMZ avec PfSense.
Pour notre DMZ nous avons eu besoin de :
- 1 serveur pfsense
- Un routeur (avec 2 interface eth0 et eth1, les routes et les acl)
- Un Switch
- Une borne wifi
- Une machine cliente
9
PPE7 Application HNT
Tout d’abord nous devons, installer PfSense sur une machine (virtuelle) Free BSD, ensuite il a fallu, la configurer.
Une fois cette étape terminée, nous allons pouvoir accéder à PfSense depuis
son interface web à l’adresse que nous lui avons attribué à l’installation, qui est
192.168.1.1.
A présent voyons les différentes étapes pour configurer PfSense pour notre
DMZ.
Ici, nous avons nos
interfaces
nécessaires au bon
fonctionnement de
notre solution.
Nous y retrouvons
nos interfaces
WAN et LAN.
10
PPE7 Application HNT
Ici nous avons l’interface où nous référençons les règles pour nos différentes
interfaces.
Ici notre page
d’accueil pour
PfSense ou nos 2
interfaces, LAN et
WAN y sont bien
référencé avec
leurs adresses :
LAN = 192.168.1.1
WAN = 10.10.1.1
11
PPE7 Application HNT
Ensuite dans l’onglet « system » nous allons nous rendre dans le menu avancé
pour y continuer notre configuration plus en détail.
Ensuite nous allons
configurer notre
serveur DHCP on y
précisant bien la plage
d’adresse à utiliser.
Ici nous allons utiliser
une plage allant de :
192.168.1.5 à
192.168.1.55
12
PPE7 Application HNT
Voici ce qui à la base devait représenter notre portail captif, mais au final, après
l’avoir quand même configuré nous avons finis par ne pas l’utiliser.
Nous lançons
ensuite un Ping
de notre
serveur PfSense
depuis notre pc
Client,
Celui-ci se
déroule avec
succès comme
nous pouvons le
voir ci-après.
13
PPE7 Application HNT
Il ne faut pas
oublier aussi
de vérifier que
notre pc
Client a bien
pris en charge
le DHCP du
serveur
PfSense.
Nous avons
aussi du
installer
OpenVpn pour
ce qui est du
journal des logs
et pour ainsi
avoir une
sécurité accrue.
Il suffit d’aller le récupérer dans l’interface de gestion de PfSense dans :
System-packages-Available Packages et de sélectionner Open Vpn Client
Export Utility et de l’installer.
14
PPE7 Application HNT
Puis il ne reste plus qu’à le configurer en créant un utilisateur et un certificat
privé pour celui-ci. On finit en ajoutant une route et il nous reste plus qu’à
s’occuper de la partie « client » de PfSense, à la page suivante de ce rapport.
Pour notre journal des logs nous avons préféré utiliser OpenVpn plutôt que le
portail captif de PfSense car nous avons eu moins de mal à le configurer et à la
prendre en mains. En effet les tutoriels que nous avons trouvés à son sujet
étaient beaucoup plus détaillés et notre but sur ce projet était de finir dans les
temps avec une solution efficace et fonctionnelle.
Nous avons eu recours à cette solution sur la fin du projet, il se peut donc
qu’elle présente encore quelque petit soucis de fonctionnalité
Nous avons aussi configuré notre borne wifi via son interface web, en allant
simplement à l’adresse ip par défaut 192.168.1.254. Le tout étant de ne pas
oublier de configurer la carte réseau de notre machine physique auparavant.
Voici le schéma
que nous avons
utilisé pour
mettre en place
notre DMZ
15
PPE7 Application HNT
Documentation Utilisateur
Pour
commencer
nous devons
lancer
l’exécutable de
Open Vpn que
nous avons
téléchargé.
On clique
ensuite sur
« Install »
Ensuite il suffit de faire
« next »
16
PPE7 Application HNT
On accepte ensuite
les conditions
d’utilisation.
Ici il suffit de
laisser les
paramètres coché
par défaut.
17
PPE7 Application HNT
Puis on choisit
l’emplacement de
l’enregistrement.
Il ne reste plus qu’à
laisser l’installation se
terminer.
18
PPE7 Application HNT
Il suffit ensuite de
lancer OpenVpn à
la fin de
l’installation.
Ici on peut constater qu’OpenVPN
se lance et apparait dans la barre
des taches:
Cela nous amène
ensuite dans une
fenêtre ou l’on y
renseigne le login et
le mot de passe de
l’utilisateur concerné
et on finit cette étape
en validant.
20
PPE7 Application HNT
Gestion de projet
Voici, ci-dessus, le diagramme de gant qui nous a permis de planifier notre projet. Nous avons
commencé ce projet le 6 mars 2015 pour le terminer le 25 avril 2014. Cela correspond à environ 30h
de travail, sans compter celles réalisé en autonomie.
Nous nous sommes concentré sur les fonctionnalités principales qu’attendais HNT pour l’évolution
de son site Web et de son application. Pour ce qui est de la partie réseau elle s’est révélé être assez
complexe à traiter, notre solution était bien souvent défaillante.
Dans la mesure où HNT supporte un coût mensure pour ses Bac+2 de 1500 euros net, les membres
de notre équipe ont ainsi touché 299.88 euros net sachant qu’HNT payait 10.71 euros de l’heure par
employé à raison de 4 heures de travail pour 7 semaines.
21
PPE7 Application HNT
Bilan
Durant ce projet, nous avons dû faire face à de léger contretemps tel que notre
solution qui ne fonctionnait plus au niveau de la partie réseau, nous étions
parfois obligé de recommencer toute sa configuration au risque de la mettre
hors service.
Les tests ont été nombreux, pour le portail captif et la solution que nous avons
choisie pour le journal de log il nous a fallu du temps avant d’en arriver à un
résultat convenable.
Au niveau de la partie programmation, nous n’avons pas vraiment rencontré
de problèmes, cette partie était à la portée de nos capacité et nous avons pu
nous en sortir sans trop d’encombre.
Nous avons ainsi finis le projet dans le temps qui nous était impartit malgré
quelque petites défaillances qui persistent encore.
Cependant l’entente et la coordination était présente malgré le fait que nous
ne faisions pas tous le même travail (partie développement et partie réseaux).