HOWTO Debian 7 Nginx Php5fpm MariaDB Phpmyadmin

Embed Size (px)

Citation preview

  • 7/22/2019 HOWTO Debian 7 Nginx Php5fpm MariaDB Phpmyadmin

    1/9

    anthonylegoff.com http://anthonylegoff.com/2013/10/11/beginner-server-debian-nginx-php5-fpm/

    Anthony Le Go ff

    Debian 7 Nginx php5-fpm MariaDB phpmyadmin

    Posted o n oct 11, 2013 by in InternetTech | 0 comments

    Partager la publication "Debian 7 Nginx php5-f pm MariaDB phpmyadmin"

    Facebook

    Twitter

    Google+

    Viadeo

    LinkedIn

    E-mail

    HOWTO : Open Source Server Debian Wheezy Nginx+php5-fpm+MariaDB+phpmyadmin

    Ce lancer dans la cration dun serveur web et par ou commencer ? Le tradit ionnel LAMP (Linux

    +Apache+MySql+Php) a de moins en moins la cte et plusieurs succs story du web comme Facebook ont

    dmarrer sous Nginx rput pour tre bien plus rapide sur les requtes HTT P.

    Un nouveau tournant est galement apparut avec les systmes de bases de donnes et le f ork de

    mySql MariaDB en Open Source qui es t en train de prendre des parts de marchs. Wikipdia f in 2012 a

    migr sur MariaDB.

    Dans la jungle des o f f res de serveurs, il nest pas t oujours galement vident de t rouver un bon rapport

    qualit/prix et de performance de lhbergeur. Lun des hbergeurs f rancophones le plus rentable pour

    dmarrer ayant un service aprs vente de qualit et rapide est Be1host.

    La premire of f re de VPS propose 1 cur (1x 3.0ghz) 512Mo de mmoire et 75Go en Disque dur pour

    4,99/mois avec la possibilit dinstaller le serveur sur diff rentes dist ribution Linux.

    Lien vers lhbergeur

    Egalement pour ce lancer dans lauto-hbergement et apprendre

    linfo rmatique avec un serveur de poche 33 : Raspberry Pi

    Obtenir un Raspberry Pi

    http://www.kubii.fr/13-raspberry-pi-modele-b-512mo-3170111000019.htmlhttps://www.be1host.com/panel/?affid=80https://www.be1host.com/panel/?affid=80mailto:?subject=Visit%20this%20link%20find%20on%20http://anthonylegoff.com&body=Hi,%20I%20found%20this%20information%20for%20you%20:%20%22Debian%207%20Nginx%20php5-fpm%20MariaDB%20phpmyadmin%22!%20This%20is%20the%20direct%20link:%20http://anthonylegoff.com/2013/10/11/beginner-server-debian-nginx-php5-fpm/%20Have%20a%20nice%20day%20:)http://www.linkedin.com/shareArticle?mini=true&ro=true&trk=JuizSocialPostSharer&title=Debian+7+Nginx+php5-fpm+MariaDB+phpmyadmin&url=http%3A%2F%2Fanthonylegoff.com%2F2013%2F10%2F11%2Fbeginner-server-debian-nginx-php5-fpm%2Fhttp://www.viadeo.com/shareit/share/?url=http%3A%2F%2Fanthonylegoff.com%2F2013%2F10%2F11%2Fbeginner-server-debian-nginx-php5-fpm%2Fhttps://plus.google.com/share?url=http%3A%2F%2Fanthonylegoff.com%2F2013%2F10%2F11%2Fbeginner-server-debian-nginx-php5-fpm%2Fhttps://twitter.com/intent/tweet?source=webclient&original_referer=http%3A%2F%2Fanthonylegoff.com%2F2013%2F10%2F11%2Fbeginner-server-debian-nginx-php5-fpm%2F&text=Debian+7+Nginx+php5-fpm+MariaDB+phpmyadmin&url=http%3A%2F%2Fanthonylegoff.com%2F2013%2F10%2F11%2Fbeginner-server-debian-nginx-php5-fpm%2F&related=ideo_logiq&via=ideo_logiqhttps://www.facebook.com/sharer/sharer.php?u=http%3A%2F%2Fanthonylegoff.com%2F2013%2F10%2F11%2Fbeginner-server-debian-nginx-php5-fpm%2Fhttp://anthonylegoff.com/2013/10/11/beginner-server-debian-nginx-php5-fpm/#respondhttp://anthonylegoff.com/category/internettech/http://anthonylegoff.com/2013/10/11/beginner-server-debian-nginx-php5-fpm/http://anthonylegoff.com/
  • 7/22/2019 HOWTO Debian 7 Nginx Php5fpm MariaDB Phpmyadmin

    2/9

    Ce tutorial permet dacquerir des bases dans la cration de serveur avec comme

    points abords:

    Connexion console SSH

    Installation de Nginx

    Installation de php5 fpm dialoguant avec le serveur http

    Installation et paramtrage de MariaDB comme gestion de base de donne

    Utilisation de linterf ace phpmyadmin pour lutilisat ion en graphique de MariaDB

    Utilisation de Filezilla pour du trans f ert SFTP vers le serveur

    Transf ert de KrISS Feed pour t ester le serveur

    Connexion console SSH

    Aprs crat ion du serveur, mise en place de la dis tr ibut ion voici venu le temps de la premire connexion via

    SSH distance (Secure Shell) comme prot oco le de communication scuris. Sous Linux Desktop, la

    dmarche est simple en ouvrant un terminal. Sous Windows il est ncessaire dut iliser un client comme

    Putty. Les dmarches sont ici f f ectu sous un desktop linux et via ladresse IP en local

    192.168.122.105

    12

    Linux@terminal:~$sudo ssh 192.168.122.105

    12

    ECDSA key fingerprint is XXXAre you sure you want to continue connect ing (yes/no)? yes

    Ouverture de la console du serveur distant

    123456789

    [email protected]'s password:Linux server1 3.2.0-4-amd64 #1 SMP Debian 3.2.46-1+deb7u1 x86_64

    The programs included with the Debian GNU/Linux system are free software;the exact distribution terms for each program are described in theindividual files in /usr/share/doc/*/copyright.

    Debian GNU/Linux comes with ABSOLUTELY NO WARRANTY, to the extentpermitt ed by applicable law.

    Changement du mot de passe root

    1 passwd

    Vrificat ion du nom du serveur

    123

    [email protected]:hostname -fserver1.example.com

    Mise jours du serveur

    12

    apt-get updateapt-get upgrade

    http://www.putty.org/https://fr.wikipedia.org/wiki/Secure_Shell
  • 7/22/2019 HOWTO Debian 7 Nginx Php5fpm MariaDB Phpmyadmin

    3/9

    Reconf iguration du langage si ncessaire f r_FR.UTF-8 UTF-8

    123

    dpkg-reconfigure localesLocales: 2121. default

    Installation de lditeur de texte nano

    1 apt-get install nano

    Ajout dun ut ilisateur user avec des dro its super-admin en sudo

    12

    adduser uservisudo

    Ajout de user dans visudo

    1 user ALL=(ALL:ALL) ALL

    Scurisat ion du serveur SSH

    1 nano /etc/ssh/sshd_config

    Changement dans le f ichier de conf iguration SSH du port et dinterdiction de connexion distance en roo t

    123

    # What ports, IPs and protocols we listen forPort 36449PermitRoot Login no

    Redmarrage du service SSH

    1234

    [email protected]:~# service ssh restart[ ok ] Restarting OpenBSD Secure Shell server: sshd.Ouvrir un nouveau terminal et tent la nouvelle connexion ssh -p @ avec l'utilisateur crerauparavant

    Installation de Nginx HTTP serveur

    Nouvelle commande SSH daccs au serveur distant avec le port et user

    1 sudo ssh -p 36449 [email protected]

    Repasser en roo t sur le serveur :

    1 su

    Mise jours de la liste des paquets et des sources logiciels pour Nginx et PHP5

    1 nano /etc/apt/sources.list

  • 7/22/2019 HOWTO Debian 7 Nginx Php5fpm MariaDB Phpmyadmin

    4/9

    Ajout des sources Dot deb dans le sources.list :

    1234

    deb http://packages.dotdeb.org wheezy alldeb-src http://packages.dotdeb.org wheezy alldeb http://packages.dotdeb.org wheezy-php55 alldeb-src htt p://packages.dotdeb.org wheezy-php55 all

    Quitter et sauvegarder,puis ajout de la cl dauthentif ication

    1 wget htt p://www.dotdeb.org/dotdeb.gpg

    1234567

    8910

    --2013-10-09 16:16:38-- http://www.dotdeb.org/dotdeb.gpgRsolution de www.dotdeb.org (www.dotdeb.org)... 88.190.17.153Connexion vers www.dotdeb.org (www.dotdeb.org)|88.190.17.153|:80...connect.requte HTTP transmise, en att ente de la rponse...200 OKLongueur: 5299 (5,2K) [application/oct et -stream]Sauvegarde en : dot deb.gpg

    100%[======================================>] 5 299 --.-K/s ds0,006s

    2013-10-09 16:16:38 (849 KB/s) - dot deb.gpg sauvegard [5299/5299]

    1 cat dotdeb.gpg | apt-key add -

    Mise jours des dpots

    1 apt-get update

    Installation dun f irewall serveur et dun logiciel de bannissement dIP (conf iguration non traite)

    1 apt-get install iptables fail2ban

    Mise jours heure du serveur ntp, synchronisation en France de lheure serveur

    1 apt-get install ntpdate ntp

    Edition du f ichier de conf iguration ntp

    1 nano /etc/ntp.conf

    1234

    server 0.fr.pool.ntp.orgserver 1.fr.pool.netp.orgserver 0.europe.pool.ntp.orgserver ntp2.jussieu.fr

    Redemarrage du service et vrif ication que le service est actif

    12

    service ntp restartntpq -p

  • 7/22/2019 HOWTO Debian 7 Nginx Php5fpm MariaDB Phpmyadmin

    5/9

    Netoyage du serveur pour linstallation du serveur HTT P Nginx. Les serveurs sont livr prconf igur sous

    Apache rent rant en conf lit avec celui-ci. Netoyage du serveur DNS, Samba et mail.

    1 apt-get purge sendmail* apache2* bind9 samba xinetd

    Installation de Nginx, php5 et les dpendances

    1 apt-get install nginx php5 php5-fpm php5-cli php5-curl php5-gd php5-mcrypt php5-intl php5-mysql unzip bzr

    123

    Fin de l'inst allation indiquant le redmarrage de php5-FPMTraitement des actions diffres ( triggers ) pour php5-fpm ...[ ok ] Restarting PHP5 FastCGI Process Manager: php5-fpm.

    Demarrage de Nginx

    1 service nginx start

    1 [ ok ] Starting nginx: nginx.

    Vrificat ion de linstallat ion dans le navigateur (eg: IP du serveur ou hostname)

    [Show slideshow]

    Installation de php5 fpm dialoguant avec le serveur http

    Modif ication php.ini cont re un exploit 0day Nginx + fastcgi PHP

    1 nano /etc/php5/fpm/php.ini

    12345

    ; to use SCRIPT_FILENAME rather than PATH_TRANSLATED.; http://php.net/cgi.fix-pathinfocgi.fix_pathinfo=0

    Cration des dossiers racines du web serveurs

    1 mkdir -p /usr/share/nginx/www/example.com/ /usr/share/nginx/www/logs/example.com/

    Chroot du dossier pour Nginx avec lutilisateur www-data (Utilisateur par df ault de Nginx)

    1 chown -R www-data:www-data /usr/share/nginx/www/example.com/

    Ajout dun mot de passe pour lut ilisateur www-data

    1 passwd www-data

    http://anthonylegoff.com/2013/10/11/beginner-server-debian-nginx-php5-fpm/nggallery/slideshow/
  • 7/22/2019 HOWTO Debian 7 Nginx Php5fpm MariaDB Phpmyadmin

    6/9

    Positionnement dans le dossier de travail sites-available de Nginx

    1 cd /etc/nginx/sites-available

    Copie et crat ion du f ichier site.domain.com partir de default

    1 cp default site.domain.com

    Vrif ication des modif ications

    12

    [email protected]:/etc/nginx/sites-available# lsdefault site.domain.com

    Edition de site.domain.com fichier de conf iguration du serveur, dialogue avec php-f pm

    1 nano site.domain.com

    Vider le f ichier de conf iguration, ajout :

    123456789

    101112131415161718

    server {listen 80; ## listen for ipv4; this line is default and impliedlist en [::]:80 default_server ipv6only=on; ## listen for ipv6server_name example.com www.example.com (ou IP pour test);access_log /var/log/nginx/example.com.access.log;error_log /var/log/nginx/example.com.error.log;root /usr/share/nginx/www/example.com;index index.php index.html index.htm;

    location / {

    try_files $uri $uri/ /index.php?$args;}location ~ \.php$ {

    fast cgi_split_path_info ^(.+\.php)(/.+)$;try_files $uri =404;include fastcgi_params;fast cgi_pass unix:/var/run/php5-fpm.sock;

    }}

    Cration du lien symbolique pour activer le web serveur

    1 ln -s /etc/nginx/sites-available/site.domain.com /etc/nginx/sites-enabled/

    Supprimer dans /sites -enabled def ault

    12

    cd /etc/nginx/sites-enabledrm default

    Vrif ication de lopration

    12 [email protected]:/etc/nginx/sites-enabled# lssite.domain.com

    Cration des Liens symboliques pour les f ichiers logs :

  • 7/22/2019 HOWTO Debian 7 Nginx Php5fpm MariaDB Phpmyadmin

    7/9

    12

    ln -s /var/log/nginx/example.com.access.log/usr/share/nginx/www/logs/example.com/access.logln -s /var/log/nginx/example.com.error.log /usr/share/nginx/www/logs/example.com/error.log

    Redmarrage de Nginx

    12

    [email protected]:/etc/nginx/sites-enabled# service nginx reload[ ok ] Reloading nginx configuration: nginx.

    123

    [email protected]:/etc/nginx/sites-enabled# nginx -tnginx: the configuration file /etc/nginx/nginx.conf syntax is oknginx: configuration file /etc/nginx/nginx.conf test is successful

    installation dun fichier info .php pour tester les modules php fonctionnels

    1 nano /usr/share/nginx/www/example.com/info.php

    Sauvegarder et quitter

    1

    Test dans la conf iguration sur le navigateur et vrif ication du module mysql pour MariaDB

    [Show slideshow]

    Installation et paramt rage de MariaDB comme gestion de base de donne

    edition des sources logiciels de /etc/apt/sources.list

    1 nano /etc/apt/sources.list

    12

    deb http://mariadb.mirror.nucleus.be//repo/10.0/debianwheezy maindeb-src http://mariadb.mirror.nucleus.be//repo/10.0/debianwheezy main

    1 apt-get update

    Installation des paquets MariaDB client et serveur

    1 apt-get install mariadb-server mariadb-client

    vrif ication de linstallat ion de MariaDB :

    12

    [email protected]:/# mysql -Vmysql Ver 15.1 Distrib 10.0.4-MariaDB, for debian-linux-gnu (x86_64) using readline 5.1

    Redmarrage du serveur

    http://anthonylegoff.com/2013/10/11/beginner-server-debian-nginx-php5-fpm/nggallery/slideshow/
  • 7/22/2019 HOWTO Debian 7 Nginx Php5fpm MariaDB Phpmyadmin

    8/9

    1 [email protected]:/# reboot

    Utilisation de linterface phpmyadmin pour lutilisation en graphique de MariaDB

    1 apt-get install phpmyadmin

    Conf iguration de phpmyadmin durant linstallation1. Choisir un mot de passe

    2. Ne rien cocher dans le cho ix de serveur par df ault , ENTRER

    Edition de s ite.domain.com dans /etc/nginx/sites -available et ajout de phpmyadmin

    1234567891011121314

    location /phpmyadmin {root /usr/share/;index index.php index.html index.htm;

    location ~ /phpmyadmin/(.+\.php)$ {try_files $uri =404;root /usr/share/;fast cgi_split_path_info ^(.+\.php)(/.+)$;include fastcgi_params;fast cgi_pass unix:/var/run/php5-fpm.sock;fast cgi_index index.php;

    }location ~* ^/phpmyadmin/(.+\.(jpg|jpeg|gif|css|png|js|ico|html|xml|txt))$ {root /usr/share/;}

    Redmarrage de Nginx

    12

    [email protected]:/etc/nginx/sites-enabled# service nginx reload[ ok ] Reloading nginx configuration: nginx.

    123

    [email protected]:/etc/nginx/sites-enabled# nginx -tnginx: the configuration file /etc/nginx/nginx.conf syntax is oknginx: configuration file /etc/nginx/nginx.conf test is successful

    Accs phpmyadmin sur le navigat eur via ht tp://IPduServeur/phpmyadmin

    [Show slideshow]

    1. Roo t Login

    http://anthonylegoff.com/2013/10/11/beginner-server-debian-nginx-php5-fpm/nggallery/slideshow/
  • 7/22/2019 HOWTO Debian 7 Nginx Php5fpm MariaDB Phpmyadmin

    9/9

    2. Aller dans privilges et crer un nouvelle ut ilisateur

    3. Crer une base de donne avec lutilisateur / Cocher tous les privilges >

    Excuter

    Base de donne prte lemploi

    Utilisation de Filezilla pour du transfert SFTP vers le serveur

    Filezilla permet denvoyer avec une interf ace graphique des f ichiers sur un serveur et

    galement de grer les rgles daccs aux f ichiers / doss iers. Il utilise le proto cole

    FTP et galement SSH+FTP = SFTP utilisant une meilleure scurit que le port FTP

    classique et non chiffr.

    Pour installer Filezilla sous Linux, le logiciel est disponible dans les dpts. Pour

    Windows ou Mac OS il est ncessaire de le tlchargerici

    Conf iguration de Filezilla pour communiquer avec le serveur dans le f ichier racine /

    appartenant lutilisateur www-data

    [Show slideshow]

    Dossier de travail du rperto ire racine / du serveur

    /usr/share/nginx/www/example.com

    Transfert de KrISS Feed pour tester le serveur

    Maintenant que le serveur est en place, un test avec linstallation de KrISS Feed en

    local dans le dossier racine / du web serveur Nginx. Tranf ert du f ichier via Filezilla dans le doss ier de travail

    du serveur.

    Pour rcuprer le fichier index.php transf rer suivre le lien. Pour plus dinformation sur lutilisation de

    KrISS Feed direction le GitHub

    Tlcharger index.php

    Il reste plus qua entrer dans son navigateur ladresse IP du serveur ou le hos tname af f ichant lcran de

    cration dutilisateur de KrISS Feed.

    Pour aller plus loin et linstallation de CMS open source (Systme de gestion de contenu) et crer un site

    web avec WordPress, Joomla ou Drupal

    Egalement un site de tutoriaux sous linux: HowToForge

    Article publication byAntho ny Le Gof f is licensed under a Creative Commons Attribution-

    NonCommercial-ShareAlike 3.0 Unported License.

    Antho ny Le Gof f est le f ondateur dAlpharatz Consulting en tant que consultant, conseil en

    Stratgie, veille et innovation, prestation intellectuelle dans la haute technologie, recherche &

    dveloppement, cyberdf ense. Linux User, Technologies addict. Auditeur ANAJ-IHEDN. Parf ois

    port par la Science.

    Edit this page

    http://anthonylegoff.com/wp-admin/post.php?post=1062&action=edithttp://creativecommons.org/licenses/by-nc-sa/3.0/deed.en_UShttp://anthonylegoff.com/http://www.howtoforge.com/https://drupal.org/http://www.joomla.org/http://fr.wordpress.org/http://www.wuala.com/leg0ffant/PubDOC/webdev/index.php/https://github.com/tontof/kriss_feedhttp://anthonylegoff.com/2013/10/11/beginner-server-debian-nginx-php5-fpm/nggallery/slideshow/https://filezilla-project.org/download.php?show_all=1