- Messages : 105
- Remerciements reçus 0
7 étapes pour sécuriser votre serveur Linux
- estocade
- Auteur du sujet
- Hors Ligne
- Administrateur
Réduire
Plus d'informations
il y a 7 mois 1 jour - il y a 7 mois 1 jour #86
par estocade
7 étapes pour sécuriser votre serveur Linux a été créé par estocade
Renforcez votre serveur Linux en sept étapes simples.
Cette introduction vous présentera la sécurité de base du serveur Linux. Bien qu'il se concentre sur Debian/Ubuntu, vous pouvez appliquer tout ce qui est présenté ici à d'autres distributions Linux. Je vous encourage également à rechercher ce matériel et à le développer le cas échéant.
1. Mettez à jour votre serveur
La première chose à faire pour sécuriser votre serveur est de mettre à jour les référentiels locaux et de mettre à niveau le système d'exploitation et les applications installées en appliquant les derniers correctifs.Sur Ubuntu et Debian :Sur Fedora, CentOS ou RHEL :2. Créez un nouveau compte utilisateur privilégié
Ensuite, créez un nouveau compte utilisateur. Vous ne devez jamais vous connecter à votre serveur en tant que root . Créez plutôt votre propre compte (" <user> "), donnez-lui les droits sudo et utilisez-le pour vous connecter à votre serveur.Commencez par créer un nouvel utilisateur :Donnez à votre nouveau compte utilisateur les droits sudo en ajoutant ( -a ) le groupe sudo ( -G ) à l'appartenance au groupe de l'utilisateur :3. Téléchargez votre clé SSH
Vous souhaiterez utiliser une clé SSH pour vous connecter à votre nouveau serveur. Vous pouvez télécharger votre clé SSH pré-générée sur votre nouveau serveur à l'aide de la commande ssh-copy-id :Vous pouvez désormais vous connecter à votre nouveau serveur sans avoir à saisir de mot de passe.
4. SSH sécurisé
Ensuite, effectuez ces trois modifications :ressemble à ca:Ensuite, limitez le service SSH à IPv4 ou IPv6 en modifiant l' option AddressFamily . Pour le modifier afin d'utiliser uniquement IPv4 (ce qui devrait convenir à la plupart des gens), effectuez cette modification :Redémarrez le service SSH pour activer vos modifications. Notez que c'est une bonne idée d'avoir deux connexions actives à votre serveur avant de redémarrer le serveur SSH. Avoir cette connexion supplémentaire vous permet de réparer quoi que ce soit en cas de problème de redémarrage.Sur Ubuntu :Sur Fedora ou CentOS ou tout ce qui utilise Systemd :5. Activez un pare-feu
Vous devez maintenant installer un pare-feu, l'activer et le configurer uniquement pour autoriser le trafic réseau que vous désignez. Uncomplicated Firewall (UFW) est une interface facile à utiliser pour iptables qui simplifie grandement le processus de configuration d'un pare-feu.Vous pouvez installer UFW avec :Par défaut, UFW refuse toutes les connexions entrantes et autorise toutes les connexions sortantes. Cela signifie que n'importe quelle application sur votre serveur peut accéder à Internet, mais que tout ce qui tente d'atteindre votre serveur ne peut pas se connecter.Tout d'abord, assurez-vous de pouvoir vous connecter en activant l'accès à SSH, HTTP et HTTPS :Activez ensuite UFW :Vous pouvez voir quels services sont autorisés et refusés avec :Si jamais vous souhaitez désactiver UFW, vous pouvez le faire en tapant :Vous pouvez également utiliser firewall-cmd , qui est déjà installé et intégré à certaines distributions.
6. Installez Fail2ban
Fail2ban est une application qui examine les journaux du serveur à la recherche d'attaques répétées ou automatisées. S'il en trouve, le pare-feu sera modifié pour bloquer l'adresse IP de l'attaquant, soit de manière permanente, soit pour une durée spécifiée.Vous pouvez installer Fail2ban en tapant :Copiez ensuite le fichier de configuration inclus :Et redémarrez Fail2ban :C'est tout ce qu'on peut en dire. Le logiciel examinera en permanence les fichiers journaux à la recherche d'attaques. Après un certain temps, l'application créera une liste d'adresses IP interdites. Vous pouvez consulter cette liste en demandant l'état actuel du service SSH avec :7. Supprimez les services réseau inutilisés
Presque tous les systèmes d'exploitation de serveur Linux sont dotés de quelques services réseau activés. Vous voudrez en conserver la plupart. Cependant, vous souhaiterez peut-être en supprimer quelques-uns. Vous pouvez voir tous les services réseau en cours d'exécution en utilisant la commande ss :La sortie de ss différera en fonction de votre système d'exploitation. Ceci est un exemple de ce que vous pourriez voir. Cela montre que les services SSH (sshd) et Ngnix (nginx) sont à l'écoute et prêts à être connectés :La façon dont vous procédez pour supprimer un service inutilisé (" <service_name> ") différera en fonction de votre système d'exploitation et du gestionnaire de packages qu'il utilise.Pour supprimer un service inutilisé sur Debian/Ubuntu :Pour supprimer un service inutilisé sur Red Hat/CentOS :Ce tutoriel présente le strict minimum nécessaire pour renforcer un serveur Linux. Des couches de sécurité supplémentaires peuvent et doivent être activées en fonction de la manière dont un serveur est utilisé. Ces couches peuvent inclure des éléments tels que des configurations d'applications individuelles, des logiciels de détection d'intrusion et l'activation de contrôles d'accès, par exemple une authentification à deux facteurs.
Cette introduction vous présentera la sécurité de base du serveur Linux. Bien qu'il se concentre sur Debian/Ubuntu, vous pouvez appliquer tout ce qui est présenté ici à d'autres distributions Linux. Je vous encourage également à rechercher ce matériel et à le développer le cas échéant.
1. Mettez à jour votre serveur
La première chose à faire pour sécuriser votre serveur est de mettre à jour les référentiels locaux et de mettre à niveau le système d'exploitation et les applications installées en appliquant les derniers correctifs.Sur Ubuntu et Debian :
$ sudo apt update && sudo apt upgrade -y
$ sudo dnf upgrade
Ensuite, créez un nouveau compte utilisateur. Vous ne devez jamais vous connecter à votre serveur en tant que root . Créez plutôt votre propre compte (" <user> "), donnez-lui les droits sudo et utilisez-le pour vous connecter à votre serveur.Commencez par créer un nouvel utilisateur :
$ adduser <username>
$ usermod -a -G sudo <username>
Vous souhaiterez utiliser une clé SSH pour vous connecter à votre nouveau serveur. Vous pouvez télécharger votre clé SSH pré-générée sur votre nouveau serveur à l'aide de la commande ssh-copy-id :
$ ssh-copy-id <username>@ip_address
4. SSH sécurisé
Ensuite, effectuez ces trois modifications :
- Désactiver l'authentification par mot de passe SSH
- Empêcher root de se connecter à distance
- Restreindre l'accès à IPv4 ou IPv6
PasswordAuthentication yes
PermitRootLogin yes
PasswordAuthentication no
PermitRootLogin no
AddressFamily inet
$ sudo service sshd restart
$ sudo systemctl restart sshd
Vous devez maintenant installer un pare-feu, l'activer et le configurer uniquement pour autoriser le trafic réseau que vous désignez. Uncomplicated Firewall (UFW) est une interface facile à utiliser pour iptables qui simplifie grandement le processus de configuration d'un pare-feu.Vous pouvez installer UFW avec :
$ sudo apt install ufw
$ sudo ufw allow ssh
$ sudo ufw allow http
$ sudo ufw allow https
$ sudo ufw enable
$ sudo ufw status
$ sudo ufw disable
6. Installez Fail2ban
Fail2ban est une application qui examine les journaux du serveur à la recherche d'attaques répétées ou automatisées. S'il en trouve, le pare-feu sera modifié pour bloquer l'adresse IP de l'attaquant, soit de manière permanente, soit pour une durée spécifiée.Vous pouvez installer Fail2ban en tapant :
$ sudo apt install fail2ban -y
$ sudo cp /etc/fail2ban/jail.conf /etc/fail2ban/jail.local
$ sudo service fail2ban restart
$ sudo fail2ban-client status ssh
Presque tous les systèmes d'exploitation de serveur Linux sont dotés de quelques services réseau activés. Vous voudrez en conserver la plupart. Cependant, vous souhaiterez peut-être en supprimer quelques-uns. Vous pouvez voir tous les services réseau en cours d'exécution en utilisant la commande ss :
$ sudo ss -atpu
tcp LISTEN 0 128 *:http *:* users:(("nginx",pid=22563,fd=7))
tcp LISTEN 0 128 *:ssh *:* users:(("sshd",pid=685,fd=3))
$ sudo apt purge <service_name>
$ sudo yum remove <service_name>
Dernière édition: il y a 7 mois 1 jour par estocade.
Connexion ou Créer un compte pour participer à la conversation.
Temps de génération de la page : 0.091 secondes