Location via proxy:   [ UP ]  
[Report a bug]   [Manage cookies]                

Chapitre5 Apache

Télécharger au format pdf ou txt
Télécharger au format pdf ou txt
Vous êtes sur la page 1sur 26

SERVICES RESEAUX ET SECURITE

SOUS LINUX

services réseaux Apache HTTPD


Le serveur HTTP (Hypertext Transfer Protocol) , ou serveur web, est un service réseau qui
délivre au client un contenu, page web, à travers le réseau. Il fournit également d’autre type
de fichier pdf, jpg, La version apache disponible sur la RHEL7 est la 2,4 developé par
Apache Software Foundation,

Notre objectifs est :


Identifier les principaux fichiers de configuration, les fichiers logs, le dossier de données
utilisé par le service apache httpd,
Configurer le serveur httpd pour avoir des hôtes virtuels basés sur le nom ou sur l’IP,
Configurer un serveur sécurisé à travers le protocole cryptographique TLS,
Le serveur Apache HTTPD
Le serveur apache est l’un des serveur web le plus utilisé sur internet, un serveur web communique à
travers le protocole HTTP(S),
Le protocole HTTP communique en claire sur le réseau et est accessible sur le 80/TCP par défaut , la
version cryptée par TSL/SSL, le protocole HTTPS, utilise le port 443/TCP par défaut,

D’une manière basique, nous avons le client qui initie la connexion vers le serveur et qui sollicite une
ressource avec la commande http GET, HEAD , POST s’il désire uniquement le méta donnée ou s’il
envoie des informations supplémentaires au serveur,
Configuration
Les fichiers de configuration de chargement des modules sont placés dans le dossier
/etc/httpd/conf.modules.d. les fichiers placés dans ce dossier sont traité avant le fichier
principal httpd.conf qui, lui se trouve dans le dossier /etc/httpd/conf
Les fichier de configuration place dans /etc/httpd/conf. d sont traité après le fichier httpd.
conf.
Voir la documentation installée
Lancement du service httpd
Avant tout, il est indispensable d’installer apache. Pour ce faire utiliser la commande

# yum install httpd

ou vous pouvez vérifier s’il est déjà installé avec la commande

#rpm –qa| grep http


Demarrer le service
# systemctl start httpd. service

Si vous souhaité que le service démarre automatiquement au démarrage du système

#systemctl enable httpd. service

Arrêter le service
pour arrêter le service:

# systemctl stop httpd. service

Pour éviter que le service démarre automatiquement au lancement du système


# systemctl disable httpd. service
Redémarrer le service
nous avons trois possibilités pour le redémarrage du service
1. pour redémarrer complètement le service:
# systemctl restart httpd.service
cette commande stop le service httpd en cours d’ exécution immédiatement et le démarre ensuite. On
peut utiliser cette commande après une installation/ désinstallation d’un module dynamique(exemple
PHP).
2. pour juste recharger la configuration du service:
# systemctl reload httpd.service
le service httpd recharge sa configuration . Toute requête en cours de traitement sera interrompu
3. Pour recharger la configuration sans affecter les connections actives
# service httpd graceful
toute requête en cours de traitement sera traité en fonction de l’ancienne configuration,
Autorisation Firewall

#firewall-cmd --permanent --add-service=http --add-service=https


#firewall-cmd --reload

Modification du fichier de configuration


Au démarrage sur service httpd, par défaut, il charge les fichiers de configuration ci dessous
Les hôtes virtuels
Le mécanisme d’hôte virtuel permet à un serveur apache de pouvoir fournir le contenu web sur
plusieurs domaines , les hôte virtuels peuvent être basé sur l’adresse IP du serveur , le nom d’hôte
sollicité par le client ou une combinaison des deux.
Généralement nous pouvons créer un fichier dans /etc/httpd/conf.d
Configuration HTTPS
FONCTIONNEMENT CONFIGURATION

1. Obtenir un certificat
2. Installer le module TLS
3. Configurer un hôte virtuel qui
supporte le TLS
1. Obtenir un certificat
On a le choix entre un certificat auto-signé ou créer une requête de certificat « certificat request »
que l’on transmet à un CA reconnu qui va le signer pour obtenir un certificat

Les commandes de créations sont fournies par crypto-utils. La commande principale est genkey,
Syntaxe:
#genkey <FQDN>
<FQDN> Nom pleinement qualifié que les clients utiliserons pour contacter le serveur.
Après création des fichiers
/etc/pki/tls/private/<fqdn>.key: la clé privée avec les permission 0600 ou 0400 et le contexte
Selinux cert_t.
/etc/pki/tls/certs/<fqdn>.0.csr si nous voulons faire signer la clé par une CA, c’est ce fichier que
nous enverrons,
/etc/pki/tls/certs/<fqdn>.crt certificat public, ce fichier est généré quand nous auto-signons notre
clé. Si nous avons envoyé une requête, ce fichier correspondra au retour du CA. Les
permissions seront 0644 et le context SELinux cert_t,
Installation et configuration du module SSL
Après installation du module, un site virtuel TLS est configuré par défaut dans le fichier
/etc/httpd/conf.d/ssl.conf
Exemple de configuration
Erreurs courantes lors de la configuration des hôtes virtuels

Oublier de spécifier le DocumentRoot pour l’hôte


Pas de DocumentRoot par défaut avec la bonne étiquette SELinux
Pas de résolution de nom

Vous aimerez peut-être aussi