Vous êtes sur la page 1sur 38

Table des matires

Liste des abrviations .............................................................................................................................. 3 Introduction ............................................................................................................................................. 4 I. 1. 2. II. 1. 2. 3. 4. 5. 6. 7. 8. Prsentation de CentOS ................................................................................................................... 5 Les avantages de CentOS.......................................................................................................... 5 Les inconvnients de CentOS .................................................................................................. 5 Configuration des services ............................................................................................................... 6 Apache ........................................................................................................................................ 6 Installation dapache ............................................................................................................. 6 Configuration ......................................................................................................................... 7 MySQL ....................................................................................................................................... 9 Instalation MySQL ............................................................................................................... 9 Configuration ....................................................................................................................... 10 PHP ........................................................................................................................................... 12 Installation de PHP ............................................................................................................. 12 Test........................................................................................................................................ 13 Phpmyadmin ............................................................................................................................ 14 Installation de phpmyadmin............................................................................................... 14 Test........................................................................................................................................ 15 Webmin .................................................................................................................................... 16 Installation de webmin ....................................................................................................... 16 Test........................................................................................................................................ 16 FTP ........................................................................................................................................... 17 Installation VSFTPD .......................................................................................................... 17 Configuration ....................................................................................................................... 18 Test........................................................................................................................................ 18 DNS ........................................................................................................................................... 19 Installation de DNS ............................................................................................................. 19 Configuration ....................................................................................................................... 19 SSH ........................................................................................................................................... 24 Installation de OpenSSH..................................................................................................... 24

9. 10. 11. 12.

Configuration ....................................................................................................................... 25 Pop Imap .................................................................................................................................. 27 Installation dovecot ............................................................................................................ 27 Configuration ....................................................................................................................... 28 Test........................................................................................................................................ 28 Postfix ................................................................................................................................... 29 Installation de postfix ......................................................................................................... 30 Configuration ....................................................................................................................... 30 Htaccess ................................................................................................................................ 31 Les captures du site web ..................................................................................................... 35

Conclusion.............................................................................................................................................. 36

Liste des abrviations

PHP: RHEL: RHN: SELinux: RPM: HTTP: RFC: API: SQL: CGI: ASP: FTP: BSD: DNS: SSH: POP: IMAP:

Personal Home Page (Hypertext Preprocessor) Red Hat Enterprise Linux Red Hat Network Security-Enhaced Linux Red Hat Package Manager Hypertext Transfer Protocol Requests For Comments Application Programming Interface Structured Query Language Common Gateway Interface Active Server Page de Microsoft File Transfer Protocol Berkeley Software Distribution Domain Name System Secure Shell Post Office Protocol Internet Message Access Protocol

Introduction
Pour complter notre formation en premire anne cycle ingnieur et pour clturer le module Technologies web il nous a t attribu de configurer les diffrents services du systme dexploitation CentOS et la ralisation dun site web en php sous Linux; pour une liaison entre le systme dexploitation et la programmation web. CentOS a un grand nombre d'avantages par rapport aux autres systmes d'exploitation, surtout en ce qui concerne la facilit de la configuration des services, puisque la documentation et les tutoriaux sont disponibles que ce soit sur internet ou en bouquin. Dans ce rapport, on prsentera une vision sur le projet effectu et plus de dtails propos des tches effectues.

I. Prsentation de CentOS
CentOS(abrviation de Systme communautaire d'exploitation d'entreprise) de la distribution Linux est une entreprise de qualit, librement disponible, le systme d'exploitation open source qui est driv du code source de Red Hat Enterprise Linux (RHEL) et dvelopp et maintenu par le projet CentOS. Le projet CentOS est plus que juste une distribution Linux. Les membres du projet travaillent fournir un appui, du matriel de formation, et, dans l'avenir, mme des certifications. Bien qu' sa base, le projet CentOS englobe tout un cosystme de logiciels, dveloppeurs, et des projets. i
1.

Les avantages de CentOS


Support gratuit, mises jour applicatives et les patchs de scurit rguliers. Stabilit quasi-quivalente la distribution Red Hat utilis dans de gros environnements de production.

Cycle de dveloppement suivant celui de Red Hat (7ans pour une release). L'outil "YUM" facilitant l'exploitation et la gestion des paquets au format RPM. Arrive du projet Spacewalk (driv de RHN Satellite) offert par Red Hat la communaut. Nombreux manuels en ligne (en anglais et en franais) de Red Hat, 100% compatibles CentOS Linux. SELinux pour les contraintes de scurit.ii

2. Les inconvnients de CentOS


Absence des supports applicatifs de la part des gros fabricants de matriels. Limite au niveau des dpts standards fournissant les paquets RPM. Difficult de cration de ses propres paquets RPM.

II. Configuration des services


Apache
Apache est le serveur web le plus rpandu sur Internet (50% des serveurs en sont quips1). Il s'agit d'un programme qui tourne sur une machine (un serveur ou sur un poste en local) qui permet des clients d'accder des pages web, ou tout autre fichier prsent sur le serveur partir d'un navigateur ou tout autre programme supportant le protocole HTTP. Apache dispose de nombreuses fonctionnalits, il permet l'utilisation de modules, la possibilit de dfinir une configuration spcifique pour chaque rpertoire partag, des restrictions, ... Il est souvent utilis avec des modules comme Perl et/ou PHP afin de rendre le contenu des pages dynamiques. C'est un serveur web HTTP aussi flexible que puissant Il implmente les derniers protocoles, HTTP/1.1 (RFC2616) inclus Il supporte des modules externes 100% configurables Il peut tre personnalis en crivant soi-mme ses propres modules en utilisant l'API Apache Son code source est disponible et est accompagn d'une licence non restrictive Il peut tourner sous la plupart des plateformes existantes (autant base UNIX que NT) Il est souvent mis jour par une quipe trs active Il est test en permanence, et les bugs sont corrigs rapidement.iii Installation dapache Avec ligne de commande : - yum install httpd

11

Netcraft en date de janvier 2008


6

Configuration

Nous avons cr une page index.html dans le rpertoire /var/www/html

Lexcution du programme

MySQL
MySQL, le plus populaire des serveurs de bases de donnes SQL Open Source, est dvelopp, par MySQL socit distribu AB. MySQL et support une les

AB est par

commerciale,

fonde

dveloppeurs de MySQL, qui dveloppent leur activit en fournissant des services autour de MySQL. MySQL est un systme de gestion de bases de donnes. MySQL est un serveur de bases de donnes relationnelles. MySQL est Open Source. Le serveur de bases de donnes MySQL est trs rapide, fiable et facile utiliser MySQL Server fonctionne en mode client/serveur ou en systme embarqu. iv Instalation MySQL v

Yum install mysql mysql-server

Configuration

10

11

PHP
PHP, (Personal Home Page) est un langage de programmation complet, assez proche du C. Il fournit : des structures de donnes. des structures de contrle. des instructions de gestion des entres/sorties. Il est diffus galement sous licence libre. Il permet la cration de pages web dynamiques. Il est considr comme une alternative CGI, Perl, ASP (Active Server Page de Microsoft). Dvelopp l'origine pour Linux, il est maintenant portable sur plusieurs environnements (Windows 9.x, NT).vi Installation de PHP Yum install php

12

Test Programme de la page php

13

Sous Windows

Phpmyadmin
Installation de phpmyadmin On tlcharge les sources depuis le site officiel vii wget http://surfnet.dl.sourceforge.net/sourceforge/phpmyadmin/phpMyAdmin-3.1.1-all-

languages.tar.gz

14

Puis on extrait le tout dans notre rpertoire web (on dira ici que cest /var/www/) cd /var/www/ tar xvzf phpMyAdmin-3.1.1-all-languages.tar.gz On va utiliser leur fichier exemple comme fichier de configuration Mv phpMyAdmin-3.1.1-all-languages phpmyadmin cd phpmyadmin cp config.sample.inc.php config.inc.php vi !$ Ce qui est ncessaire dans ce fichier? $cfg['blowfish_secret'] = '2454kndfjn0987'; //entrer ici une suite de caracteres

alphanumerique au hasard $i=0; $i++; $cfg['Servers'][$i]['auth_type'] = 'cookie';

Test

15

Webmin
Webmin est un programme qui simplifie ladministration des systmes Linux ou Unix. En effet pour crer des comptes, installer un serveur web ou configurer un serveur de messagerie, il faut gnralement diter la main les fichiers de dadministration systme se trouve alors grandement simplifi.viii

configuration ou excuter des commandes. Webmin permet de raliser ces tches via une interface web en mettant jour toute la configuration ncessaire. Le travail

Installation de webmin ix Pour installer le webmin on tlcharge le paquet suivant : wget http://prdownloads.sourceforge.net/webadmin/webmin-1.400-1.noarch.rpm rpm -ivh webmin-1.400-1.noarch.rpm Test

16

FTP
Le serveur FTP (File Transfer Protocol) permet, comme son nom l'indique de transfrer des fichiers par Internet ou par le biais d'un rseau informatique local ProFTPd. Pure-FTP. VsFTPd.x

(intranet). Si vous en avez l'autorisation, vous pouvez tlcharger et envoyer des fichiers sur un ordinateur distant faisant fonctionner un tel serveur. Le port par dfaut et le plus souvent utilis est le port 21. On trouve de nombreux serveurs FTP pour Linux/Unix/BSD comme :

Installation VSFTPD xi

Yum install vsftpd

17

Configuration

Dans le fichier /etc/vsftpd/vsftpd.conf : anonymous_enable=NO, Puis on autorise au utilisateur locaux du systme se connecter au serveur ftp par d commenter la ligne suivante : local_enable=YES Pour autoriser aux utilisateurs d'uploader des fichiers sur le serveur: write_enable =YES

Test
18

DNS
DNS (Domain Name System) est un systme dappellation dordinateurs et de services rseau organis selon une hirarchie de domaines. Lattribution de noms DNS est utilise sur les rseaux TCP/IP tels quInternet afin de localiser les ordinateurs et les services au moyen de noms conviviaux. Lorsquun utilisateur entre un nom DNS dans une application, les services DNS peuvent rsoudre ce nom en une autre information qui lui est associe, par exemple une adresse IP. xii

Installation de DNS

yum install bind-chroot

Configuration

Pour la configuration du DNS on a utilis webmin

19

Dmerrer le dns Service bind start

20

Adresse

Serveur

Alias

21

22

Test

Pour vrifier le fonctionnement de notre serveur DNS, on va le tester avec nslookup et host.

Sous windows

23

SSH
SSH est un shell scuris (Secure SHell) qui vous permet de vous connectez une machine distante travers le rseau, cela peut tre une machine de votre rseau local mais galement une machine situe Londres, Madrid ou New York ! En outre, il vous permet de lancer des applications sur la machine distante. Vous pouvez galement effectuer des transferts de votre machine locale sur le serveur et SSH permet dtablir un canal et de de

communication

scurise

sauthentifier de manire forte (mise en place de paire de cls) sur le serveur distant.xiii

inversement tout cela de manire scurise. -

Installation de OpenSSHxiv Yum install openssh

24

Configuration

25

26

Pop Imap
Le protocole POP

Ce protocole est conu pour un traitement des emails en mode "non-connect" : tous les emails sont tlchargs sur le poste de l'utilisateur par le logiciel de messagerie et peuvent tre supprims du serveur. La connexion n'est alors plus ncessaire que pour vrifier la prsence de nouveaux messages. Le protocole IMAP

Avec ce protocole, les messages ne sont pas supprims lors de la rcupration, mais toutes les modifications apportes sur votre compte (dplacement, marquage, suppression) sont galement appliques cot serveur. Dovecot

Un serveur de bote lettre scuris, qui prend en charge les services POP et IMAP, et les botes aux lettres au format mbox ou Maildir.

Installation dovecot xv
Yum install dovecot
27

Configuration

Dans le fichier /etc/dovecol.conf

Protocoles: spcifie les protocoles disponibles aux utilisateurs d'accder leur messagerie. Dovecot supporte imap (s) et POP3 (s), le tout ou partie peut tre utilise. Mail_location: spcifie le format et l'emplacement de chaque bote lettre des utilisateurs. Ici, nous voyons que nous utilisons le format maildir et chaque utilisateur a sa propre bote lettres situe ~ / Maildir .On peut trouver des exemples de format mbox sont fournis dans le fichier de configuration Login_process_size: Les notes de version de CentOS 5.1 indiquent que "le paquet dovecot sur les noyaux x86_64 ncessite le paramtre "login_process_size = 64" pour tre ajout au fichier / etc / dovecot.conf aprs une mise niveau vers CentOS 5.1 ". 32-Bit installations ne sont pas affectes et ne ncessitent pas de paramtre. Test

28

Postfix
Postfix est un serveur de messagerie lectronique et un logiciel libre dvelopp par Wietse Venema et plusieurs

contributeurs. Il se charge de la livraison de courriers lectroniques(courriels) et a t conu comme une alternative plus rapide, plus facile administrer et plus scurise que l'historique Sendmail. xvi

29

Installation de postfix xvii

Yum install postfix Configuration

Postfix fichiers de configuration sont stocks dans / etc / postfix . Les deux principaux fichiers de configuration de Postfix sont master.cf et main.cf , bien que nous ne serons traitant main.cf ici. D'abord nous allons faire quelques ajouts ou des modifications aux main.cf fichier de configuration. Les lignes suivantes doivent tre ajoutes, modifies ou non commente: myhostname = www.lsi.ma mydomain = lsi.ma myorigin = $ mydomain inet_interfaces = all mydestination = $ myhostname, localhost. $ mydomain, localhost, $ mydomain mynetworks = 192.168.0.0/24, 127.0.0.0 / 8 relay_domains = home_mailbox = Maildir / myhostname: Le nom d'hte du systme (par exemple, le systme est appel mail ou mail.example.com). mydomain: Le nom de domaine pour le serveur de messagerie (il peut tre un nom de domaine vrais ou faux). myorigin: Le nom de domaine do provient le courrier lectronique localement post. inet_interfaces: Dfinit les interfaces rseau o Postfix peut recevoir les

courriers. Celles-ci doivent inclure au moins localhost et le domaine local.

30

mydestination: C'est la liste des domaines qui seront livrs. mynetworks: Une liste des adresses IP de confiance qui peut envoyer des messages via le serveur. Si les utilisateurs essayant d'envoyer des courriels via le serveur provenant d'une adresse IP ne figure pas ici sera rejete. home_mailbox: Dfinit le chemin de la bote lettre relatif au rpertoire home de l'utilisateur et spcifie galement le style de la bote lettre pour tre utilis. Postfix supporte deux formats Maildir et mbox. Test

Htaccess
Les fichiers .htaccess peuvent tre utiliss dans n'importe quel rpertoire virtuel ou sousrpertoire. Les principales raisons d'utilisation des fichiers .htaccess sont :

Grer l'accs certains fichiers.

31

Ajouter un mime-type. Protger l'accs un rpertoire par un mot de passe. Protger l'accs un fichier par un mot de passe. Dfinir des pages d'erreurs personnalises.

Il s'agit d'une des applications les plus utiles du fichier .htaccess car elle permet de dfinir de faon sre ( l'aide d'un login et d'un mot de passe) les droits d'accs des fichiers par certains utilisateurs. La syntaxe est la suivante :
AuthUserFile {emplacement du fichier de mot de passe} AuthGroupFile {emplacement du fichier de groupe} AuthName "Accs protg" AuthType Basic Require valid-user

La commande AuthUserFile permet de dfinir l'emplacement du fichier contenant les logins et les mots de passe des utilisateurs autoriss accder une ressource donne. La commande AuthGroupFile permet de dfinir l'emplacement du fichier contenant les groupes d'utilisateurs autoriss s'identifier. Il est possible d'outrepasser cette dclaration en dclarant le fichier suivant : /dev/null.

32

Sous Windows

Dossier personnel
Mkdir /home/samia/public_html Chown samia:samia /home/samia/public_html Chcon R t httpd_sys_content_t /home/samia Chmod 711 /home/samia/public_html

33

34

Les captures du site web


On a ralis une application de gestion du personnel laide de loutil PHP et en utilisant une base de donnes MySQL. Ce site sera utile dans les services ressources humaines des entreprises. Il gre tout ce qui a une relation avec le personnel de ladministration(congs, rcuprations, situation familiale, saliare)

35

Conclusion
Au terme de ce projet dtudes consacr la configuration des services sous CentOS, on possde une trs bonne vue densemble sur le sujet grce la lecture dune quantit volumineuse darticles, de tutoriaux et de livres. Nous connaissons maintenant comment utiliser le systme dexploitation CentOS et comment y configurer des services web. Nous savons aussi quoi sert chaque service et comment lexploiter dans nos sites PHP.

Esprant que ce projet a atteint les objectifs demands.

36

Rfrences
i

The Definitive Guide to CentOS Peter Membrey, Tim Verhoeven and Ralph Angenendt edition Apress. http://www.centosadmin.net/pourquoi-centos.html http://apache.developpez.com/faq/faq-apache.pdf http://dev.mysql.com/doc/refman/5.0/fr/what-is.html http://www.cyberciti.biz/faq/how-to-install-mysql-under-rhel/ http://www.linux-france.org/prj/edu/archinet/systeme/ch42s06.html http://www.aoddy.com/2007/12/12/how-to-install-phpmyadmin-2113-on-centos-5/ http://www-igm.univ-mlv.fr/~dr/XPOSE2006/Charles_Daniel/presentation.html

ii

iii

iv

vi

vii

viii

ix

http://thedaneshproject.com/posts/how-to-install-webmin-on-centos-4/ http://fr.wikipedia.org/wiki/Serveur_FTP http://www.cyberciti.biz/faq/rhel-centos-linux-install-ftp-server/ http://technet.microsoft.com/fr-fr/library/cc730775.aspx http://www.math-linux.com/spip.php?article17 http://www.croc-informatique.fr/2009/11/installer-openssh-v5-sur-centos-5/ http://wiki.brossault.org/doku.php/services/imap_pop/dovecot http://fr.wikipedia.org/wiki/Postfix http://wiki.centos.org/HowTos/postfix

xi

xii

xiii

xiv

xv

xvi

xvii

37