grimboite/articles/sys/2015-02-07-vps.md

4.2 KiB

Title Date Slug
Virtual Private Server 2015-02-07 virtual-private-server

J'ai ouvert un compte chez WebFaction en février 2012, suite à une promotion qu'ils faisaient. Pour ~180€ payés, je recevais en fait un crédit de plus de 225€, ce qui revenait plus ou moins à 6,50$ / mois pour un serveur partagé chez eux; càd

  • 512 Mo de RAM
  • 100 Go d'espace disque

Cet abonnement arrivant à terme (et ayant envie de changer un peu, et de profiter d'un serveur plus complet qu'un shared server), je me dirige vers l'offre VPS Classic d'OVH. Plusieurs raisons :

  • Impossible de trouver un kimsufi KS-1. La version KS-2 est dispo par contre, mais coûte quasiment le double pour quelque chose dont je n'aurai sans doute pas besoin.
  • Les offres SoYouStart sont hyper tentantes, mais ne répondent sans doute pas non plus à ce que je souhaiterais/aurais besoin
  • Idem pour les offres Online.net (Dedibox et co.).

=> Pour me faire la main sur de l'hébergement de sites php/python, bases de données (MySQL/MongoDB/Redis) et un peu de stockage de fichiers (Seafile), je me suis pris l'offre la plus basique au niveau des VPS Classic: 1 vCore, 1Go de RAM et 10Go d'espace disque. Quand on disait basique... :)

Au niveau de l'installation, on a le choix parmi plusieurs distributions. Après un petit essai avec une Ubuntu 14.04, je me tente une Debian 7. Quelques points à voir après l'installation de l'OS:

  • La Sécurité et la configuration de base du serveur : création d'un utilisateur (ou plusieurs) utilisateurs pour la connexion SSH, désactivation du login root, installation de fail2ban.
  • La configuration : installation d'nginx, varnish et memcache. Puis installation de Mysql (mariadb?) pour la DB à utiliser avec Wordpress.
  • le ReverseProxy : utilisation d'un nom de domaine acheté chez Gandi :)

Sécurité et configuration de base

Un article sur le forum de Clubic donne plein de conseils en prenant le raspberry pi comme base.

Configuration

Pour nginx, il existe un script d'installation chez Nicolargo. Pour le téléchoper, utilisez wget https://raw.githubusercontent.com/nicolargo/debianpostinstall/master/nginxautoinstall.sh --no-check-certificate. L'installation consiste entre autre à télécharger les dépendances pour la compilation d'nginx, à ajouter le répertoire dotdeb, installer PHP5-FPM, les outils de développement et MemCache.

Après exécution du script, on a un petit récapitulatif d'installation :

	NGinx configuration folder:       /etc/nginx
	NGinx default site configuration: /etc/nginx/sites-enabled/default-site
	NGinx default HTML root:          /var/www
	Read this to configure Naxsi:     https://github.com/nbs-system/naxsi/wiki/basicsetup
	PageSpeed cache directory:        /var/ngx_pagespeed_cache
	Read this to configure PageSpeed: https://developers.google.com/speed/pagespeed/module/configuration
	
	Installation script  log file:  /tmp/nginxautoinstall-20141019201236.log

Placez un fichier index.html dans le répertoire /var/www/ et accéder à votre instance via son URL. Vous devriez vous le contenu.

Voir aussi ici après l'installation.

Les logs se trouvent dans /var/log/nginx/[access|error].log. La configuration (sur Debian & Ubuntu) se fait grâce à service [start|stop|restart|status] nginx.

Pour que Wordpress fonctionne, il faut installer php5-fpm. Ce service doit ensuite être démarré s'il ne l'est pas déjà (service php5-fpm start).

Reverse Proxy

Pour le reverse proxy, le plus simple est d'éditer le fichier de zone chez Gandi pour y associer l'adresse ip du VPS à un nom de domaine ou à un sous-domaine. La propagation des informations peut prendre quelques heures. Ensuite, il suffit de spécifier ce domaine ou sous-domaine directement dans le fichier de configuration Nginx.