LAMP : 2ème Etape - INSTALLATION APACHE [DEBIAN]
DEBIANLINUXPAQUETSAPACHEVIRTUAL HOSTLe serveur a redémarré correctement et l’invite système est dispo.
Se logger en root, MotdePasse_root.
MISE A JOUR DE TOUS LES PAQUETS ET LE NOYAU
apt-get update
(pour mettre à jour la liste des paquets)
puis
apt-get upgrade
(pour mettre à jour les paquets eux-même)
Astuce : A n’importe quel moment, si le système de mise à jour demande le cd et pour éviter de l’insérer à chaque fois, il suffit de commenter la ligne dans source.list. Pour ce faire, taper la commande nano /etc/apt/sources.list ou vi /etc/apt/sources.list , et mettre en commentaire la ligne deb/cdrom. Ainsi, le système ne demandera plus le cd et ira chercher les informations sur le net.
Ensuite, l’installation d’apache passe par les étapes suivantes :
– installation des paquets d’apache, et intégration des paquets ssl à apache.
– configuration d’apache et création des virtual hosts
– paramétrer les ports d’écoute d’apache
– création des répertoires d’accueil pour héberger les sites décrits dans les virtual hosts.
– générer les certificats ssl pour les connections sécurisées
INSTALLATION DES PAQUETS D’APACHE
Installation des paquets de base d’apache :
apt-get install apache2
Installation des librairies ssl pour apache :
apt-get install libapache-mod-ssl
Intégration des librairies ssl dans apache :
a2enmod ssl
Relance obligatoire d’apache avec rechargement de ses fichiers de config :
/etc/init.d/apache2 force-reload
NOTES PARTICULIERES SUR CES COMMANDES
La deuxième commande installe l’interpréteur de commande ssl (pour les sites sécurisés utilisant le ssl ) - egroupware par exemple.
Attention : bien installer ce deuxième module ci-dessus (ibapache-mod-ssl) et surtout pas apache-ssl qui est un serveur web à part entière qui entre en conflit avec apache2.
Apache dispose de son interpréteur de commande (comme mysql par exemple). Pour intégrer la librairie ssl à apache, il a fallu exécuter la commande A2 (qui est une commande debian installée par apache - se référer à la doc d’apache2). Cependant on peut avoir l’intuition de demander au système toutes les commandes qui commencent par "a" comme apache. Pour cela, taper "a", puis tabulation deux fois. Debian affiche toutes les commandes commençant par a.
CONFIGURATION D’APACHE - VIRTUAL HOSTS
Dans /etc/apache2/ se trouvent tous les fichiers de configuration d’apache.
Les virtual-hosts :
cd sites-enabled
Puis éditer le fichier 000-default
vi 000-default
Pour éviter d’ouvrir tous les ports, remplacer les * par les adresses ip, suivies du port utilisé (ouvert).
CONTENU D’UN FICHIER DE CONFIGURATION COMMENTE
Le fichier est joint à l’article sans les commentaires.
PARAMETRER LES PORTS D’ECOUTE D’APACHE
Editer le fichier /etc/apache2/ports.conf.
Vérifier que les lignes suivantes soient présentes :
Listen 80
Listen 443
CREATION DES REPERTOIRES D’ACCUEIL
cd /var/www/
mkdir www.inter
mkdir www.intra
mkdir www.egroup
La commande ls -l permet de vérifier que les créations ont bien été faites. Cependant, on remarque la présence du répertoire apache2-default, qui correspond au répertoire par défaut d’apache qui permet de vérifier le bon fonctionnement d’apache, et qui peut être utilisé sans modifier les fichiers de configuration. http://192.22.1.1/ sur un explorateur internet doit aboutir sur cette page par défaut.
GENERER LES CERTIFICATS SSL
Pour se connecter en ssl, il faut générer un certificat électronique qui se présentera sous la forme de plusieurs fichiers, qu’on copiera dans le dossier d’apache2, et qui seront utilisés à chaque connection ssl par les accès virtual host. (l’accès à ces certificats est décrit dans le fichier de configuration que nous avons évoqué ci-dessus.)
Un lien utile pour générer les certificats
- Installer le paquet open-ssl
apt-get install openssl
- se placer dans le rep apache2, pour que les certificats soient générés au bon endroit.
cd /etc/apache2
- générer la clé privée (stockée sur le serveur - server.key)
openssl genrsa -out server.key 1024
- générer le certificat autosigné (clé publique, accès public, stockée sur le serveur - server.crt)
openssl req -new -x509 -days 1000 -key server.key -out server.crt
Ici, il est intéressant de noter que la clé publique est générée pour 1000 jours, et qu’il faudra le renouveler à la fin de cette période pour accéder en ssl aux services. Même commande en cours de description.
Le système renvoit au retour de la commande ci-dessus, les demandes de précision suivante :
Initiales du Pays :
Country Name (2 letter code) [AU] :
Réponse : FR
State or Province Name (full name) [Some-state] :
Réponse : Rhône-Alpes
Locality Name (eg. city) [] :
Réponse : MaVille .. attention, ne pas mettre d’accent ...
Organization Name (eg, Company) [Internet Widgits Pty Ltd]
Réponse : MonEntreprise ... attention les accents....
Organizational Unit Name (eg, section) [] :
Réponse : MonService
Common Name (eg, YOUR name) [] :
Réponse : MonNom
Email-Adress [] :
Réponse : MonAdresseEmail
Les fichiers nécessaires aux connections ssl sont générés, il s’agit des fichiers /etc/apache2/server.crt et /etc/apache2/server.key.
APACHE EST INSTALLE (BRUT DE FONDERIE..)
On peut se connecter en ssl et http, sur des sites statiques à ce stade.
Pour héberger des sites dynamiques, il faut aussi installer php, mysql, etc ...
REGLER LES PROBLEMES D’ACCENTS
Si vous avez installé apache sur un serveur avec le jeu de caractères utf8, et si vous exporter des bases mysql d’un autre serveur avec un jeu de caractère différent (par ex ISO-8859-15), pour les importer dans votre serveur tout neuf, vous aurez la désagréable surprise de trouver de nombreuses anomalies dans les affichages de caractères accentués.
Pour réparer celà, il est nécessaire de préciser à apache le jeu de caractères supplémentaires à utiliser.
Pour celà, il suffit de retrouver dans /etc/apache2/apache2.conf la ligne
#AddDefaultCharset ISO-8859-15 pour la décommenter (enlever le #)
Documents joints
000 default - Zip - 885 octets