18/01/2025

Auteur : Mickael Dorigny

Mickael Dorigny
  • Co-founder
  • 524 articles

Co-fondateur d'IT-Connect.fr. Auditeur/Pentester chez Orange Cyberdéfense.

Base de donnéesServices

Installation/Upgrade MySQL 5.1 vers 5.6 sous CentOS 6

I. Présentation Dans ce tutoriel, nous allons voir la procédure pour mettre à jour ou MySQL version 5.1 (version standard dans la plupart des distributions stables) vers la version 5.5 ou plus simplement installer la version 5.6 si aucune version précédente n’est présente. Nous verrons le détail de cette procédure sous un CentOS 6. Note importante : Par sécurité, je vous conseille vivement de sauvegarder vos bases de données avant toute manipulation afin d’être capable de les restaurer en cas de corruption ou autre problème, je vous oriente vers ce tutoriel pour le faire rapidement. Une fois le backup effectué, nous pouvons commencer par vérifier la version actuelle de notre serveur MySQL (dans le contexte d’une mise à jour, n’effectuez pas cette commande si aucun MySQL n’est installé). On se connecte pour cela en ligne de commande à notre serveur : mysql -u root -p On voit donc ici que nous sommes en version 5.1. II. Téléchargement des dépôts et

Lire cet article
WordPress

Astuce WordPress : Mettre une image dans son menu

I. Présentation Je vais ici partager avec vous une petite astuce pour mettre rapidement et facilement une image dans son menu WordPress. Il faut pour cela disposer d’un thème WordPress avec un menu standard. Je ne sais pas si l’astuce fonctionne avec 100% des menus mais elle devrait fonctionner pour un menu et un thème standard (horizontal). II. Mettre une image dans le menu On va commencer par uploader notre image (dans un format assez petit car l’image n’est pas facilement réductible lors de son affichage). Je choisis par exemple l’icône d’IT-Connect en 48px * 48px. On va donc dans notre Back-office WordPress et on se rend dans « Média » puis « Ajouter » : On upload donc notre image puis on va cliquer sur « Modifier » : On pourra alors récupérer l’URL de notre image pour pouvoir l’afficher : En gardant cette URL, nous allons maintenant aller dans « Apparence » « Menu » : On va alors ajouter une simple page (peu importe son nom, il

Lire cet article
Commandes et Système

Ajouter un disque dur sous Linux

I. Présentation Quand l’espace disque commence à se faire rare, il devient intéressant d’ajouter un disque dur sur son poste ou son serveur. En ligne de commande, c’est un processus qui peut être flou et que nous allons détailler ici. Nous allons en effet voir comment ajouter un disque dur, le partitionner et le monter pour qu’il fasse partie intégrante de votre système et ce même après un reboot. On va donc voir une procédure globale qui peut être modifiée à tout moment selon besoin (autre système de fichier, plusieurs partitions, etc.) II. Disque dur où es tu ? La première étape consiste tout simplement à trouver notre disque, en s’étant auparavant assuré qu’il est bien branché et connecté (dans le cas d’une machine virtuelle par exemple) à notre machine, on va se rendre dans le dossier /dev qui contient les « devices » (périphériques). Ici une petite précision s’impose. Sous la majorité des distributions Linux on trouvera une convention de nommage

Lire cet article
Commandes et SystèmeServices

Surveiller les accès au fichier /etc/passwd avec auditd

I. Présentation Je vais ici vous présenter une méthode pour surveiller les accès au fichier « /etc/passwd ». Je note que je viens de découvrir l’outils qui a l’air de contenir des contextes d’utilisation vraiment étendues et intéressants et qui sert globalement à surveiller (auditer) les accès aux fichiers sous une distribution Linux (En sachant que sous Linux, tout est fichier). Notre contexte d’utilisation sera ici le fichier « /etc/passwd » mais on pourrait tout à fait adapter le tutoriel pour un autre fichier. II. Installation Nous allons maintenant installer l’outil (qui est nativement présent sur les distributions CentOS/RHEL). Sous CentOS : yum install auditd Sous Debian : apt-get install auditd On retrouvera donc ensuite la configuration d’auditd dans « /etc/audit/auditd.conf » (Je pense que je ferais un tutoriel plus complet pour décrire complètement auditd un peu plus tard) et l’état des règles qui régissent le périmètre de surveillance d’auditd dans « /etc/audit/auditd.rules ». On peut noter les règles dans ce fichier puis recharger la configuration ou alors

Lire cet article
Base de données

Installation/Upgrade MySQL 5.1 vers 5.5 sous CentOS 6

I. Présentation Dans ce tutoriel, nous allons voir la procédure pour mettre à jour ou MySQL version 5.1 (version standard dans la plupart des distributions stables) vers la version 5.5 ou plus simplement installer la version 5.5 si aucune version précédente n’est présente. Nous verrons le détail de cette procédure sous un CentOS 6. Note importante : Par sécurité, je vous conseille vivement de sauvegarder vos bases de données avant toute manipulation afin d’être capable de les restaurer en cas de corruption ou autre problème, je vous oriente vers un de nos tutoriel traitant de la sauvegarde rapide en ligne de commande de base de données MySQL Une fois le backup effectué, nous pouvons commencer par vérifier la version actuelle de notre serveur MySQL (dans le contexte d’une mise à jour, n’effectuez pas cette commande si aucun MySQL n’est installé). On se connecte pour cela en ligne de commande à notre serveur : mysql -u root -p On voit donc

Lire cet article
Base de donnéesCommandes et Système

Sauvegarder une base de données rapidement sous MySQL avec mysqldump

I. Présentation Dans un précédent tutoriel, je vous avais présenté un script qui permettait de sauvegarder une base ou un ensemble de bases de données MySQL. Ce script peut être un peu trop complexe pour une utilisation plus simple de l’outil de sauvegarde disponible nativement dans MySQL, je vais donc vous rappeler ici comment sauvegarder rapidement une base de données MySQL sous Linux en ligne de commande. II. Commande MySQLDump On va donc utiliser la commande MySQLDump qui permet de sauvegarder une base de données pour la stocker dans un fichier .sql que l’on pourra réintégrer plus tard. En somme le fichier .sql contiendra un ensemble de commandes qui, quand il sera lu par MySQL, remettra les données à leur état d’origine (quand elles ont été sauvegardées). MySQLDump est donc directement inclus lors de l’installation d’un serveur mysql. Supposons que l’on souhaite sauvegarder la base de données « web01 » dans le fichier « web01_jeudi19nov.sql », on utilisera la commande suivante : mysqldump -u

Lire cet article
Serveur Web

Serveur web mutualisé (5/5) : Des pistes de sécurisation

I. Présentation Dans les précédents billets, nous avons donc vu ce qu’était un serveur web mutualisé, de quoi il était constitué et pourquoi sa structure globale pouvait être facilement déjouée pour outre-passer les limitations standards mises en place. Dans le dernier billet de ce dossier, nous allons étudier des pistes pour sécuriser les vulnérabilités aperçues précédemment. Loin de moi l’idée de proposer une solution 100% sécurisée qui révolutionnerait le marché, je vise plutôt dans ce billet à donner des débuts d’idées et des pistes à parcourir pour arriver à résoudre certains problèmes rencontrés. II. Récapitulatif Il convient tout d’abord de poser sur la table les principaux points qui posent problèmes dans notre contexte : Un serveur web mutualisé héberge par définition plusieurs sites qui tournent donc tous sur le même utilisateur De ce fait, l’exécution d’un script menant des actions sur le serveur via cet utilisateur par les clients pose un problème de sécurité car ces derniers peuvent profiter des

Lire cet article
Serveur WebServices

Serveur web mutualisé (4/5) : Problème de sécurité

I. Présentation Dans nos précédents billets sur ce sujet, nous avons vu ce qu’était un serveur web mutualisé, leurs avantages et leurs limites et nous avons également vu leur architecture et fonctionnement général au niveau technique. En fin de la construction de cette architecture, nous avons été confronté à un problème de droit qui nous a forcé à élargir un peu plus les droits par défaut des répertoires web des clients. A travers ce post je vais montrer en quoi cet ajout de droit pose un problème majeur au sein des serveurs web mutualisés utilisant le couple habituel Apache/PHP, ce qui est le cas de la plupart d’entre-eux ! II. États des lieux Nous savons donc que pour fonctionner, les utilisateurs uploads leurs fichiers via un service FTP qui leur est dédié est par lequel ils accèdent à leur espace web qui est chrooté. Pour que ces fichiers soient immédiatement lisibles et traités par Apache via HTTP, nous sommes contraints

Lire cet article
Serveur WebServices

Serveur web mutualisé (3/5) : Architecture basique

I. Présentation Dans de précédents billets (concept et limites), nous avons vu en quoi un serveur web mutualisé consistait et quelles étaient leurs limités générales. Nous allons ici aborder un post un peu plus technique où nous allons, pour mieux les comprendre, monter une architecture système qui nous permettrait de faire tourner un serveur web mutualisé (aussi basique soit il). Je ne prétends pas ici révolutionner le serveur web mutualisé mais au contraire montrer de quoi il est, en théorie, composé et faire en sorte que les services que nous allons installer permettent un fonctionnement global pouvant être assimilé à celui d’un serveur web mutualisé. II. De quoi a t-on besoin ? Comme nous l’avons résumé dans le précédent billet sur le sujet, nous avons vu que le serveur web mutualisé a besoin de plusieurs services basiques pour être considéré en tant que tel : Chaque accès utilisateurs ayant alors besoin d’un accès au FTP, au minimum une base de

Lire cet article
Serveur Web

Serveur web mutualisé (2/5) : Les limites

I. Présentation Dans un précédent billet, j’ai tenté d’expliquer de façon non technique ce qu’était un serveur et un hébergement web mutualisé. Nous avons vu que ce type d’hébergement permettait d’avoir assez simplement un espace qui nous est réservé dans l’infrastructure d’un hébergeur afin d’y mettre nos sites web et nos applications web. Nous allons ici voir les différentes limites que peut présenter le choix d’un hébergement dans un serveur web mutualisé. II. Un espace dans un Datacenter avec des limites ? Eh bien oui, un hébergeur a tout intérêt, pour que la colocation de tous ses clients se passe bien au sein d’un même serveur, à instaurer des limites (voulues ou non), par le biais de droits par exemple mais aussi techniquement. Nous avons précédemment vu qu’un serveur web mutualisé consistait en l’utilisation d’une même ressource (la plus simple étant l’espace du disque dur) par plusieurs clients (comprendre sites web). Un site web (avec sa base de données) peut

Lire cet article
Serveur Web

Serveur web mutualisé (1/5) : Le concept de la mutualisation

I. Présentation Ces derniers temps on voit passer sur les différents médias de publicités diverses offres de stockage, Cloud, hébergement de site web ou plus simplement dit d’hébergement mutualisé. Bien qu’il ne faille pas confondre ces différents éléments, il convient de les expliquer et de les détailler. Nous allons ici nous intéresser au concept de la mutualisation et plus précisément des serveurs web mutualisés qui sont aujourd’hui la base de nombreux sites web, le tout de façon non technique pour que les bases soient comprises de tous. Amazon, OVH, 1&1, tout le monde connait à présent ces géants du web, leur proposition comme « 1&1 my website », un service de création et d’hébergement 1&1, par exemple. On en connaîtrait même leur prix par cœur ! Mais qu’est ce que tout cela cache ? II. Mais, un serveur web mutualisé, c’est quoi au juste ? Un serveur web mutualisé est donc une infrastructure qui se monte sur la base du Cloud (stockage

Lire cet article
Commandes et Système

Commande shutdown, init 6, reboot, etc, quelle différence ?

I. Présentation Comme beaucoup d’entre vous l’ont probablement déjà remarqué, il existe de multiple commande et façon d’éteindre son système quand on se trouve sous Linux, reboot, halt, poweroff, init 6, init 0, shutdown -r et -h sont des commandes que l’on utilise souvent sans connaitre leur différence, c’est ce que nous allons voir ici. II. Les commandes Il convient ici de commencer par les commandes les plus basiques, ou disons plutôt celles qui sont à la source des autres. Je parle ici de la commande « init » et de ses paramètres « 6 » et « 0 ». La commande init et l’outil qui y est associé permet de gérer le « run-level » du système et des processus qui tournent dessus. Pour faire rapide, un run-level de 0 décrit un système en train de s’arrêter et un run-level de 6 décrit un système en train de redémarrer. Cela a une importance car la mise en run-level 0 ou 6 permet d’envoyer des instructions aux différents

Lire cet article
CloudLogiciels

Serveur Firefox Sync dans Owncloud

I. Présentation Dans ce tutoriel, nous allons apprendre à utiliser et configurer Owncloud pour qu’il fasse également office de serveur de Synchronisation Firefox. En effet, une fonctionnalité dans Firefox permet de synchroniser ses mots de passe, favoris et historiques entre plusieurs périphériques connectés au même compte Firefox Sync. On peut librement utiliser les serveurs de Firefox pour le côté serveur mais on peut également si on le souhaite utiliser un serveur personnel qui sera ici notre Owncloud. Pour ce tutoriel, on part du principe que nous disposons d’un Owncloud 6 opérationnel et disponible sur le réseau. II. Création du serveur Firefox Sync sur Owncloud On se connecte donc sur notre serveur Owncloud sur lequel on s’authentifie avec un profil disposant des droits administrateurs : Il nous faut maintenant ajouter une fonctionnalité qui n’est pas présente par défaut dans Owncloud, pour cela, on va se rendre dans le « + applications » présent en bas à droite : On va ensuite aller chercher

Lire cet article
ApacheAutresMicrosoft IIS

Qu’est ce que le Directory Browsing/Listing ?

I. Présentation Dans ce tutoriel, nous allons parler du Directory Browsing (navigation dans les répertoires) aussi appelé Directory Listing (Listage de répertoire). Nous allons voir comment il peut être utilisé, pourquoi il peut être un danger et comment l’activer et le désactiver sous les serveurs web Apache et IIS. II. Qu’est ce que c’est  ? Le Directory Browsing ou Listing est le fait de donner la possibilité aux visiteurs d’un site web de voir et d’afficher le contenu d’un répertoire en « brut ». Habituellement, les serveurs web affichent des pages web (HTML, PHP, etc.), il est plus rare de trouver un répertoire affiché tel quel lorsque l’on visite un site web. Cela peut toutefois être utile, prenons par exemple les espaces web mettant à disposition des utilisateurs des fichiers à télécharger : En quoi est-ce un danger ? Il n’est pas toujours souhaitable de voir tous les fichiers d’un dossier web s’afficher aux yeux des visiteurs, je pense notamment à des

Lire cet article
Apache

Documents par défaut – Apache

I. Présentation Dans ce tutoriel, nous allons voir comment gérer les documents par défaut dans le serveur web Apache. Pour information, un document par défaut est un fichier (nom + format) que le serveur web va automatiquement charger si il se trouve dans un répertoire web visé par un client. Concrètement, « index.html » est un fichier par défaut sur tous les serveurs web. Si un client se rend dans un répertoire web sans spécifier de fichier, le serveur web ira lire les documents par défaut qu’il peut charger puis essayer de les trouver dans le répertoire en question. S’il en trouve un, il le chargera plutôt que d’afficher le contenu du répertoire web. II. Configuration Apache Dans Apache, on peut effectuer cette modification des documents par défaut dans la configuration du virtualhost ou du site en question (/etc/apache2/sites-enabled) ou alors dans un .htaccess si nous n’avons pas accès à la configuration du serveur web (dans le cas d’un hébergement mutualisé par

Lire cet article