-
Notifications
You must be signed in to change notification settings - Fork 0
Sécurisation
En ce qui concerne la sécurisation du VPS nous avons tout d'abord installer un Fail2Ban ce qui permet d'éviter que quelqu'un essaye de pénétrer le système en essayant une multitude de mot de passe jusqu'à trouver le bon.
- Installation du package
Fail2Ban. - Copie du fichier de configuration appelé "jail.conf" qui permet de définir par exemple le temps du bannissement mais également le nombre de tentative consécutive avant d'être bannis.
apt-get install fail2ban
cp /etc/fail2ban/jail.conf /etc/fail2ban/jail.local
- Après cela le
Fail2Banest bien installé mais deux commandes sont très importante à retenir.
sudo fail2ban-client status sshd ==> Voir la listes des adresses ip bannies
sudo fail2ban-client set sshd unbanip [...] ==> Unban une ip bannie
Nous avons ensuite configurer un FireWall grâce au logiciel "iptables" qui nous permis de fermer tout les ports non utilisés et de laisser ouvert que ceux dont on a besoin.
iptables -A INPUT -p tcp --destination-port 80 -j DROP ==> Fermer le port 80
iptables -A INPUT -p tcp --destination-port 80 -j ACCEPT ==> Ouvrir le port 80
Pour ce qui est de la sécurisation de la base de données nous avons tout d'abord créer un USER qui ne possède que les doits dont il a besoin et pour cela nous avons effectués les commandes suivantes.
CREATE USER 'user'@localhost IDENTIFIED BY 'password';
GRANT PRIVILEGES ON 'yourDB'.* TO 'user'@localhost;
Liste des privilèges :
| PRIVILEGE | Description |
|---|---|
| SELECT | Faire des sélection dans les tables |
| INSERT | Ajouter des données dans les tables |
| UPDATE | Modifier des données dans les tables |
| DELETE | Supprimer des données dans les tables |
| CREATE | Créer une nouvelle table |
| ALTER | Modifier une table |
| DROP | Supprimer une table |
| ALL | Donner tout les droits |
Pour la sécurité des mots de passe nous utilisons le module bcrypt de NodeJS afin de hasher nos mots de passe dans la base de données.
Voici un exemple d'utilisation
bcrypt.hash("password", 10, (err, hash) => {
console.log(salt + hash)
});