2
EXPERT EN DÉVELOPPEMENT DE COMPÉTENCES Page : 1/2 PLAN DE COURS LAMP ADMINISTRATION Objectif Découvrir l'architecture et les mécanismes des serveurs LAMP (Linux, Apache, MySQL, PHP). En maîtriser l'installation, la configuration et l'administration. Public Concerne Administrateurs de serveurs Web, développeurs de sites Web PHP sous Linux Pre-requis Connaissances de base des serveurs Linux, du Web et des applications Web Code LAMP100 Duree 5 jours Programme INTRODUCTION ÉLEMENTS ESSENTIELS D'ADMINISTRATION LINUX Le système Linux, les distributions La documentation Configuration TCP/IP de base Rappels sur le format des adresses IP Adresses IPv6 Adresses IPv4 Quelques adresses particulières Réseaux non connectés à l'Internet Sous-réseaux Interfaces physiques Résolution des noms Fichier /etc/hosts Aspect client DNS Routage Démons essentiels Superdémon inetd Superdémon xinetd Protocole SSH Utilisateurs et groupes Fichiers de configuration Le fichier /etc/passwd Le fichier/etc/group Le fichier /etc/shadow Gestion des groupes Gestion des comptes utilisateurs Démarrage et arrêt du système Chargement du système, activation du noyau Niveaux d'exécution Définition des niveaux Programme init - fichier/etc/inittab Syntaxe résumée du fichier/etc/inittab . . Exemples de fichier /etc/inittab Passage au mode multi-utilisateurs Arrêt et redémarrage Service cron de planification des travaux La commande crontab Autorisations Format des fichiers de requêtes La commande at Le fichier/etc/crontab Paquets logiciels Premier maillon du site LAMP : Service FTP anonyme Exemple RedHat avec le package rpm fourni par la distribution L'ESSENTIEL DU SERVEUR APACHE Le projet Apache Les versions Le protocole HTTP HTTP 1.0 HTTP 1.1 Quelques codes retour Les modules Terminologie et principes Liste résumée des modules Apache 2 Module core Modules de type MPM Modules de base Modules d'extension Modules de type expérimental Installation Étapes de l'installation Mise en ?uvre Premiers tests Accès à la documentation Les fichiers de configuration Premières directives essentielles ServerRoot Listen ServerName PidFile User Group ServerAdmin DocumentRoot DefaultType Alias Directives concernant les modules Sécurisation des répertoires Directory DirectoryMatch

LAMP A - iristraining.eu · Adresses IPv6 Adresses IPv4 Quelques adresses particulières Réseaux non connectés à l'Internet ... Le projet Apache Les versions Le protocole HTTP

Embed Size (px)

Citation preview

Page 1: LAMP A - iristraining.eu · Adresses IPv6 Adresses IPv4 Quelques adresses particulières Réseaux non connectés à l'Internet ... Le projet Apache Les versions Le protocole HTTP

EXPERT EN DÉVELOPPEMENT DE COMPÉTENCES

Page : 1/2

PLAN DE COURS

LAMP ADMINISTRATION Objectif

Découvrir l'architecture et les mécanismes des serveurs LAMP (Linux, Apache, MySQL, PHP). En maîtriser l'installation, la configuration et l'administration.

Public Concerne Administrateurs de serveurs Web, développeurs de sites Web PHP sous Linux

Pre -requis Connaissances de base des serveurs Linux, du Web et des applications Web

Code

LAMP100

Dure e 5 jours

Programme INTRODUCTION

ÉLEMENTS ESSENTIELS D'ADMINISTRATION

LINUX

Le système Linux, les distributions La documentation Configuration TCP/IP de base

Rappels sur le format des adresses IP

Adresses IPv6 Adresses IPv4 Quelques adresses particulières Réseaux non connectés à l'Internet Sous-réseaux

Interfaces physiques Résolution des noms

Fichier /etc/hosts Aspect client DNS

Routage Démons essentiels

Superdémon inetd Superdémon xinetd Protocole SSH

Utilisateurs et groupes

Fichiers de configuration

Le fichier /etc/passwd Le fichier/etc/group Le fichier /etc/shadow

Gestion des groupes Gestion des comptes utilisateurs

Démarrage et arrêt du système

Chargement du système, activation du noyau Niveaux d'exécution

Définition des niveaux

Programme init - fichier/etc/inittab

Syntaxe résumée du fichier/etc/inittab . . Exemples de fichier /etc/inittab

Passage au mode multi-utilisateurs Arrêt et redémarrage

Service cron de planification des travaux

La commande crontab Autorisations Format des fichiers de requêtes La commande at

Le fichier/etc/crontab

Paquets logiciels Premier maillon du site LAMP : Service FTP anonyme

Exemple RedHat avec le package rpm fourni par la distribution

L'ESSENTIEL DU SERVEUR APACHE

Le projet Apache

Les versions

Le protocole HTTP

HTTP 1.0 HTTP 1.1 Quelques codes retour

Les modules

Terminologie et principes Liste résumée des modules Apache 2

Module core

Modules de type MPM Modules de base Modules d'extension Modules de type expérimental

Installation

Étapes de l'installation Mise en ?uvre Premiers tests Accès à la documentation

Les fichiers de configuration Premières directives essentielles

ServerRoot Listen ServerName PidFile User Group ServerAdmin DocumentRoot DefaultType Alias Directives concernant les modules

Sécurisation des répertoires

Directory DirectoryMatch

Page 2: LAMP A - iristraining.eu · Adresses IPv6 Adresses IPv4 Quelques adresses particulières Réseaux non connectés à l'Internet ... Le projet Apache Les versions Le protocole HTTP

EXPERT EN DÉVELOPPEMENT DE COMPÉTENCES

Page : 2/2

Files FilesMatch Location SetHandler Location Match Options Contrôles d'accès Fichiers décentralisés .htaccess Visualisation des fichiers d'un répertoire

Pages personnelles Authentification des utilisateurs

Création des comptes Directives de configuration Exemple de mise en ?uvre

Hôtes virtuels

Hôtes virtuels basés sur l'adresse IP Hôtes virtuels basés sur le numéro de port Hôtes virtuels basés sur le nom

Fichiers de logs, gestion des erreurs

Archivage des accès au serveur Archivage des erreurs

Programmes CGI Performances

Serveurs n'utilisant pas les threads (module prefork)

Serveurs utilisant les threads (module worker)

Connexions sécurisées avec SSL

Algorithmes de chiffrement

Chiffrement symétrique Chiffrement asymétrique Signature électronique d'un message

Protocole SSL

Certificats Déroulement d'une connexion SSL

Mise en ?uvre de SSL pour

Bibliothèque OpenSSL Bibliothèque OpenSSL Obtention d'un certificat auprès d'une autorité officielle

Générer son propre certificat Configuration Apache

L'ESSENTIEL DU SERVEUR MYSQL

Présentation de MySQL

Versions, types de licences Nouveautés de la version 4.1 Objectifs de la version 5 Panorama des produits MySQL

Le SGBD MySQL MySQL Cluster MySQL Administrator MySQL Query Browser MaxDB MySQL et les autres SGBDs

Accès à la documentation

Installation

Installation depuis une distribution binaire précompilée

Changements de version

Prise en main et configuration

L'outil client mysql Création d'une base de données

Conception d'un schéma de base

Création d'une base

Fichiers de configuration

Importation et exportation de données

Importation de données

Ordres INSERT depuis un script SQL Commande SQL : LOAD DATA INFILE Commande mysqlimport

Exportation de données

Connexions et privilèges

Principe d'authentification et de vérification des droits

Niveaux de privilèges Table user Principe d'authentification Table db Tables tables_priv et columns_priv

Sécurisation de la post-installation

Suppression de la base de test Suppression de l'utilisateur anonyme Mot de passe du compte root

Gestion des utilisateurs et des privilèges

Privilèges définis par MySQL Création de compte - commande GRANT Mots de passe Suppression de droits - commande REVOKE Suppression d'un utilisateur

Types de tables

Tables MylSAM Tables MEMORY (ou HEAP) Tables MERGE Tables InnoDB

Définition résumée de la notion de transaction Implémentation InnoDB Création de tables InnoDB Paramètres de configuration

Fichiers logs

Journal des erreurs Journal des requêtes Journal binaire Journal des requêtes lentes

Sauvegardes

La commande mysqldump Commandes BACKUP TABLE / RESTORE TABLE Sauvegardes de fichiers (serveur arrêté) Réplication

INTRODUCTION AU LANGAGE PHP

Présentation du langage Installation Exemples commentés de programmes PHP

Syntaxes simples (boucle for et boucle while) Utilisation de fonctions Passage d'arguments par référence Variables d'environnement Traitement d'un formulaire simple Traitement d'un formulaire plus élaboré Lecture dans un fichier - affichage d'un QCM Interface avec MySQL - formulaire d'inscription

dans une base de données Interface avec MySQL - Sélection après

authentification Upload de fichiers