Travail pratique
ID : A04-TP04
But du TP
- Installation d'un serveur web sur Linux (pour la production)
- Sécurisation d'un serveur web sur Internet
Travail à réaliser
SSH
- Connectez-vous à votre VPS (Virtual Private Server) en SSH.
-
Configurez l'affichage automatiquement du message suivant avant chaque connexion SSH (le message doit être absolument identique à celui ci-dessous au niveau contenu et mise en forme).
*************************************************************************** NOTICE TO USERS This computer system is the private property of its owner, whether individual, corporate or government. It is for authorized use only. Users (authorized or unauthorized) have no explicit or implicit expectation of privacy. Any or all uses of this system and all files on this system may be intercepted, monitored, recorded, copied, audited, inspected, and disclosed to your employer, to authorized site, government, and law enforcement personnel, as well as authorized officials of government agencies, both domestic and foreign. By using this system, the user consents to such interception, monitoring, recording, copying, auditing, inspection, and disclosure at the discretion of such personnel or officials. Unauthorized or improper use of this system may result in civil and criminal penalties and administrative or disciplinary action, as appropriate. By continuing to use this system you indicate your awareness of and consent to these terms and conditions of use. LOG OFF IMMEDIATELY if you do not agree to the conditions stated in this warning. ****************************************************************************
-
Configurez l'authentification SSH par clé publique et désactivez l'authentification par mot de passe.
Questions
- A quoi cela sert-il (quelle est la finalité de ce message dans notre contexte) ?
- Y a-t-il plusieurs "façons" de l'afficher, lesquelles et pourquoi choisir l'une plutôt que l'autre ?
- Comment tester que l'authentification par mot de passe est effectivement désactivée ?
Date et heure
- Vérifiez que la date, l'heure et le fuseau horaire sont corrects, configurez-les si besoin.
Questions
- Que se passe-t-il si l'on modifie la date et l'heure (pourquoi et comment) ?
- Changez la date et l'heure avec la commande
sudo date --set "2020-10-02 15:23:47"
- Vérifiez en affichant la date et l'heure avec la commande
date
- Changez la date et l'heure avec la commande
Firewall
- Configurez et activez le firewall ufw.
- Seuls les ports nécessaires doivent être ouverts.
Questions
- Comment vérifier et tester que la configuration est correcte ?
- Comment s'assurer que seuls les ports ouverts le sont effectivement ?
Email redirection
- Installez et configurez le package
mailutils
.- Envoyez un email à l'utilisateur
root
avec la commandeecho "Test email to root" | mail -s "Test email" root
. - Accédez à la boîte de réception des emails de l'utilisateur
root
avec la commandesudo mail
.
- Envoyez un email à l'utilisateur
- Configurez la redirection des emails de l'utilisateur
root
vers votre adresse email@edu.hefr.ch
.- Envoyez un nouvel email à l'utilisateur
root
avec la commandeecho "Test email to root" | mail -s "Test email" root
et vérifiez que vous l'ayez bien reçu sur votre adresse@edu.hefr.ch
.
- Envoyez un nouvel email à l'utilisateur
Questions
- Quels types d'emails l'utilisateur
root
reçoit-il et pourquoi les rediriger ?
Rapport d'analyse des fichiers de log
- Installez et configurez le package
logwatch
. - Configurez et testez l'envoi des rapports d'analyse des fichiers de log sur la messagerie interne de l'utilisateur
root
.- Envoyez automatiquement un rapport avec un haut niveau de détails, chaque semaine, pour les logs des 7 derniers jours écoulés.
- Configurez une règle dans votre messagerie afin de déplacer ces rapports dans un répertoire dédié.
Questions
- Quel jour de la semaine et à quelle heure sont envoyés les rapports d'analyse des fichiers de log ?
Rapport des mises à jour
- Installez et configurez le package
apticron
. - Configurez et testez l'envoi des rapports des mises à jour en attente sur la messagerie interne de l'utilisateur
root
.- Envoyez automatiquement un rapport chaque jour à 7h00.
- Configurez une règle dans votre messagerie afin de déplacer ces rapports dans un répertoire dédié.
Mise à jour automatique
- Vérifiez que les mises à jour de sécurité sont bien installées automatiquement par l'utilitaire
unattended-upgrades
. - Configurez l'envoi d'emails en cas de problèmes ou lors de mises à jour des paquets par l'utilitaire
unattended-upgrades
sur la messagerie interne de l'utilisateurroot
.
nginx
- Installez et configurez le package
nginx
. - Sécurisez nginx selon les éléments listés dans le support de cours.
- Vérifiez que tout fonctionne correctement et adaptez la configuration si besoin.
HTTPS
- Installez et configurez un certificat TLS (HTTPS).
- Utilisez Certbot.
- Vérifiez que la redirection de tout le trafic HTTP vers HTTPS est bien configurée.
- Il ne doit plus être possible d'afficher une page web avec HTTP.
Questions
- Comment fonctionne la redirection HTTP vers HTTPS au niveau de la configuration du serveur web nginx ?
HTTP/2
- Configurez nginx pour qu'il utilise le protocole HTTP/2.
Questions
- Comment fait-on pour vérifier, dans le navigateur web, que le protocole HTTP/2 est bien utilisé et donc bien configuré sur le serveur web ?
Vérification
- Vérifiez que tout fonctionne correctement et testez votre site :
- Security Headers : Note A+
- Pour le header
Permissions-Policy
, désactivez la géolocalisation, la caméra et le microphone
- Pour le header
- Mozilla Observatory : Note A+
- SSL Server Test : Note A+
- Testez avant et après la configuration des en-têtes HTTP.
- Security Headers : Note A+
Manuel technique
Rédigez un manuel technique permettant de reproduire à l'identique le travail pratique que vous avez réalisé. Le document devra inclure des explications sur les éléments importants à comprendre, notamment les points abordés dans les sections Questions des parties précédentes.
Directives générales
-
Référencez toutes les sources d'informations utilisées pour réaliser le travail pratique et pour la rédaction de votre document. Privilégiez l'utilisation de citations en fin de chapitres et/ou en notes de bas de page, plutôt qu'une liste de sources en fin de document.
-
Prenez des notes au fur et à mesure de la réalisation du travail pratique si vous ne rédigez pas le manuel en parallèle.
-
Ajoutez des images, des illustrations et des captures d'écran pour aider le lecteur à mieux comprendre et suivre les étapes.
-
Utilisez uniquement la forme impersonnelle dans le manuel technique.
Structure du manuel
Votre manuel technique devra inclure les éléments suivants :
Page de garde (sans en-tête ni pied de page)
- Le logo de la HEIA-FR
- Le nom de la formation : Année Passerelle Ingénierie ISC
- Le nom du cours : Technologies Internet
- L'ID du travail pratique : A04-TP04
- Une illustration graphique représentant ce travail pratique
- Vos informations personnelles (nom, prénom, adresse email)
- La date du travail pratique
En-tête (à partir de la deuxième page)
- Le logo de la HEIA-FR
- Le nom de la formation : Année Passerelle Ingénierie ISC
- Le nom du cours : Technologies Internet
- L'ID du travail pratique : A04-TP04
- Vos informations personnelles (nom, prénom, adresse email)
Pied de page (à partir de la deuxième page)
- La numérotation automatique des pages (ex. : N° de la page / # de pages)
- La date du travail pratique
Contenu supplémentaire
- Une table des matières (avec des liens cliquables) après la page de garde.
- Une table des illustrations (avec des liens cliquables) à la fin du document.
Rendu du TP
Le document, au format PDF, est à rendre pour le lundi 14 octobre à 13h, au plus tard, par email (joel.dacomo@hefr.ch).
Le document PDF aura le nom de fichier : API-TI - A04-TP04 - Nom Prénom.pdf
Le TP sera évalué.