Salut les amis.
Hier, j’ai réussi à avoir un serveur Kimsufi avec 2 To de HDD pour le prix d’un serveur avec 1 To. à 10€ par mois je ne vais pas regarder trop les performances pures et dures du serveur, sachant que ce serveur sera là pour remplacer mon vieillissant Kimsufi, qui n’a qu’un disque de 512 Go (que je pense reconvertir en serveur de Backup) … Ce nouveau serveur servira de serveur web, serveur de cloud privé, seedbox, serveur GIT, de test pour docker … enfin un peu tout.
Plutôt que de simplement migrer facilement mon serveur Debian 8 vers le nouveau, je vais réécrire ici les procédures d’installation from scratch, mais je pense que ceci aboutira à l’utilisation d’un script post-install … Oui car on est flemmard ou on ne l’est pas !
Partitionnement
La grande question du partitionnement
Alors pour expliquer rapidement.
Un / de 20 Go, suffisant.
/home qui fait pour l’instant 1 To, je vais stocker les fichiers de ma seedbox 😀
/var/log qui fait 5 Go (oui j’ai eu une fois une appli verbeuse, qui m’a généré tellement de log que j’en ai perdu mon serveur … Je préfère donc toujours mettre mon dossier de log dans une partition à part et qu’elle reste isolée du reste du système … Les logs ça grossi vite 🙂
Et le reste ?? Et bien le reste je vais voir. Est ce que j’agrandis mon /home ? est ce que je dédie une partition à autre chose ? Je ne sais pas … de toute façon c’est du LVM donc je verrai avec le temps ! 😉
Premier Démarrage
Création d’un compte utilisateur
Pour commencer, si vous n’avez pas de compte perso, ajoutez en un, si vous en avez un passez cette étape
Je vais donc me créer un compte sur le serveur et définir son mot de passe.
useradd -m -G sudo tom passwd tom
Maintenant il va falloir personnaliser mon environnement de travail (logiciel, bashrc …)
Pour commencer, c’est personnel, je vais importer mon bashrc et mon env shell. Pour cela j’héberge sur GitHub les fichiers nécessaires
cd /tmp # On installe git si pas encore installé sudo apt install git git clone https://www.github.com/SckyzO/bashrc cd bashrc # Copie dans le home directory de l'utilisateur cp .bashrc .dircolors $HOME # Copie dans le home directory de root sudo cp .bashrc .dircolors /root # On delete :) rm /tmp/bashrc
Mise en place des dépôts
Nous allons ajouter les dépôts “contrib” et “non-free” ainsi que le rétro-portage Backports
vi /etc/apt/sources.list
# Les dépôts officiels Debian Jessie : deb http://httpredir.debian.org/debian/ stretch main contrib non-free #deb-src http://httpredir.debian.org/debian/ stretch main contrib non-free # Debian Jessie, mises-à-jour de sécurité : deb http://security.debian.org/ stretch/updates main contrib non-free #deb-src http://security.debian.org/ stretch/updates main contrib non-free # Debian Jessie, mises-à-jour "volatiles" : deb http://httpredir.debian.org/debian/ stretch-updates main contrib non-free #deb-src http://httpredir.debian.org/debian/ stretch-updates main contrib non-free # Debian Jessie, dépôt de rétro-portages ("backports") : deb http://httpredir.debian.org/debian stretch-backports main contrib non-free #deb-src http://httpredir.debian.org/debian stretch-backports main contrib non-free
Mise à jour système
apt-get update && apt-get upgrade && apt-get dist-upgrade
Installation des programmes
Divers
apt-get install man manpages-fr manpages-fr-extra manpages-fr-dev bash-completion curl locales fortunes nano python-pip wget zip unzip bzip2 linux-kernel-headers screen ca-certificates fortune-mod lsof strace sudo tree coreutils htop ccze vim-runtime vim-common vim-nox vim vim-syntastic vim-addon-manager vim-runtime build-essential subversion autoconf screen g++ gcc ntp curl git unrar unzip mediainfo ffmpeg
Je ne vais pas rentrer dans les détails des programmes installés. C’est mon environnement
Ajout de mon MOTD Dynamique
Pour ceux qui ne savent pas, je vous renvoie vers le lien suivant :
Un peu de Sécurité
Sécuriser son serveur SSH, c’est quand même la base. Par défaut la configuration est bien pour une utilisation locale. Mais sur internet, mieux vaut prendre quelques précautions.
Perso, je change le port de connexion par défaut, cela évitera quelques petits soucis (mes amis les bots …), et je n’autorise pas la connexion SSH à l’utilisateur root (non sans déconner !!)
Il vous faudra éditer le fichier /etc/ssh/sshd_config
Changer le port par défaut (évitez de mettre un port compris en 1 et 1024 …)
[ . . . ] Port 1234 # (mettez le port que vous souhaitez) [ . . . ] Protocol 2 [ . . . ] PermitRootLogin no [ . . . ] # Cette variable permet uniquement aux utilisateurs listés après la variable AllowUsers de pouvoir se connecter en ssh (Fonctionne aussi avec AllowGroups) AllowUsers username1 username2 AllowGroups groupe1 groupe2
Voila le principal est fait. J’écrirai un autre article à destination de la sécurité sur un serveur Linux (ssh, fail2ban, port-knocking …)
Et Ensuite ?
Et bien ensuite va s’en suivre plusieurs articles, pour l’installation et la configuration de plusieurs softs. Je pense à terme faire pas mal de docker. Je reviendrai dessus dans les jours prochains.
Pour l’instant on va s’installer “normalement” une petite seedbox sur le serveur. Je vous présenterai cela par la suite.
Et vous vous installez aussi votre Debian comme ceci ?