Outils pour utilisateurs

Outils du site


serveur_perso

Différences

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

Lien vers cette vue comparative

serveur_perso [2013/06/02 10:24]
TuxGasy [Netfilter et Iptables] deplacement sur une page dédiée
serveur_perso [2016/02/16 23:11]
Ligne 1: Ligne 1:
-===== À propos ===== 
-<note tip>Avec la sortie de Wheezy, une réinstallation complète du système est prévue.</​note>​ 
-===== Installation de Debian ===== 
-Je ne vais pas détailler ici l'​installation de base de Debian. Je décrirai uniquement les parties qui me semblent importantes dans le cadre d'un serveur. Pour plus d'​informations,​ je vous conseille le [[http://​www.debian.org/​releases/​stable/​installmanual|Manuel d'​installation officiel]]. 
  
-==== Partitionnement ==== 
-Avec ma petite expérience dans l'​auto-hébergement (depuis 2009), il faut prendre son temps pour bien partitionner le(s) disque(s) dur(s) pour diverses raisons (surtout si vous voulez faire du [[wpfr>​RAID_(informatique)|RAID]] mais je n'en parle pas ici). 
- 
-Bien que Debian peut fonctionner avec une seule partition, je conseille de créer une partition dédiée pour les répertoires suivants : 
-  * **/** : La partition racine. Elle contient le système de base. Donc cette partition est obligatoire pour pouvoir démarrer le système. 
-  * **/home** : Répertoires personnels des utilisateurs. Adapter la taille selon votre besoin. Par expérience,​ à part mes mails, j'ai que quelques petits fichiers. 
-  * **/var** : Données variables. Les sites Web, les logs, le cache du système seront placés dans ce répertoire. Certains programmes gourmands (comme [[serveur_perso#​sauvegarde_avec_backup-manager|backup-manager]] ou [[outils_serveur#​apt-cacher-ng|apt-cacher-ng]]) utilisent par défaut ce répertoire. 
-  * **/usr** : Hiérarchie secondaire. Ce répertoire contient tous les programmes des utilisateurs avec les bibliothèques. Il est conseillé d'​avoir le plus d'​espace possible. Mais 7 Go devrait suffire pour un serveur. 
-  * **/tmp** : Fichiers temporaires. Généralement,​ 100Mo suffit mais j'ai toujours tendance à mettre beaucoup plus car certains programmes ont besoin de beaucoup d'​espaces pour stocker des fichiers temporaires. 
-  * **swap** : Partition d'​échange. Ce n'est pas un répertoire. Cette partition est utilisée lorsque la machine passe en veille (c'est qui n'est jamais le cas d'un serveur normalement) et aussi d’extension de la RAM. Généralement,​ on met autant que la RAM. 
- 
-<note important>​À partir d'ici, je considère que le système de base est bien installé.</​note>​ 
-===== Configuration pour un IP statique ===== 
-Pour un serveur, il est préférable de lui donner une adresse IP fixe. Sur un serveur, on n'​installe généralement pas d'​interface graphique. Donc, tout se passe en ligne de commande. On édite le fichier /​etc/​network/​interfaces : 
-<​code>#​ vim /​etc/​network/​interfaces</​code>​ 
- 
-Commenter ou enlever les lignes qui correspondent au DHCP : 
-<​code>​allow-hotplug eth0 
-iface eth0 inet dhcp</​code>​ 
- 
-Ensuite, on ajoute les lignes suivantes: 
-<​code>​auto eth0 
-iface eth0 inet static 
-address 192.168.1.20 
-network 192.168.1.0 
-netmask 255.255.255.0 
-broadcast 192.168.1.255 
-gateway 192.168.1.1</​code>​ 
- 
-Ça mérite une petite explication.\\ 
-**auto eth0** : activation automatique de l'​interface;​\\ 
-**iface eth0** : configuration l'​interface en statique;\\ 
-**address 192.168.1.20** : on met ici l'​adresse IP fixe.\\ 
- 
-===== Accès à distance au serveur ===== 
-==== Serveur SSH ==== 
-Pour accéder à distance à mon serveur, j'​utilise [[http://​fr.wikipedia.org/​wiki/​ssh|ssh]]. 
-<​code>#​ apt-get install openssh-server</​code>​ 
- 
-Ainsi, on peut accéder en console : 
-<​code>​$ ssh login@adresseIP</​code>​ 
- 
-Pour un transfert de beaucoup de fichier, on peut utiliser le protocole [[http://​fr.wikipedia.org/​wiki/​SFTP|SFTP]] qui est basé sur ssh. On peut utiliser [[http://​fr.wikipedia.org/​wiki/​filezilla|filezilla]] pour cela. 
-On peut accéder au serveur à partir d'​internet en redirigeant le port 22 vers le serveur au niveau du routeur. 
- 
-Pour contrer d'​éventuelles attaques de type force-brute,​ il est vivement conseillé d'​installer le paquet fail2ban : 
-<​code>#​ aptitude install fail2ban</​code>​ 
- 
-D'​ailleurs,​ il est vivement conseillé de ne pas autoriser de s'​identifier par ssh en root. Pour cela, éditer le fichier /​etc/​ssh/​sshd_config et modifier la ligne 20 comme suite : 
-<​code>​ 
-PermitRootLogin no 
-</​code>​ 
- 
-==== Authentification par clé ==== 
-On peux s'​authentifier à l'aide d'une clé (Cela évite de taper son mot de passe). Pour cela, il faut d'​abord générer la clé sur la machine locale (laissez vide le champ "​passphrase"​):​ 
-<​code>​ssh-keygen -t dsa</​code>​ 
-Cette commande génére une clé [[wpfr>​Digital Signature Algorithm|DSA]]. Les clés privé et publique seront stocké respectivement dans ~/​.ssh/​id_dsa et ~/​.ssh/​id_dsa.pub. 
- 
-Ensuite, il faut copier la clé publique sur le serveur (à l'aide de scp par exemple) : 
-<​code>​scp ~/​.ssh/​id_dsa.pub user@ip_serveur:​~/​.ssh/</​code>​ 
- 
-Et copier son contenant dans ~/​.ssh/​authorized_keys (sur le serveur) : 
-<​code>​cat ~/​.ssh/​id_dsa.pub >> ~/​.ssh/​authorized_keys</​code>​ 
- 
-Si le fichier authorized_keys n'​existe pas, le créer : 
-<​code>​ 
-touch ~/​.ssh/​authorized_keys 
-chmod 600 ~/​.ssh/​authorized_keys 
-</​code>​ 
- 
-<​note>​ 
-Les 3 précédentes commandes peuvent être effectué par une seule : 
-<​code>​$ ssh-copy-id -i ~/​.ssh/​id_dsa.pub user@ip_serveur</​code>​ 
-</​note>​ 
- 
-Maintenant, on peux se connecter en ssh comme suite (sans avoir à taper son mot de passe) : 
-<​code>​ssh -i ~/​.ssh/​id_dsa user@ip_serveur</​code>​ 
- 
-===== Sécurisation ===== 
- 
- 
-===== Désactiver IPv6 ===== 
-Quand on n'a pas une adresse IPv6, il est intéressant de désactiver l'IPv6 pour des raisons de performance et de sécurité aussi. 
- 
-Par défaut, l'IPv6 est activé sous Debian. Pour vérifier (1=inactif / 0=actif) : 
-<​code>#​ cat /​proc/​sys/​net/​ipv6/​conf/​all/​disable_ipv6</​code>​ 
- 
-Pour désactiver,​ ajouter dans le fichier **/​etc/​sysctl.conf** : 
-<​code>​ 
-# On desactive IPv6 
-net.ipv6.conf.all.disable_ipv6 = 1 
-net.ipv6.conf.default.disable_ipv6 = 1 
-net.ipv6.conf.lo.disable_ipv6 = 1 
-</​code>​ 
- 
-Recharger ensuite la conf : 
-<​code>#​ sysctl -p</​code>​ 
- 
-**__Source__** : http://​www.tux-planet.fr/​desactiver-ipv6-sous-linux/​ 
- 
-===== À voir aussi ===== 
- 
-  * [[Outils serveur]] 
-  * [[LAMP]] (Linux Apache MySql et PHP) 
serveur_perso.txt · Dernière modification: 2016/02/16 23:11 (modification externe)