Utilisateur d'origine : Sizick
Je vous conseil de suivre se tutoriel rédigé par @Jessy si vous ne savez pas comment vous connecter à votre VPS Click ici
Vous cherchez à sécurisé votre VPS/Serveur dédié ? Dans ce cas vous vous trouvez au bon endroit !
⚠️ Attention : Il est fortement conseillé de sauvegarder l'ensemble de votre serveur avant d'effectuer la sécurisation de votre serveur ! Si vous faites une erreur en suivant le Tutoriel il se peux que vous ne puissiez plus accéder à votre serveur.
- Note, ce tutoriel sera écrit en plusieurs parties.
Veillez à bien vous connecter en root.
Étape 1 : Sécurisation du SSH
Pour commencer, il va falloir créer un utilisateur avec lequel vous devrez dorénavant vous connecter en SSH :
- Note : Remplacez "pseudo" par votre pseudo.
- Notez bien le mot de passe que vous entrerez sur l'utilisateur que vous êtes entrain de créer car il vous sera en permanence utile !
Par la suite, vous aurez besoin de créer une clé SSH afin de vous connecter de façon plus sécurisé qu'avec un mot de passe. Pour cela vous devrez télécharger PuttyGen si vous êtes sous windows.

Une fois téléchargé, lancez le. Vous devrez normalement obtenir ceci :

Cliquez sur "Generate" puis bougez votre souris à l'intérieur de la fenêtre jusqu'à obtenir quelque chose de similaire à cela :

Une fois votre clé générée remplissez votre "Key passphrase" et "Confirm passphrase" (fortement conseillé) puis enregistrez votre clé privé dans un dossier en cliquant sur le bouton "Save private key".
Par la suite copiez votre clé publique présente dans la partie haute du logiciel (voir capture d'écran) à l'aide de CTRL + A.

Créez un fichier portant le même nom que votre clé privée mais en veillant bien à modifier l'extension par .pub avant de créer le fichier ou se trouvera votre clé publique, puis coller y votre clé publique.
Afin de pouvoir utiliser votre clé SSH vous allez devoir inscrire votre clé publique sur votre VPS afin qu'il puisse par la suite vous identifier grâce à votre clé ssh.
Pour réaliser cela, vous allez créer le dossier .ssh avec la commande suivante :
$ mkdir /home/pseudo/.ssh
* Remplacez "pseudo" par le nom de l'utilisateur créer précédemment.
Maintenant vous allez enregistrer votre clé publique, copiez la puis entrez la commande (en remplaçant "votre_clé_ssh" par la clé publique que vous venez de générer):
$ echo "votre_clé_ssh" >> /home/pseudo/.ssh/authorized_keys
* Remplacez "pseudo" par le nom de l'utilisateur créer précédemment.
Dernière chose à faire afin de rendre opérationnel votre authentification par clé ssh, donnez les droits d'écriture/lecture à l'utilisateur créer plus haut :
$ chown -R pseudo /home/pseudo
* Remplacez "pseudo" par le nom d'utilisateur créer plus tôt.
Vérifiez que sudo
est installé sur le serveur, si ce n'est pas le cas alors installez le paquet sudo :
$ apt-get install -y sudo
Vous devrez par la suite éditer le fichier de configuration du paquet dernièrement installé (utilisez l'éditeur texte de votre choix, j'utiliserai nano pour sa simplicité) :
Vous devriez tomber sur une section comme ça dans le fichier de configuration :

Il vous suffira de rajouter une ligne avec l'utilisateur que vous avez créer précédemment et y ajouter les mêmes paramètres qu'à root, ça donnera cela :

Une fois terminé il vous suffit de quitter l'éditeur texte en sauvegardant avec CTRL + X puis Y ou O suivant la langue de votre serveur et pour finir ENTRER.
À ce moment la vous devrez redémarrer sudo
Nous allons maintenant éditer la configuration de SSH
$ nano /etc/ssh/sshd_config
Il est fortement conseillé de changer les champs suivants :
- Port (par défaut 22) : Il sera possiblement précédé d'un # se qui signifie qu'il ne sera pas pris en compte par SSH. Vous devrez enlevez se # puis modifier le port SSH par un port de façon aléatoire mais veillez à se que le port que vous choisissez de renseigner ne soit pas déjà utilisé par un autre service !
- PermitRootLogin : mettre à « no » afin d'interdire totalement la connexion en root.
- AllowUsers : (souvent n'est pas présent dans le fichier de configuration ssh, il faudra donc l'ajouter de vous même) permet d'indiquer une liste d'utilisateur qui seront autorisés à se connecter en SSH. [Enregistrer et quitter]
Puis redémarrez SSH :
Maintenant nous allons pouvoir tester si tout est bon (⚠️ Ne vous déconnectez pas de la session ssh déjà ouverte au cas d'une mauvaise configuration, cela vous permettra de régler tout soucis !). Ouvrez Putty une nouvelle fois, renseignez votre nom d'utilisateur ainsi que l'adresse ip et le port que vous avez mis lors de la configuration de SSH (si vous l'avez changer) puis cliquez sur le bouton Save après avoir donner un nom à votre session.

Après cela, dépliez la catégorie SSH en cliquant sur le petit "+" :

Se qui devrait vous donnez cela :

Rendez vous dans la configuration de "Auth" en cliquant dessus :

Cliquez sur le bouton "Browse" puis allez chercher votre clé privé enregistrée au préalable.

Vous devrez avoir donc le fichier votre_clé.ppk renseignée avec le chemin avant comme :

Maintenant, retournez dans "Session" tout en haut :

Puis selectionnez "Default Settings" pour enfin cliquer sur le bouton "Save"

Maintenant vous pouvez enfin vous connecter à votre VPS en double cliquant sur le nom de la session précédemment créer.
Note : Si vous avez un message d'erreur type Connexion refused c'est que vous avez fait une erreur dans une étape de la configuration, donc utilisez la session ssh précédente que vous n'avez évidement pas fermé !
Lorsque vous êtes maintenant connecté à votre VPS avec l'utilisateur personnel et non root. Vous devrez effectuer les commandes d'ordre Administrateur en ajoutant "sudo" devant chacune de vos commande. Le mot de passe de votre utilisateur vous sera donc demandé à chaque fois !