Extra: Un peu de sécurité
Sécuriser son node
Dédier un compte utilisateur AVAX sur votre serveur
L'interet de dédier un compte de votre serveur à l'utilisation de votre node permet généralement de ne plus se connecter avec le compte root de votre serveur, qui est une mauvaise pratique.
Créer un nouvel utilisateur sur votre serveur:
adduser monutilisateur
Renseignez ensuite le mot de passe pour ce nouveau compte ainsi que les informations complémentaires (non nécessaires) si vous le souhaitez.
Connexion via clé SSH
La connexion à son node via une combinaison ID/MDP n'est pas conseillé. Il est préférable de se connecter via une clé SSH. En terme de sécurité, la clé de type ed25519 offre le meilleur rapport entre sécurité et performance.
générer une paire de clé
Pour générer votre paire de clé privée publique, vous pouvez la créer directement sur votre ordinateur
Ouvrez votre terminal et tapez la commande suivante:
ssh-keygen -t ed25519
Il vous sera demandé d'entrer une passphrase, a vous de mettre un mot de passe ou de laisser cela vide (permet de s'y connecter plus rapidement).
Votre paire de clé sera visible dans votre dossier caché .ssh
ls -l ~/.ssh/
Il ne vous reste plus qu'à aller déposer votre clé dans le serveur de votre Node
ssh-copy-id -i .ssh/id_ed25519.pub monutilisateur@ipPubliqueDeVotreServeur
Modifier le fichier de configuration SSH
Maintenant que votre clé publique a été placée dans votre serveur, il reste encore quelques modifications à effectuer sur le fichier de configuration du service SSH de votre serveur. Pour cela, il faut se rendre dans le fichier /etc/ssh/sshd_config et modifier les lignes suivantes:
HostKey /etc/ssh/ssh_host_ed25519_key
PubkeyAuthentication yes
Maintenant que les lignes sont modifiées vous pouvez sauvegarder votre fichier et redemarrer le service ssh:
service ssh restart
Vérifier la connexion via clé ssh
Tout est maintenant prêt. Vous allez vérifier que vous pouvez vous connecter au serveur grâce à votre clé SSH. Pour ce faire taper la commande suivante depuis votre ordinateur:
Lancez votre terminal et tapez la commande suivante:
ssh -i ~/.ssh/id_ed25519 monutilisateur@ipPubliqueDeVotreServeur
Mettre un service de Firewall
Le Firewall joue un role important dans votre sécurité. Il permet de bloquer les ports et de n'ouvrir les ports que pour les services actifs de votre node / serveur.
Voici la liste des services qu'utilise votre serveur et qui doivent être ouverts:
SSH
Port 22
Communication du Node
Port 9651
Les ports en dehors de ces deux ports n'ont pas besoin d'être ouverts
Si il y a bien un port a ne surtout pas oublier d'ouvrir c'est votre port 22 !
Installation / Configuration
Vérifier que le package ufw est bien présent sur votre VPS
sudo apt list ufw
//En cas de package présent sur votre serveur, vous aurez le retour suivant:
Listing... Done
ufw/focal-updates,focal-updates [installed]
Sinon, installez le
sudo apt update && sudo apt upgrade -y
sudo apt install ufw -y
Ajouter les règles pour autoriser les deux ports précédemment cités
sudo ufw allow ssh
sudo ufw allow 9651
Activer le Firewall
sudo ufw enable
Mettre un service de Fail2Ban
Le service fail2ban va permettre de bannir les personnes qui essayerai de se connecter a votre VPS plusieurs fois avec un mauvais mot de passe. Ce service à d'autres usages mais nous allons surtout nous en servir pour bannir les personnes qui essayeraient de se connecter en SSH.
Installation / Configuration
Vérifier que le package fail2ban est bien présent sur votre VPS sinon installez le
sudo apt list fail2ban
//En cas de package présent sur votre serveur, vous aurez le retour suivant:
Listing... Done
fail2ban/focal,focal,now 0.11.1-1 all [installed]
Sinon, installez le
sudo apt update && sudo apt upgrade -y
sudo apt install fail2ban -y
Ajoutez les lignes suivantes dans la configuration du fichier
Fichier: /etc/fail2ban/jail.d/defaults-debian.conf
[sshd]
enabled = true
[recidive]
enabled = true
Fermez le fichier avec la combinaison de touches ctrl + x y <enter>
Parcourez le fichier jail.conf
pour vérifier la configuration de la partie sshd et recidive que nous avons activé.
Fichier: /etc/fail2ban/jail.conf
[sshd]
port = ssh
logpath = %(sshd_log)s
backend = %(sshd_backend)s
[recidive]
logpath = /var/log/fail2ban.log
banaction = %(banaction_allports)s
bantime = 1w
findtime = 1d
Dans ce même fichier, changez les valeurs suivantes
Fichier: /etc/fail2ban/jail.conf
bantime = 10m
findtime = 10m
maxretry = 3
Fermez le fichier avec la combinaison de touches ctrl + x y <enter>
Les valeurs de temps de ban son volontairement faibles. En effet,
vous pouvez vous ban vous même
avec cette configuration. Il vous est cependant possible de whitelister votre IP publique pour vous éviter cela.
Il est maintenant temps de démarrer le service fail2ban
sudo fail2ban-client start
Si celui ci est déjà lancé la commande suivante suffira:
sudo fail2ban-client reload
Vous pourrez consulter les statistiques de ban de votre service fail2ban avec les commandes:
sudo fail2ban-client status
sudo fail2ban-client status sshd
Vous avez des questions / suggestions?
Je suis disponible sur Twitter, n'hésitez pas à me follow.
Vous avez aimé cet article?
Si cet article vous a été utile et que vous souhaitez me remercier, vous pouvez effectuer un don a cette adresse C-Chain: 0x3e2d6dce444e52e15d28d9013196bb99cb0fcdd1
Dernière mise à jour
Cet article vous a-t-il été utile ?