Etapes indispesables pour une meilleure sécurité de votre serveur dédié ou VPS
1. Limiter l'accès au serveur
Si vous êtes une entreprise ou un groupe de freelancer, l'accès au serveur doit être restreint. Ne donner les cordonnées d'accès au serveur que à ceux qui savent vraiment comment s'en servir. La pluspart de temps malgré toutes mesures de sécurités établies, l'infiltrage du serveur est dû à une négligeance humaine.
2. Eviter l'installation des modules inutiles
Ne pas installer des modules dont vous en avez pas besoin! Car certains modules viennent avec des issues de sécurités par défaut.
3. Changer le port de défaut
vi /etc/ssh/sshd_config
Retrouvez la ligne où se trouve port comme illustrer ci-après
Vous pouvez entrer un autre numéro. L'idéal serait un nombre entre 30000 et 65535. Par ailleurs, nous vous recommandons de choisir un port finssant par 22, par exemple, le 30022. Ceci en vu de le retenir facilement. Du moins le 22 fait penser au ssh
Sauvegarder le nouveau port dans votre pare-feu
iptables -l INPUT -m state -state NEW -m tcp -p tcp -dport 30022 -j ACCEPT
service iptables save
service sshd restart
Supprimer le port 22 complètement du pare-feu et de votre système
iptables -D INPUT -m state -state NEW -m tcp -p tcp -dport 22 -j ACCEPT
service iptables save
4. Désactiver la connexion root
La pluspart des attaques vers un serveur se font généralement en direction des utilisateurs root, admin
Aucune crainte, vous pourez toujours travailler dans le serveur en tant que root, si vous le souhaitez. Dans ce cas il suffirait juste de faire:
su -
Créer un utilisateur. NB: Choisissez un autre nom que celui utiliser dans cet article
adduser userver
passwd userver
gpasswd -a userver sudo
vi /etc/ssh/sshd_config
Plus bas ajouter
AllowUsers userver
Ensuite retrouvez dans le même fichier
PermitRootLogin yes
Remplacer le par
PermitRootLogin no
Redemarrer le service ssh
service sshd restart
Attention
Anvant de fermer la console, veuillez vous rassurer que la connexion avec votre utilisateur créé et le nouveau port fonctionne bien
ssh -p30022 userver@_votre_IP
Bien! jusqu'ici, vous avez entrepris des mesures de sécurité importantes pour votre serveur. Mais ce pendant celles ci présentent toujours des failles! Car dès lors que vous utilisez comme moyen de connexion un mot de passe, vous n'êtes pas à l'abris des attaques de type brute force. Raison pour laquelle nous recommandons une connexion par clé publique/privée vers votre serveur
5. Connexion par clé publique/privée
Si votre machine locale est un système linux, nous optons pour la connexion avec la clé publique (fortement recommandée)
NB: les commandes ci-après sont à exécuter sur votre machine locale
Générer les clés
ssh-keygen -t rsa -b 4096 -C "[email protected]"
On sous entend que votre utlisateur local est "localuser", vous verez un message de type suivant:
Generating public/private rsa key pair.
Enter file in which to save the key (/home/localuser/.ssh/id_rsa):
Confirmer en appuyant la touche Entrer du clavier. Vous pouvez aussi entrer un passphrase pour protéger vos clés. Cette option est optionale, pour continuer sans passphrase, validez tout sans aucune entrée de mot de passe
Copier la clé publique vers le serveur
Il exite bien une methode automatique, mais dans cet article nous le faissons manuellement, pour qu'on comprenne d'avantage comment ca se passe
cat ~/.ssh/id_rsa.pub
Vous verez une sortie comme celle ci-après:
ssh-rsa AAAAB3NzaC1yc2EAAAADAQABAAABAQDBGTO0tsVejssuaYR5R3Y/i73SppJAhme1dH7W2c47d4gOqB4izP0+fRLfvbz/tnXFz4iOP/H6eCV05hqUhF+KYRxt9Y8tVMrpDZR2l75o6+xSbUOMu6xN+uVF0T9XzKcxmzTmnV7Na5up3QM3DoSRYX/EP3utr2+zAqpJIfKPLdA74w7g56oYWI9blpnpzxkEd3edVJOivUkpZ4JoenWManvIaSdMTJXMy3MtlQhva+j9CgguyVbUkdzK9KKEuah+pFZvaugtebsU+bllPTB0nlXGIJk98Ie9ZtxuY3nCKneB+KjKiXrAvXUPCI9mWkYS/1rggpFmu3HbXBEp1NeTt [email protected]
Ajouter la clé publique au serveur dédié (VPS)
Si vous êtes encore connectés comme root, Changer d'utilisateur comme suit:
su - userver
Cette commande nous renvois directement dans le repertoire root de l'utilisateur
mkdir -p .ssh
chmod 700 .ssh
Maintenant créons le fichier .ssh/authorized_keys s'il n'existe pas encore et y ajouter votre clé publique
cd .ssh
vi authorized_keys
chmod 600 authorized_keys
sudo service sshd restart
Maintenant il est temps de tester si tout est ok avant de continuer. Ne pas encore fermer le terminal actuel! Ouvrez en un autre...
ssh -p30022 userver@_votre_IP
Si vous parvenez à acceder au serveur sans problème, alors super! Dans le cas contraire revérifier les étapes de configuration
La suite serait maintenant de désactiver la connexion par mot de passe
6. Désactiver la connexion par mot de passe
Si tout est ok jusqu'ici, alors il est temps de continuer en tant root
exit
Ouvrez le fichier de configuration de nouveau
vi /etc/ssh/sshd_config
PasswordAuthentication yes
Par :
PasswordAuthentication no
Vous pouevz maintenant si vous le souhaitez supprimer la ligne suivante:
AllowUsers userver
Car elle devient obsolète dès lors que vous désactivez la connexion par mot de passe
service sshd restart
Toujours tester si tout est ok avant de continuer. Ne pas encore fermer le terminal actuel!
Pour complèter toutes ces mesures de sécurités que vous venez d'entreprendre sur votre serveur, nous vous recommandons les articles suivants:Laisser un commentaire
Votre adresse de messagerie et numéro de téléphone ne seront pas publiés