En 2008, OVH a elargi son offre en serveur dédié. L'offre initiale en serveur dédié “entree de gamme” s'appelle Kimsufi. La nouvelle offre a pour nom Kimsufi XXL. Cette offre est en concurrence directe avec la Dedibox XXL, aussi proposée depuis 2008.
Cette page va regrouper diverses informations sur la configuration, les tests et l'utilisation d'un serveur Kimsufi XXL en tant que serveur web.
C'est assez simple (vu que c'est crucial pour OVH :P).
Il suffit d'aller sur http://ovh.fr et puis de choisir l'offre en serveur dédié Kimsufi XXL.
Mais ce qui est un peu etrange, c'est de recevoir le mail de commande pendant qu'on est en train de finaliser la commande. En me melangeant un peu les pinceaux, j'ai rendu la session de paiement invalide; car elle n'est valable qu'un temps limite apres l'affichage de la page… :P Bref, apres une 2e commande “tout en une seule fois”, pas de probleme.
Enfin, le serveur dedie demandait 72H mais le compte client etait cree tout de suite… Sauf que je n'ai jamais defini de mot de passe ?! On passe par la procedure de mot de passe oublie et voila…
Un mail vous annonce que votre serveur est prêt et vous donne le login/password… root !
Il faudrait mieux renforcer la securite en ne permettant pas le login root en direct.
TODO: Il va falloir creer un autre utilisateur pour le login et restreindre le login root.
Un premier “df -kh” donne
Filesystem Size Used Avail Use% Mounted on /dev/sda1 3.0G 473M 2.4G 17% / varrun 1.5G 44K 1.5G 1% /var/run varlock 1.5G 0 1.5G 0% /var/lock udev 1.5G 20K 1.5G 1% /dev devshm 1.5G 0 1.5G 0% /dev/shm /dev/sda2 456G 33M 432G 1% /home
La encore, pas terrible!
Sachant que MySql installe ses bases de donnees dans /var/lib/mysql; cela donne avec ces partitions un stockage dans /dev/sda1. Une taille de 3G est donc trop limitee pour heberger des gros sites.
2 solutions:
Voici le fichier /etc/apt/sources.list pour les depots des applications a installer
deb ftp://mir1.ovh.net/ubuntu/ hardy main restricted deb-src ftp://mir1.ovh.net/ubuntu/ hardy main restricted ## Major bug fix updates produced after the final release of the ## distribution. deb ftp://mir1.ovh.net/ubuntu/ hardy-updates main restricted deb-src ftp://mir1.ovh.net/ubuntu/ hardy-updates main restricted ## N.B. software from this repository is ENTIRELY UNSUPPORTED by the Ubuntu ## team, and may not be under a free licence. Please satisfy yourself as to ## your rights to use the software. Also, please note that software in ## universe WILL NOT receive any review or updates from the Ubuntu security ## team. deb ftp://mir1.ovh.net/ubuntu/ hardy universe deb-src ftp://mir1.ovh.net/ubuntu/ hardy universe deb ftp://mir1.ovh.net/ubuntu/ hardy-updates universe deb-src ftp://mir1.ovh.net/ubuntu/ hardy-updates universe ## N.B. software from this repository is ENTIRELY UNSUPPORTED by the Ubuntu ## team, and may not be under a free licence. Please satisfy yourself as to ## your rights to use the software. Also, please note that software in ## multiverse WILL NOT receive any review or updates from the Ubuntu ## security team. deb ftp://mir1.ovh.net/ubuntu/ hardy multiverse deb-src ftp://mir1.ovh.net/ubuntu/ hardy multiverse deb ftp://mir1.ovh.net/ubuntu/ hardy-updates multiverse deb-src ftp://mir1.ovh.net/ubuntu/ hardy-updates multiverse ## Uncomment the following two lines to add software from the 'backports' ## repository. ## N.B. software from this repository may not have been tested as ## extensively as that contained in the main release, although it includes ## newer versions of some applications which may provide useful features. ## Also, please note that software in backports WILL NOT receive any review ## or updates from the Ubuntu security team. # deb ftp://mir1.ovh.net/ubuntu/ hardy-backports main restricted universe multiverse # deb-src ftp://mir1.ovh.net/ubuntu/ hardy-backports main restricted universe multiverse ## Uncomment the following two lines to add software from Canonical's ## 'partner' repository. This software is not part of Ubuntu, but is ## offered by Canonical and the respective vendors as a service to Ubuntu ## users. # deb http://archive.canonical.com/ubuntu hardy partner # deb-src http://archive.canonical.com/ubuntu hardy partner deb http://security.ubuntu.com/ubuntu hardy-security main restricted deb-src http://security.ubuntu.com/ubuntu hardy-security main restricted deb http://security.ubuntu.com/ubuntu hardy-security universe deb-src http://security.ubuntu.com/ubuntu hardy-security universe deb http://security.ubuntu.com/ubuntu hardy-security multiverse deb-src http://security.ubuntu.com/ubuntu hardy-security multiverse
La commande suivante va installer Apache2, PHP5 et MySQL5
$ apt-get install php5 php5-cli php5-mysql mysql-server
NOTE
Cela devrait tout installer et aussi lancer les serveurs. Pour tester que le serveur apache2 est bien actif maintenant, on va tester d'acceder a la page web par defaut.
http://votre.adresse.ip/
ou votre adress ip est donne par la commande
$ ifconfig
Il faut prendre la valeur XXX.XXX.XXX.XXX de la partie eth0 … ligne avec inet addr: XXX.XXX.XXX.XXX
Si votre serveur apache2 fonctionne correctement alors, vous allez voir une page d'accueil. La mienne dit “It Works!” :P
Le contenu de cette page est dans le dossier /var/www/ Allez vérifier que la page affichée correspond au contenu du fichier index.html
more /var/www/index.html <html><body><h1>It works!</h1></body></html>
La encore, l'installation par defaut utilise /var/www/ pour stocker les pages web et les autres contenus (uploads, etc…) On n'utilisera pas ce dossier car on a surtout l'espace dans /home Il faudra donc installer les fichiers web sous le dossier /home/ La configuration des noms de domaine permettra de relier facilement un nom de domaine a un dossier du disque.
Voila, on a un serveur LAMP qui tourne!
C'est rapide et pas difficile pour mettre en place le minimum. Par contre, il faut changer plusieurs choses pour vraiment partir sur de bonnes bases et améliorer la sécurité du serveur…
Par defaut, c'est dans le dossier /var/www/ qu'il faut deposer tous les fichiers accessibles pour le web.
Il faut creer un dossier /home/mon-dossier-www (par exemple)
Et puis on va modifier le fichier /etc/apache2/sites-available/default
DocumentRoot /var/www/
DocumentRoot /home/mon-dossier-www/
Ensuite, il faut evidemment redemarrer le serveur apache pour prendre en compte le nouveau dossier:
apache2ctl restart
Pour tester que tout fonctionne correctement, on cree un fichier /home/mon-dossier-www/index.htm
Avec comme contenu
WELCOME
Il suffit de rafraichir la page web http://mon.adresse.ip/ pour voir le nouveau contenu.
Dans le fichier /etc/mysql/my.cnf, on va changer le dossier de stockage des bases de donnees
Comme la config donne beaucoup d'espace a /home, on va creer un dossier dans /home pour MySQL
Par exemple: /home/mon-dossier-mysql
Il faut ensuite changer la valeur datadir a /home/mon-dossier-mysql/mysql
Il faut creer le dossier /home/mon-dossier-mysql/mysql, mettre les droits a l'utilisateur systeme mysql, copier le dossier systeme /var/lib/mysql/mysql vers /home/mon-dossier-mysql/mysql/mysql
et enfin relancer les serveurs MySQL
mkdir /home/mon-dossier-mysql mkdir /home/mon-dossier-mysql/mysql chgrp mysql /home/mon-dossier-mysql/mysql chown mysql /home/mon-dossier-mysql/mysql cp -pR /var/lib/mysql/mysql /home/mon-dossier-mysql/mysql/mysql /etc/init.d/mysql stop /etc/init.d/mysql start
Le serveur devrait se relancer sans erreur
En cas d'erreur il faut essayer les commandes mysqladmin pour avoir plus d'informations sur les problemes.
mysqladmin -p ping mysqladmin -p status
Pour de nombreuses applications, on aura besoin de pouvoir envoyer des mails aux utilisateurs.
De plus, pour la surveillance du systeme, on se fera envoyer des mails pour etre sur que le systeme fonctionne toujours :P
Une bonne application de mailing est Postfix
apt-get install postfix
Choisir la configuration Internet et puis si vous avez un nom de domaine, mettez le votre a la place du ma-machine.kimsufi.com
Ensuite, pour pouvoir tester rapidement qu'on peut envoyer des mails, installer mailx
apt-get install mailx
C'est une interface sous Linux
mailx adress@mon-mail.com
Ecrire le sujet et le texte. Pour finir, faire <Ctrl-D>, donner un Cc: puis <enter> Le mail de test devrait arriver dans votre boite email
WARNING TODO D'abord, il faut creer un 2eme utilisateur normnal!!!
adduser user-normal
Repondre aux questions… Donner un mot de passe…
Verifier qu'on peut se connecter avec user-normal.
WARNING Ensuite seulement…
Dans le fichier /etc/ssh/sshd_config Changer la ligne
PermitRootLogin yes
en
PermitRootLogin no
Et puis relancer le serveur ssh
/etc/init.d/ssh restart
Se deconnecter de la session root et puis verifier qu'on ne peut plus se connecter en root…
Se connecter avec user-normal pour les operations courantes
Utiliser le compte root avec le “su” seulement pour les operations de maintenance systeme
apt-get install fail2ban apt-get install php5 php5-mysql apt-get install mysql-server apt-get install mysql-client apt-get install postfix a2enmod rewrite deflate vhost_alias setenvif auth_basic auth_digest php5 ssl expires apt-get install backup-manager apt-get install phpmyadmin ln -s /usr/share/phpmyadmin /var/www/phpmyadmin apt-get install php5-gd apt-get install php5-curl apt-get install subversion apt-get install unzip apt-get install curl apt-get install gettext apt-get install htop apt-get install imagemagick apt-get install php5-xcache apache2ctl -k restart