Le serveur informatique pour les nuls

Dans cette vidéo, je vais vous expliquer ce qu’est un serveur informatique et vous montrer son rôle dans l’informatique moderne et dans le fonctionnement d’Internet.

Un serveur, c’est quoi ?

Le rôle des serveurs informatique est de fournir des services autour des données.

Par exemple, le serveur peut :

Du cpup tout les services auquel vous accéder en ligne, comme vos musiques via Spotify, vos mails via Gmail, cette vidéo que vous regardez sur Youtube ou vos photos sur Instagram… Tout ça c’est géré et hébergé sur des serveurs

 

La relation « client-serveur »

Et tous ces services sont accessibles via des requêtes que font des clients. On parle alors de relation “client-serveur”. Il faut comprendre par là, “client du service” et “serveur ou fournisseur du service”.

Mais attention : les clients peuvent être soit des utilisateurs, soit d’autres serveurs. Rien n’empêche un serveur d’être le client du service d’un autre serveur: par exemple  un serveur web peut demander à un serveur base de données les informations à afficher sur ses pages web au client.

 

Serveur et datacenter

Concrètement, un serveur c’est un peu un super ordinateur qui possède des composants similaires à ceux d’un ordinateur comme des ventilos, des barrettes de mémoires RAM, des processeurs, mais tout ça en beaucoup beaucoup plus performant. Parce que ce sont des machines qui traitent énormément de données de manière automatique et simultanée et qui en plus tournent 24h/24 7j/7

Juste une petite remarque : rien n’empêche d’utiliser un ordinateur comme serveur mais c’est clairement pas le même niveau de performance 

Les serveurs sont hébergés dans des datacenters quand il s’agit de grandes entreprises. En résumé, un datacenter c’est un site sécurisé qui va héberger plein de serveurs et leur fournir des services pour garantir un fonctionnement optimal et continu (comme équipements réseau, infrastructure de sécurité incendie, de refroidissement des serveurs, etc).

Comprendre les dangers d’une backdoor (et les combattre)

Dans cette vidéo, je vous explique l’essentiel à savoir sur les backdoors :

  • Savez-vous ce qu’est une backdoor ?
  • Pourquoi est ce que c’est important de savoir ce que c’est?
  • Quelles sont les menaces qu’elle apporte?
  • Et enfin comment les éviter?

C’est quoi une backdoor ?

La backdoor est une fonctionnalité qui donne un accès secret au logiciel et par extension à l’ordinateur sur laquelle elle est installée. Pour cette raison, la backdoor doit demeurer inconnue de l’utilisateur.

Mais une backdoor ne veut pas forcément dire piratage malvaillant. En effet, elle peut être incluse nativement dans le logiciel par le développeur du logiciel, pour faire de la maintenance ou de l’assistance à distance par exemple

Mais évidemment c’est un usage qui est détournée par des cybercriminels. Cette porte dérobée leur permet de faire plein de trucs pas cool.

Voici les risques les plus importants :

  • Tout d’abord, il y a le vol de vos données personnelles (et donc accès à toutes votre vie privée) et des données ayant une valeur (mots de passe, coordonnées bancaires, etc ) ;
  • Il y a aussi la possibilité d’espionnage par le cybercriminel et donc de surveillance de l’utilisateur (comme l’enregistrement des frappes ou la capture d’écran…),
  • Enfin, la possibilité de prendre le contrôle d’un ordinateur pour mener des actions malveillantes (envoi de mails de phishing, installation d’autres virus attaque de déni de service);

Remarque : là je parle de PC mais cela peut toucher votre smartphone et potentiellement tout les objects connecté

Comment se protéger contre les Backdoor?

Les Backdoors nécessitent des actions de l’utilisateur (d’un simple clic jusqu’à une installation compléte). Mais évidemment pour ne pas que l’utilisateur ne s’en rende compte, les cybercriminels utilisent des moyens détournés pour faire installer ces backdoors à l’utilisateur.

Voici 4 bonnes pratiques qui vous éviteront de choper des backdoors :

  • Utiliser un antivirus efficace
  • Installer les mises à jour de tous vos logiciels dès qu’elles sont disponibles.
  • Télécharger depuis les sites officiels (et non depuis des plateformes de téléchargement intermédiaires)
  • Ne jamais cliquer sur un lien suspect (sur un site Internet ou dans un mail)

Le middleware expliqué simplement

Dans cette vidéo, je vous explique le concept du middleware.

J’ai remarqué que cette notion de middleware est en général assez abstraite, alors je vais lever le brouillard pour que vous sachiez tout sur le middleware.

Un middleware, c’est quoi ?

Le Middleware est une couche technique qui se positionne entre l’OS (le système d’xploitation) et la couche applicative.

Mais concretement, le middleware est aussi un logiciel qui tourne sur un OS. Sauf que on le met en dessous des applications parce que son rôle c’est d’aider les autres logiciels ou applications à interagir ensemble.

Donc en fait quand on parle du couche intermédiaire c’est à la fois entre l’OS et la couche applicative  mais aussi une couche intermédiaire entre les différentes applicatons.

L’idée principale à retenir sur le rôle des middleware c’est qu’il fournit donc des services récurrents aux applications sans que cela n’ait été prévu dans le développement de l’application

Un middleware, pour quoi faire ?

Le but est de permettre au developpeur de se concentrer sur le “métier de l’application” lors de sa construction sans penser à toutes ces contraintes extérieures.

C’est donc au midleware de faire de sorte de faire communiquer des applications hétérogène qui n’ont pas été prévus pour intéragir ensemble en natif.

4 points importants à souligner :

  • Le middleware peut se situer « au milieu de » plusieurs sites physiques et c’est le middleware justement qui permet aux données de transiter d’un site à l’autre.
  • Ensuite un middleware permet de réaliser des échanges « asynchrones », c’est à dire que les deux applications n’ont pas besoin d’être démarré simultanément pour se parler.
  • Le middleware propose aussi des fonctions de sécurité, de répartition de charge, et bien d’autres. tout dépend évidemment du type middleware que vous utilisez et de la technologie employée (MOM, serveur web, serveur d’application…)

Prenez soin de vos mots de passe (ils vous le rendront bien)

Dans cette vidéo, je vais vous sensibiliser à l’importance des mots de passe :

  • Pourquoi est ce important d’être vigilant avec les mots de passe?
  • Comment les sécuriser?
  • Les bonnes pratiques et les pièges à éviter

 

Bonnes pratiques pour un mot de passe fort

Voici en résumé les bonnes pratiques pour avoir de bons mots de passe :

  • Inclure dans chaque mot de passe
    • des lettres majuscules,
    • des nombres,
    • des caractères minuscules,
    • des ponctuations/caractères spéciaux,
  • Mettre un mot de passe long  (10 caractères minimum conseillé).
  • et surtout utiliser un mot de passe différent pour chaque compte !

Pour compléter ces mots de passe forts, voici 2 dernières recommandations.

 

Les gestionnaires de mots de passe

Le premier c’est sur la gestion de ces mots de passe. C’est déjà difficile de devoir se rappeler de plusieurs mots de passe, alors si en plus ils sont tous complexes, ça relève juste de l’impossible. Et je te le dis tout de suite : les post-it, les fichiers texte  ou votre boite mail : c’est NIET!

Et c’est pour ça que je recommande d’utiliser des gestionnaires de mots de passe, les plus connu sont keypass, LastPass et Dashlane.

Pour ma part, j’utilise Dashlane qui est vraiment très complet mais les 3 font la même chose. Le principe c’est que vous n’ayez plus qu’à retenir un seul mot de passe maitre hyper complexe pour accéder à l’application et depuis cette application, vous pouvez retrouver tous les autres mots de passe dans ce coffre fort de mot de passe

Et en plus cerise sur le gateau : ça propose des services assez sympas de generateur de mots de passe sécurisé. Il n’y même plus besoin de se prendre la tête à trouver des mots de passe sécurisés.

Pour essayer Dashlane, voici un lien de parrainnage : https://www.dashlane.com/fr/cs/ycrr_7_6KUB1

Validation en 2 étapes

Et enfin, derniere recommandation, c’est que lorsque tu peux, active la validation en 2 étapes. Dans ce cas là, en plus du mot de passe pour se connecter, il faut entrer un code unique qui est envoyé par téléphone. Ce qui ajoute une étape de validation supplémentaire pour confirmer que tu es bien le propriétaire du compte.

Et même si le hacker a ton mot de passe, sans ton téléphone, c’est impossible pour lui de se connecter.

Personnellement, j’utilise la validation en 2 étapes pour mes compte Gmail et compte bancaire et iCloud.

Comprendre le DevOps en 8 minutes et en emojis!

 

Qu’est ce que le DevOps?

Pour mieux comprendre le DevOps, voyons d’abord un fonctionnement traditionnelle d’entreprise sans DevOps :

  • Les Développeurs (abrégé Dev) collectent les exigences du métier pour ensuite en développer le code.  
  • Ensuite cette même équipe de Dev teste le nouveau code de l’application puis la livre à l’équipe Production et Exploitation (abrégé Ops pour Operationnals).
  • Les Ops se charge de la mettre en production, puis de gérer son exploitation.

Cependant ce modèle pose des problèmes car les 2 équipes Dev et Ops donc ont objectifs complétement différents :

  • D’un côté, l’équipe Dev doit faire évoluer les applications le plus rapidement possible. C’est la recherche d’un time to market réduit, le time to market étant le délai entre l’idée initiale et sa concrétisation en production,
  • De l’autre côté, l’objectif principal d’une équipe Ops est de garantir la stabilité du système. Cela passe par un contrôle sévère des changements apportés au Système d’information. Une panne de la production peut coûter cher à l’entreprise (business perdu, image écornée, contraintes légales non respectées…).

L’antagonisme de ces objectifs cree des conflits d’intérêts entre ces 2 équipes :

  • Les Devs blament les Ops pour les retards et problèmes de livraison.
  • Les Ops tiennent l’équipe des Dev pour responsable des incidents en production liés à une mauvaise qualité du code

Bref c’est pas joli à voir…

L’approche DevOps cherche justement donc à réconcilier ces 2 mondes (d’où la contraction du terme DevOps). Le but est d’aligner leurs objectifs court terme différents  autour d’un objectif commun long terme : celui de la création de valeur pour l’entreprise.

Et cette création de valeur passe par 3 canaux:

  • Un time to market plus rapide
  • Des produits de qualité
  • Des équipes plus efficaces

 

Les grands principes du DevOps 

Cette approche DevOps repose sur 5 grands principes :

  • La culture de collaboration
  • L’automatisation
  • La création de valeur comme objectifs
  • La mise en place de métriques à tous les niveaux
  • Le partage comme valeur forte

Culture de collaboration :

  • Créer une culture de collaboration est très importante car elle permet de donner à toutes les équipes une vision globale du système d’information.
  • Le but ultime est de fluidifier et faciliter l’intercommunication entre Dev et Ops.

La recherche systématique de valeur ajoutée pour client :

  • Elle se décline à travers la mise en place d’un cycle d’amélioration continue, et donc la suppression des taches sans valeur ajoutée.
  • Mais aussi en les incitant les équipes à se concentrer sur la création de valeur business et la satisfaction client.

La mise en place de métriques :

  • Les métriques sont nécessaire car on ne peut parler d’amélioration que si l’on est capable de mesurer l’état initial, l’état final et l’évolution entre les 2 états.
  • Ce sont des métriques à tout les niveaux :  métriques, métriques d’équipe et la mesure de la satisfaction client)

Principe de partage au sens large :

  • Il s’agit de partager un objectif commun, mais aussi les problèmes, les connaissances et les REX.
  • Cela permet de faire émerger un sentiment d’entraite mais aussi des idées nouvelles.

 

Automatisation des processus :

Il se décline sur plusieurs niveaux :

  • Provisionning d’environnements automatisé pour les devs
  • Tests automatisés pour valider la qualité d’un nouveau code
  • Déploiements automatisés une fois que ce code est validé comme conforme à la qualité attendue

Tout ceci en vue de tendre vers le déploiement continu :

  • Le déploiement continu est une approche qui considère qu’une application doit être construite de telle manière à ce  qu’elle puisse être envoyée en production à tout moment (déploiement en production après validation par les tests)
  • L’idée est d’accélérer les cycles de mise en production pour une accélération du time to market.

 

 

 

Et en pratique?

Dans une entreprise Devops, on a alors la situation suivante :

  • Les Devs collectent les besoins métiers et développent un nouveau code de l’application pour répondre à ces besoins.
  • L’application est automatiquement compilés et testés à différents niveau. Si le code atteint le niveau d’exigences demandées en termes de qualité, l’évolution est livrés en production automatiquement et rapidement
  • En cas d’incident en prod, la nouvelle évolution peut être désactivée rapidement pour retourner sous l’ancienne version tout en remontant l’incident à corriger à l’équipe de dev
  • Le travail des Ops est quant à lui facilité  car les dev ont compris les contraintes de l’equipe de production et ont intégré ces problématiques d’exploitation et de production dans son code. Par exemple, le dev a intégré dans la conception de son application des métriques d’exploitation permettant de surveiller l’état de santé de l’application.
  • Les équipes opérationnelles comprennent ainsi mieux les besoins des développeurs pour permettre une meilleure optimisation des ressources de la production, un meilleur monitoring et une meilleure remontée d’erreur.

 

 

L'architecture technique en cookies