Bac à sable façon serveur dédié sur Mac OS X

J’ai besoin et je vais avoir encore beaucoup plus besoin de mettre les mains dans le cambouis d’un ou plusieurs serveurs dédiés. Ayant un peu la frousse de foutre un bordel irréversible dessus j’ai entrepris de m’installer de quoi tester sans danger sur mon mac (qui tourne pour l’instant sous Mac OS X 10.5.8).

L’objectif principal est le suivant :

  • Avoir un serveur prêt à l’emploi comportant :
    • Un serveur LAMP (Linux, Apache, MySQL et PHP), capable d’envoyer des mails.
    • Un serveur OpenSSH (console ou FTP).
  • Être capable de se retrouver dans la même situation que lorsqu’il est nécessaire d’administrer un serveur dédié à distance, donc uniquement en ligne de commande éventuellement accompagné de la possibilité de monter sur le bureau du Mac le disque dur du serveur.

Pour cela, j’ai tout d’abord installé la dernière version gratuite de VirtualBox. C’est une application qui permet de créer des machines virtuelles tournant sur d’autres systèmes d’exploitation tout en partageant les ressources du Mac de manière quasiment transparente (réseau, clavier, …). J’ai ensuite téléchargé une image ISO d’Ubuntu 9.10 server i386 (Choisir la version 32 bits) qui sert de CD d’installation lors du premier démarrage de la machine virtuelle.

Côté réglages VirtualBox, côté cartes réseau, j’ai opté pour le mode bridge (pont en français) sur AirPort (en1), seule connexion supportant ce mode. De cette façon, la machine hôte, mon Mac en l’occurrence, sera capable de se connecter sur l’adresse IP affectée à la machine invitée, Linux server.

Côté réglages d’installation d’Ubuntu, j’ai pris la précaution de sélectionner les modules LAMP, le serveur de mail (option internet), DNS (histoire de faire joujou en local et ne pas dépendre d’un DNS externe).

Une fois la machine virtuelle créée et Linux server installé[1] et mis à jour (un sudo apt-get update suivi d’un sudo apt-get upgrade ne font pas de mal), vous devriez être capable de vous connecter au serveur Apache en récupérant son adresse IP à l’aide de la commande :

ifconfig -a

qui renvoie quelque chose qui ressemble à :

eth0      Link encap:Ethernet  HWaddr 08:00:27:39:7e:72  
          inet adr:192.168.1.15  Bcast:192.168.1.255  Masque:255.255.255.0
          adr inet6: fe80::a00:27ff:fe39:7e72/64 Scope:Lien
          UP BROADCAST RUNNING MULTICAST  MTU:1500  Metric:1
          Packets reçus:51076 erreurs:165 :0 overruns:0 frame:0
          TX packets:19203 errors:0 dropped:0 overruns:0 carrier:0
          collisions:0 lg file transmission:1000 
          Octets reçus:27515523 (27.5 MB) Octets transmis:3322578 (3.3 MB)
          Interruption:10 Adresse de base:0xd020 
…

Ici, l’adresse IP fournie par le serveur DHCP à la machine virtuelle est 192.168.1.15. Je peux donc tester directement en me connectant avec un navigateur du Mac à l’adresse http://192.168.1.15/ qui devrait, si tout va bien, fournir une page comme celle-ci :

It works!

This is the default web page for this server.

The web server software is running but no content has been added, yet.

Installation du serveur SSH :

sudo apt-get install openssh-server

À partir de cet instant je peux configurer une connexion SSH en mode terminal, identique à celle que je peux employer pour accéder à un serveur dédié, ou bien configurer un accès SFTP à l’aide de CyberDuck ou de Transmit par exemple.

Un petit test dans le terminal de Mac OS X avec la commande suivante me le confirmera :

ssh franck@192.168.1.15

Côté FTP, rien de particulier sinon que le protocole choisi est SFTP sur le port 22 (port par défaut)[2].

J’ai poursuivi en installant l’application phpMyAdmin dans le répertoire /var/www/ histoire de gérer confortablement les bases de données. Le module PHP mcrypt devra être installé au préalable à l’aide de la commande suivante :

sudo apt-get install php5-mcrypt

Suivi d’un :

sudo /etc/init.d/apache2 restart

Pour redémarrer le serveur Apache. J’en ai profité pour installer au passage le module PHP gd qui est fréquemment utilisé, entre autre par mon logiciel de blog préféré ;-)

Une simple commande :

sudo apt-get install php5-gd

Suivi d’un :

sudo /etc/init.d/apache2 restart

Suffiront.

J’ai testé l’ensemble en créant une base de données et un utilisateur pour cette base, puis en installant un Dotclear tout neuf. En quelques secondes j’avais l’administration de Dotclear ouverte dans un onglet de mon navigateur Mac et un blog actif dans le second, le tout hébergé par mon serveur tout juste installé. J’en ai aussitôt profité pour publier une photo de bateau[3] ;-)

Enfin, pour finir cette première étape (et préparer la suivante, l’installation de Trac) j’installe subversion et le module Apache correspondant (Python est déjà installé en version 2.6 donc rien à faire ce ce côté)[4] :

sudo apt-get install subversion libapache2-svn

Suivi comme toujours d’un :

sudo /etc/init.d/apache2 restart

Pour relancer le serveur Apache.

J’enregistre enfin un instantané de la machine virtuelle avec VirtualBox afin d’être capable de revenir à cette configuration si un problème ultérieur survenait (toujours plus rapide que de se payer une réinstallation complète).

Côté Mac OS X et pour pouvoir monter le disque dur dans une fenêtre du Finder (bien pratique pour naviguer dans l’arborescence), j’ai installé MacFusion. Attention il n’est pas compatible avec les versions 10.6.x de Mac OS X. Cet utilitaire s’appuie sur MacFuse pour permettre de monter un volume distant via SSH.

C’est tout pour l’instant et ça fonctionne \o/

Notes

[1] Si vous voulez un pas à pas détaillé, faites-le moi savoir, je le décrirai dans un autre billet.

[2] J’ai choisi, pour l’instant, de faire l’impasse sur les problèmes de sécurité.

[3] Si vous souhaitez la voir, elle se trouve dans ce billet.

[4] Vous pouvez omettre cette étape si vous ne compter pas utiliser de dépôt subversion sur votre serveur.

Ajouter un commentaire

Les commentaires peuvent être formatés en utilisant la syntaxe Markdown Extra.

Ajouter un rétrolien

URL de rétrolien : https://open-time.net/trackback/4731

Haut de page