sujets-libres.fr

Informatique, logiciels libres, internet, humeurs et jonglerie, humeurs, et… ben… le reste !

3 – Préparation du serveur

without comments

- Choix de la machine qui va servir à l’auto-hébergement

Côté matériel, un serveur peut être un ordinateur comme un autre, d’autant qu’il n’y a pas un besoin énorme de puissance pour s’auto-héberger. On peut ainsi utiliser une vieille machine de récupération ou s’en monter une nouvelle adaptée à l’usage. Il peut être intéressant dans ce cas de choisir les composants aussi en fonction de leur consommation électrique. Prévoir un lecteur DVD, un écran et un clavier, le temps de l’installation du système d’exploitation. Ensuite, seule une prise réseau et la prise électrique seront nécessaires.
Certains disques réseau (disques NAS) peuvent être utilisés à cet effet. Je ne vais pas m’attarder sur cette possibilités car des solutions prêtes à l’emploi sont déjà disponibles chez plusieurs constructeurs (chez Synology, QNAP, etc…). De plus, les NAS n’offrent pas autant de possibilités qu’un ordinateur spécialement destiné à cet usage.

- Choix du système d’exploitation utilisé sur le serveur

Cette étape est très importante. Tout système d’exploitation peut être utilisé, le choix est libre mais ça va conditionner la suite car il est évident qu’on ne fait pas les choses de la même manière que l’on soit sous Windows ou GNU/Linux par exemple.

Pour ma part, j’ai opté pour Debian Lenny, soit la dernière version stable de cette vénérable distribution GNU/Linux au moment où j’écris ces lignes. Pour la suite de ce guide, je me base sur cette distribution mais ce que j’écris est facilement adaptable à d’autres distributions GNU/Linux et globalement à tout système basé sur UNIX.
http://www.debian.org/distrib/ (télécharger une image amorçable et la graver ensuite).

- Installation du système

Debian a la réputation d’être difficile à configurer. En fait, ce qui était valable il y a quelques années ne l’est plus aujourd’hui. Les choix par défaut feront l’affaire. L’installation avec uniquement le système de base suffit. Il n’est pas nécessaire de sélectionner d’environnement de bureau. L’administration se fait ensuite en ligne de commande (ou shell de commande).
http://www.debian.org/releases/stable/i386/index.html.fr (au cas où vous vouliez aller plus loin mais on peut s’en passer ici).

- Le shell

Lorsque l’on ne connait que Windows, le shell rappel beaucoup l’invite de commande. A l’usage, les commandes shell sont bien plus puissantes que les commandes DOS. En effet, et contrairement à Windows, les OS basés sur UNIX ou qui en sont dérivé comme BSD ou GNU/Linux sont utilisables sans interface graphique grâce presque uniquement à la ligne de commande. De nombreux tutoriels existent à ce sujet donc autant les réutiliser. Je trouve celui qui suit très bien fait :
http://www.tuteurs.ens.fr/unix/shell/
Il vaut mieux connaitre au moins les commandes de base pour naviguer, installer un paquet, lancer une application, etc…

- VIM ou Emacs

Le shell de commande permet beaucoup de choses, comme celle d’utiliser des éditeurs de texte très puissants dans le terminal. Deux solutions principales existent.
La première est VI (prononcer Vi Aie) et la version libre sous GNU/Linux se nomme VIM. Historiquement, ce logiciel provient d’UNIX.
La seconde option est Emacs, développé par Richard Stallman, le créateur du projet GNU.
VIM est installé par défaut alors qu’Emacs demande à être installé. A savoir que le fonctionnement de l’un et l’autre diffère totalement et que dans les deux cas, il y aura une période de prise en main. Dans un premier temps, il convient de choisir avec lequel on va travailler et éditer ses fichiers. Personnellement, j’ai opté pour VIM que je trouve plus facile d’accès.
http://www.tuteurs.ens.fr/unix/editeurs/

- SSH

L’idée lorsqu’on s’auto-héberge, c’est qu’une fois le serveur allumé, il n’est plus nécessaire d’être physiquement devant pour agir dessus. Il faut donc pourvoir communiquer à distance avec elle depuis une autre machine. A 2 mètres ou à 200 Kms, c’est pareil. Pour cela, on peut utiliser telnet mais comme tout passe en clair sur le réseau, il vaut mieux éviter. La solution la plus commode est SSH.
http://www.openssh.org/fr/

Pour utiliser SSH, on peut installer OPENSSH. Ce howto là est bien fait : http://pfoo.csnu.org/howto/openssh.html. Par rapport à ce qui est écrit, je me suis seulement contenté de modifier le fichier /etc/ssh/sshd_config pour y rajouter un second port à l’écoute (au choix mais supérieur à 1024) en plus du port 22, histoire de ne pas être trop embêté lorsque je veux me connecter sur mon serveur en dehors de mon réseau. Par mesure de sécurité, j’ai aussi désactivé la connexion en ssh par l’utilisateur root. La configuration de base suffit largement sinon.

- IP fixe en local

Il est intéressant qu’un ordinateur portable soit en DHCP, c’est à dire qu’il soit dans un mode où c’est le routeur sur lequel il se connecte qui lui attribue une adresse IP locale. Ça décharge l’utilisateur de cette partie, surtout s’il se connecte sur de nombreux réseaux.

Si par contre l’ordinateur, ou le serveur dans notre cas, est toujours connecté au même réseau, il peut être utile d’attribuer soit même l’adresse IP à la machine (dans la mesure où on n’attribue pas n’importe quoi). Ça permet au moins d’être certain d’avoir toujours la même adresse IP quoi qu’il arrive, même en cas de redémarrage ou de changement de matériel par exemple.

Sous Debian, et si comme moi vous avez choisi la configuration en DHCP lors de l’installation, il faut éditer le fichier /etc/network/interfaces . J’ai ici commenté la ligne d’origine faisant référence au DHCP et j’ai ajouté le reste (note : les lignes commentées sont bien entendu précédés du signe #).

# This file describes the network interfaces available on your system
# and how to activate them. For more information, see interfaces(5).
# The loopback network interface
auto lo
iface lo inet loopback
# The primary network interface
allow-hotplug eth0
#iface eth0 inet dhcp
iface eth0 inet static
gateway 192.168.1.1
address 192.168.1.32
netmask 255.255.255.0

- Putty :

Administrer cette machine depuis une autre en SSH se fait simplement depuis un terminal. Cependant, cela n’est pas possible avec l’invite de commande Windows (et je crois savoir que quelques personnes utilisent encore les OS de la firme de Redmond :p ). Le logiciel Putty et destiné à combler ce manque. Grâce à lui, il est possible d’ouvrir une session à distance sur votre serveur depuis un poste sous windows.
http://www.putty.org/

- Dns dynamique :

Si votre IP publique n’est pas fixe, il faut utiliser un service comme Dyndns. Si en général on utilise la fonction implémentée dans son modem/routeur pour notifier Dyndns de ses changements d’IP publique, il faut savoir que des applications existent aussi dans les dépôts (j’en ai eu l’utilité avec une 9box ne supportant un nom de domaine dyndns de plus de 20 caractères). J’utilise personnellement « ddclient » qui est très simple à configurer.

Written by -Fred-

février 14th, 2010 at 6:45

Posted in