Maison  >  Article  >  Opération et maintenance  >  Techniques de renforcement de la sécurité réseau pour la création de serveurs Web sous CentOS 7

Techniques de renforcement de la sécurité réseau pour la création de serveurs Web sous CentOS 7

WBOY
WBOYoriginal
2023-08-05 13:12:26869parcourir

Conseils pour renforcer la sécurité du réseau pour la création de serveurs Web sous CentOS 7

Les serveurs Web constituent une partie importante de l'Internet moderne, il est donc très important de protéger la sécurité des serveurs Web. En renforçant la sécurité du réseau, vous pouvez réduire les risques et éviter les attaques potentielles. Cet article présentera les techniques de renforcement de la sécurité du réseau couramment utilisées lors de la création de serveurs Web sur CentOS 7 et fournira des exemples de code correspondants.

  1. Mettre à jour le système et les logiciels
    Tout d'abord, assurez-vous que votre système et vos logiciels sont à jour. Vous pouvez utiliser la commande suivante pour mettre à jour les packages sur CentOS 7 :
sudo yum update
  1. Désactiver les services inutiles
    Afin d'améliorer la sécurité du système, certains services inutiles doivent être désactivés. Vous pouvez utiliser la commande suivante pour afficher les services actuellement installés :
sudo systemctl list-unit-files --type=service | grep enabled

Si nécessaire, vous pouvez utiliser la commande suivante pour arrêter et désactiver le service correspondant. Par exemple, si vous n'avez pas besoin d'utiliser le serveur FTP, vous pouvez arrêter et désactiver vsftpd :

sudo systemctl stop vsftpd
sudo systemctl disable vsftpd
  1. Configurer le pare-feu
    La configuration du pare-feu est l'une des mesures importantes pour protéger le serveur Web. Sur CentOS 7, firewalld peut être utilisé pour gérer les pare-feu. Voici quelques règles de pare-feu couramment utilisées :

Autoriser le trafic HTTP et HTTPS vers le serveur :

sudo firewall-cmd --permanent --add-service=http
sudo firewall-cmd --permanent --add-service=https
sudo firewall-cmd --reload

Autoriser les connexions SSH dans le serveur :

sudo firewall-cmd --permanent --add-service=ssh
sudo firewall-cmd --reload

Limiter le nombre de connexions entrantes :

sudo firewall-cmd --permanent --add-rich-rule='rule family="ipv4" source address="0.0.0.0/0" limit value="5/m" accept'
sudo firewall-cmd --reload
  1. Utiliser HTTPS pour crypter les communications
    HTTPS est un protocole de sécurité qui protège les communications entre un serveur Web et un client en utilisant le cryptage SSL ou TLS. Vous pouvez utiliser l'outil Certbot pour générer et configurer automatiquement un certificat SSL pour votre site Web. Voici les exemples de commandes pour installer et configurer Certbot sur CentOS 7 :

Tout d'abord, installez Certbot et le plugin Certbot Nginx :

sudo yum install certbot python2-certbot-nginx

Ensuite, activez SSL pour votre site Web :

sudo certbot --nginx
  1. Installez et configurez le pare-feu d'application Web
    Web Un pare-feu applicatif (WAF) peut détecter et bloquer les attaques contre les applications Web. Sur CentOS 7, ModSecurity est un outil WAF couramment utilisé. Voici les exemples de commandes pour installer et configurer ModSecurity sur CentOS 7 :

Tout d'abord, installez les modules ModSecurity et Nginx :

sudo yum install mod_security mod_security_crs nginx-mod-http-modsecurity

Ensuite, activez ModSecurity :

sudo sed -i 's/SecRuleEngine DetectionOnly/SecRuleEngine On/' /etc/httpd/conf.d/mod_security.conf

Enfin, redémarrez Nginx :

sudo systemctl restart nginx
  1. Configurer la protection de connexion
    Pour protéger la page de connexion du serveur Web, vous pouvez restreindre les adresses IP qui accèdent à la page de connexion. Voici un exemple de code pour configurer la protection de connexion à l'aide de Nginx :

Modifiez le fichier de configuration Nginx :

sudo nano /etc/nginx/nginx.conf

Ajoutez le code suivant dans le bloc "http" :

map $remote_addr $limited_access {
    192.168.1.1     '';
    10.0.0.0/24     '';
    default         1;
}

server {
    ...
    location /login {
        deny all;
        allow $limited_access;
        auth_basic "Restricted Access";
        auth_basic_user_file /etc/nginx/.htpasswd;
    }
}

Enregistrez et quittez le fichier de configuration. Créez ensuite un nom d'utilisateur et un mot de passe pour la vérification de la connexion :

sudo htpasswd -c /etc/nginx/.htpasswd username

Enfin, redémarrez Nginx :

sudo systemctl restart nginx

Cet article présente les techniques de renforcement de la sécurité réseau couramment utilisées lors de la création de serveurs Web sous CentOS 7. Vous pouvez améliorer la sécurité du réseau de votre serveur Web en mettant à jour votre système et vos logiciels, en désactivant les services inutiles, en configurant des pare-feu, en cryptant les communications à l'aide de HTTPS, en installant et en configurant des pare-feu d'applications Web et en configurant la protection de connexion. J'espère que les conseils ci-dessus vous seront utiles.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn