Tutos en vrac

De tout et de rien...

Outils pour utilisateurs

Outils du site


mon_projet_de_serveur_personnel

Différences

Ci-dessous, les différences entre deux révisions de la page.

Lien vers cette vue comparative

Les deux révisions précédentes Révision précédente
Prochaine révision
Révision précédente
mon_projet_de_serveur_personnel [2014/11/15 22:42]
nc
mon_projet_de_serveur_personnel [2015/09/08 19:53] (Version actuelle)
nc [Relier le serveur au monde extérieur]
Ligne 1: Ligne 1:
 +====== Mon projet de serveur auto-hébergé ======
 +===== Contexte =====
 +L'​idée me trotte depuis longtemps, et après de nombreuses lectures diverses un peu partout sur le net, j'ai finalement bien envie de me lancer.
  
 +Je possède actuellement deux noms de domaines (un .fr et un .org), ainsi qu'un espace sur un serveur mutualisé, le tout chez Gandi.net. J'en suis au passage très satisfait.
 +
 +Seulement voilà, la curiosité aidant, l'​envie d'en apprendre davantage, le plaisir d'​avoir le contrôle intégral de ses données et de sa présence sur la toile, j'ai enfin l'​intention de me lancer.
 +===== Objectif =====
 +L'​objectif sera plutôt modeste dans un premier temps : installer mon serveur et faire les premières configurations basiques, apprendre à le maintenir à jour, et m'en servir pour du partage de fichiers sur le réseau local (qui contient des machines sous Windows, Linux, Android...). Puis, agrandir le champ des possibles, en y installant un client type OwnCloud, un logiciel FTP, un serveur web, et quelques outils sympa (RSS..). Le serveur mail n'est pas prévu pour le moment, car c'est d'une part très sensible (hors de question de défaillances!),​ mais également il semblerait que ce soit d'un niveau plus avancé, donc chaque chose en son temps.
 +
 +Cette page est destiné à garder une trace reproductible de mon installation afin de pouvoir être capable de refaire une installation complète si j'opte finalement pour l'​achat d'une machine optimisé pour cette fonction (pour l'​instant je vais faire des tests en recyclant un vieux portable) et éventuellement servir de soutien pour d'​autres qui voudraient se lancer!
 +===== De nombreuses sources de renseignement =====
 +Je ne suis pas seul dans ce projet : plein d'​autres avant moi se sont lancés dans les joies de l'​hébergement "at home", et je n'ai pas l'​intention de réinventer la roue! D'​ailleurs je n'ai que quelques fragiles bases de réseau, programmation,​ ligne de commande...
 +Voici quelques bonnes lectures qui m'ont inspirées au fil de l'eau :
 +==== Généralités sur l'​auto-hébergement ====
 +  * [[http://​www.bortzmeyer.org/​presence-en-ligne.html|Rendre l'​auto-hébergement facile et sans douleur]], par Stéphane Bortzmeyer
 +  * La [[http://​wiki.auto-hebergement.fr/​g%C3%A9n%C3%A9ral/​avantages_et_inconv%C3%A9nients|page "​Avantages et inconvénients"​]] du wiki de auto-hebergement.fr
 +  * Une (vieille) conférence sur l'​auto-hébergement : [[http://​vimeo.com/​3110600|Minitel 2.0]], par Benjamin Bayart
 +  * La [[https://​fr.wikipedia.org/​wiki/​Auto-h%C3%A9bergement_%28Internet%29|page Wikipédia sur l'​auto-hébergement]]
 +==== Des tutoriels techniques intéressants ====
 +  * [[http://​yeuxdelibad.net/​Logiciel-libre/​Installation_et_securisation_d_un_serveur_auto-heberge.html|Tutoriel pour installer un serveur chez soi (debian)]] par Xavier Cartron
 +  * [[http://​root.suumitsu.eu/​wiki/​doku.php?​id=tuto:​creer_son_propre_blog:​l_hebergement_maison|L'​hébergement maison]], par Mitsu
 +  * [[http://​wiki.auto-hebergement.fr/​|Auto-hébergement.fr]]
 +  * Blog-libre.org,​ et en particulier la série d'​article [[http://​blog-libre.org/​post/​series/​serverhome|server@home]] par Cascador
 +  * [[http://​lifehacker.com/​5919558/​turn-an-old-computer-into-a-networked-backup-streaming-or-torrenting-machine-with-ubuntu/​all|Turn an Old Computer into a Networked Backup, Streaming, or Torrenting Machine with Ubuntu]], par Whitson Gordon
 +  * Un [[http://​www.ducky-pond.com/​posts/​2014/​Feb/​how-to-use-ddclient-with-no-ip/​|tutoriel]] sur ddclient et No-IP, par Ben
 +==== ... et des gens sympas! ====
 +Quelques remerciements en vrac!
 +  * A Jambon, Nicolas et Perdouille du site horyax.fr pour tous leurs conseils techniques!
 +  * Aux blogueurs Mitsu (suumitsu.eu);​ Timo (lehollandaisvolant.net) et Seb (sebsauvage.net) pour les années de suivi assidus de leurs paroles qui valent de l'or!
 +  * Aux nombreux bénévoles qui trainent sur IRC, sur le serveur freenode en particulier,​ et particulièrement les peuplades de #ubuntu ; #ubuntu-fr ; #dokuwiki
 +===== Matériel =====
 +Mon serveur actuel va se baser sur mon vieil ordinateur portable que je dépoussière tout spécialement.
 +
 +Il s'agit très exactement d'un //HP Pavilion dv8365ea//, dont voici les spécifications,​ vite fait: 
 +
 +Processeur : Intel Core Duo T2400 à 1,83 GHz avec technologie Centrino Duo, mémoire vive : <​del>​2 Go</​del>​ 1 Go, disque dur : 120 Go Combiné lecteur DVD-ROM et graveur CD/DVD biformat double couche, écran 17" TFT BrightView
 +
 +Et voici les spécifications détaillées,​ d'​après un site commerçant.
 +  Type de produit : Portable - Notebook
 +  Écran : 17 "
 +  Poids en kg : 3,7 Kg
 +  Dimensions (l x p x h) en mm : 397 x 282 x 46
 +  Résolution écran : TFT BrightView
 +  Processeur : Intel Core Duo T2400
 +  Vitesse du processeur : 1,83 GHz / 667 MHz
 +  Mémoire cache externe : 2 Mo de niveau 2
 +  Mémoire RAM :​ <​del>​2 Go</​del>​ 1 Go, une des barrettes étant défaillante
 +  RAM maxi : 2 Go
 +  Capacité du disque dur : 120 Go
 +  Lecteur / Graveur : Combiné lecteur DVD-ROM et graveur CD-RW, DVD -R/-RW, DVD +R/RW, DVD +R double couche
 +  Lecteur de cartes mémoire : 6 en 1 (Memory Stick, Memory Stick Pro, Secure Digital, Smart Media, MultiMedia Card, xD Picture Card)
 +  Carte graphique : NVIDIA GeForce Go 7600
 +  Mémoire vidéo dédiée : 256 Mo
 +  Audio : 16 bits intégrée
 +  Carte réseau Ethernet : 10/100 Mbps
 +  Communication sans fil : WiFi 802.11a/​b/​g,​ Bluetooth
 +  Connecteurs : 4 USB 2.0, 1 modem RJ-11, 1 Ethernet RJ-45, 1 FireWire IEEE1394, 1 VGA, 1 S-Vidéo, 1 sortie casque avec sortie S/PDIF, 1 entrée micro, 1 PC Card de type I ou II, 1 ExpressCard/​54 (compatible ExpressCard/​34)
 +  Dispositif de pointage : TouchPad (pavé tactile)
 +  Type de batterie : Lithium ion / NC
 +  Résolution maxi avec mémoire installée : 1440 x 900
 +  Sortie vidéo TV : S-Vidéo
 +  Tuner TV TNT : Oui, avec télécommande
 +  Connecteurs FireWire / IEEE 1394 : 1
 +  Nombre de haut-parleurs intégrés : 2
 +  Modem / Fax 56K :​ Oui ​
 +===== Et... action ! =====
 +Je pars du principe que le lecteur a suffisamment de bagage technique pour comprendre ce que j'ai fait, donc je détaillerais les éléments parfois de façon succincte.
 +
 +J'​utiliserai ici Ubuntu Server, version de base (avec...unity).
 +==== Récupération d'​Ubuntu Server ====
 +Procédé tout à fait classique :
 +  - Récupération de l'​image iso de la [[http://​ubuntu-fr.org/​telechargement?​variante=server#​|dernière version d'​Ubuntu Server LTS]], adapté à mon pc. J'ai récupéré pour ma part la version 14.04.1 LTS (32 bits), correspondant au fichier ubuntu-14.10-server-i386.iso. A noter que j'ai choisi d'​utiliser BitTorrent pour cela car cela m'​éviter d'​avoir a vérifier l'​intégrité du fichier final reçu, et préserve la bande passante du serveur d'​Ubuntu-fr.
 +  - Gravure de l'iso sur un bon vieux DVD. J'​utilise pour ma part l'​excellent CDBurnerXP.
 +
 +==== Installation d'​Ubuntu Server ====
 +blablabla......................FIXME:​-)
 +==== Relier le serveur au monde extérieur ====
 +On commence tranquillement en installant ddclient:
 +  apt-get install ddclient
 +La configuration démarre, répondre n'​importe quoi puisque nous allons configurer à la main.
 +
 +Se rendre sur no-ip.com et créer un compte gratuit. Bien noter le login, mot de passe et le domaine dynamique choisi.
 +
 +FIXME Ne pas installer le '​Dynamic Update Client'​ qu'ils proposent.
 +
 +Nous allons éditer le fichier de configuration de ddclient. Dans un terminal :
 +  sudo nano /​etc/​ddclient.conf
 +
 +Remplacer le contenu par :
 +  use=web, web=checkip.dyndns.com/,​ web-skip='​IP Address'​
 +  ​
 +  protocol=dyndns2
 +  server=dynupdate.no-ip.com
 +  login=charpy1
 +  password=un_mot_de_passe_costaud
 +  charpyserv.ddns.net
 +
 +En remplaçant bien sûr le login et le mot de passe, ainsi que le nom de domaine dynamique généré lors de la création du compte.
 +
 +Ensuite on enregistre puis on redémarre ddclient :
 +  sudo service ddclient restart
 +
 +On attend quelques minutes : ddclient va initier les mises à jour automatiques des DNS avec No-Ip. On peut vérifier facilement :
 +  ping charpyserv.ddns.net
 +
 +Résultat : 
 +  PING charpyserv.ddns.net (109.30.12.65) 56(84) bytes of data.
 +  64 bytes from 65.12.30.109.rev.sfr.net (109.30.12.65):​ icmp_seq=1 ttl=64 time=1.98 ms
 +
 +En cas de problème, rendez vous dans /​var/​log/​syslog pour vérifier d'​éventuels messages d'​erreurs.
 +
 +Le nom de domaine dynamique est maintenant relié au routeur. Il faut maintenant activer une translation de port (NAT) pour activer le serveur Http :
 +  Nom : servHTTP (par exemple)
 +  Protocole : TCP
 +  Type : Port
 +  Ports externes : 80
 +  Adresse IP de destination : 192.168.1.8 (L'​adresse ip locale du serveur)
 +  Ports de destination : 80
 +
 +Hum... Ca devrait être bon! Essayez d'​atteindre votre site par le nom de domaine dynamique, pour voir!