Aller au contenu
Vie du geek le forum entre geek
dokkun

Serveur web: Apache, Mysql et PHP5

Messages recommandés

On installe le tout à l'aide de la commande magique, qui contient peut-être quelques redondances inutiles mais qui aura le mérite de mettre en place tout le nécessaire. Puisque un utilisateur non-root a été créé précédemment et qu'il peut utiliser sudo pour exécuter des commander administratives, on se connecte sous son identité pour administrer le serveur.

$ sudo apt-get install apache2 apache2-utils mysql-server mysql-client php5 php5-curl php5-dev php5-geoip libapache2-mod-geoip php5-gd php5-imap php5-imagick php5-mysql php5-mcrypt php5-memcache php-pear phpmyadmin

Lors de l'installation, vous allez être invité à créer l'utilisateur root de MySQL ainsi que divers paramètres à adapter à votre choix de configuration. Ces paramètres peuvent dans tous les cas être modifiés par la suite...

 

Configuration sommaire de Apache

$ sudo nano /etc/apache2/conf.d/security

Si le serveur a vocation de publier des pages web, on le place en mode Production et on peut optionnellement désactiver les signatures serveur pour diffuser le minimum d'informations sur la configuration de la machine. Ce fichier est assez bien documenté, cherchez et adapter les lignes suivantes:

ServerTokens Prod

ServerSignature Off

Si vous voulez églament interdire l'intégration de vos sites dans des iframes extérieures, considérer le fait d'activer la dernière option en enlevant le # en début de ligne:

Header set X-Frame-Options: "sameorigin"

On active ensuite les modules utiles, et on redémarre apache

$ sudo a2enmod headers

$ sudo a2enmod expires

$ sudo a2enmod rewrite

$ sudo a2enmod geoip

$ sudo /etc/init.d/apache2 restart

 

Configuration de MySQL

Si vous n'avez pas créé de mot de passe pour l'utilisateur root de MySQL, c'est le moment !

$ sudo mysql -u root

mysql> UPDATE mysql.user SET Password=PASSWORD('***passe***') WHERE User='root';

Query OK, 4 rows affected (0.00 sec)

Rows matched: 4  Changed: 4  Warnings: 0

mysql> FLUSH PRIVILEGES;

Query OK, 0 rows affected (0.00 sec)

mysql> exit

Vous avez configuré MySQL au moment de l'installation via apt-get et vous avez attribué un mot de passe à l'utilisateur root. Vérifiez que la connection root sur Mysql échoue sans mot de passe

$ sudo mysql -u root

>Enter password:

Welcome to the MySQL monitor. Commands end with ; or g.

Your MySQL connection id is 40321

Server version: 5.5.31-0+wheezy1-log (Debian)

Copyright © 2000, 2013, Oracle and/or its affiliates. All rights reserved.

Oracle is a registered trademark of Oracle Corporation and/or its

affiliates. Other names may be trademarks of their respective

owners.

Type 'help;' or 'h' for help. Type 'c' to clear the current input statement.

mysql> exit

Pour aller plus loin dans le paramétrage du serveur MySQL

$ sudo nano /etc/mysql/my.cnf

 

Configuration de phpMyAdmin

Editer le fichier de configuration Apache pour phpMyAdmin afin de lui donner un Alias différent que celui par défaut. Ceci empêchera de nombreuses tentatives de connexion sur vos bases.

 

$ sudo nano /etc/phpmyadmin/apache.conf

Modifier l'Alias par le nom de votre choix

# phpMyAdmin default Apache configuration

Alias /mon_alias_phpmyadmin /usr/share/phpmyadmin

Redémarrer Apache puis testez l'accès à phpMyAdmin dans un navigateur 

$ sudo /etc/init.d/apache2 restart

La page résultante sera donc: http://ns01.mondomaine.net/mon_alias_phpmyadmin

Partager ce message


Lien à poster
Partager sur d’autres sites

Créer un compte ou se connecter pour commenter

Vous devez être membre afin de pouvoir déposer un commentaire

Créer un compte

Créez un compte sur notre communauté. C’est facile !

Créer un nouveau compte

Se connecter

Vous avez déjà un compte ? Connectez-vous ici.

Connectez-vous maintenant

×