Comment utiliser le serveur Linux pour améliorer le filtrage et l'inspection de l'interface Web ?

WBOY
Libérer: 2023-09-08 11:41:01
original
567 Les gens l'ont consulté

Comment utiliser le serveur Linux pour améliorer le filtrage et linspection de linterface Web ?

Comment utiliser le serveur Linux pour améliorer le filtrage et l'inspection des interfaces web ?

En tant que porte d'entrée principale des applications Internet, la sécurité des interfaces Web a toujours attiré beaucoup d'attention. Afin de protéger l'interface Web, nous prenons généralement diverses mesures pour filtrer et inspecter les données de demande et de réponse de l'interface. Dans cet article, nous présenterons comment utiliser un serveur Linux pour améliorer le filtrage et l'inspection des interfaces Web, et fournirons des exemples de code.

1. Utilisez Nginx pour le contrôle d'accès

Nginx est un serveur proxy inverse HTTP hautes performances, qui peut être utilisé comme serveur frontal pour le contrôle d'accès. En configurant Nginx, nous pouvons restreindre l'accès à des adresses IP ou à des plages d'adresses IP spécifiques pour garantir que seules les demandes légitimes peuvent être transmises.

L'exemple de fichier de configuration est le suivant :

server {
    listen 80;
    server_name example.com;

    location /api {
        deny 192.168.0.0/24;
        allow all;
    }

    location / {
        root /var/www/html;
        index index.html;
    }
}
Copier après la connexion

Dans la configuration ci-dessus, les requêtes sous le chemin /api seront restreintes et seul l'accès autre que la plage d'adresses IP 192.168.0.0/24 sera autorisé. Les autres requêtes seront redirigées vers le fichier index.html du répertoire /var/www/html.

2. Utilisez Nginx pour le filtrage des demandes

En plus du contrôle d'accès, nous pouvons également utiliser Nginx pour le filtrage des demandes. En configurant le module de réécriture et le proxy inverse de Nginx, nous pouvons filtrer certaines requêtes malveillantes ou paramètres illégaux.

L'exemple de fichier de configuration est le suivant :

server {
    listen 80;
    server_name example.com;

    location /api {
        if ($args ~ (?:[^=s&]+)(?:&[^=s&]+)*$) {
            return 403;
        }

        proxy_pass http://backend;
    }

    location / {
        root /var/www/html;
        index index.html;
    }
}
Copier après la connexion

Dans la configuration ci-dessus, si les paramètres de la requête contiennent des caractères illégaux ou si le format du paramètre est incorrect, une erreur 403 sera renvoyée. Les demandes légitimes seront transmises au serveur backend.

3. Utilisez ModSecurity pour le pare-feu de la couche d'application

Une autre façon de renforcer le filtrage et l'inspection des interfaces Web consiste à utiliser ModSecurity, qui est un pare-feu de couche d'application Web open source. En configurant ModSecurity, nous pouvons effectuer une inspection et un filtrage approfondis des données de demande et de réponse.

L'exemple de fichier de configuration est le suivant :

SecRuleEngine On

SecRequestBodyLimit 13107200
SecRequestBodyInMemoryLimit 13107200
SecRequestBodyNoFilesLimit 13107200
SecRequestBodyAccess On

SecRule REQUEST_METHOD "POST" "id:1,phase:1,t:none,pass,nolog,ctl:requestBodyProcessor=XML"

SecRule REQUEST_HEADERS:Content-Type "application/(?:json|xml)" 
  "id:2,phase:1,t:none,pass,nolog,ctl:requestBodyProcessor=JSON"

SecRule REQUEST_HEADERS:Content-Type "application/x-www-form-urlencoded" 
  "id:3,phase:1,t:none,pass,nolog,ctl:requestBodyProcessor=UTF8"

SecResponseBodyAccess Off

SecDefaultAction "phase:2,log,auditlog,pass"

<LocationMatch "^/api/">
  SecRuleRemoveById 920140
</LocationMatch>
Copier après la connexion

Dans la configuration ci-dessus, nous avons activé le moteur ModSecurity et défini les limites de taille du corps des requêtes et des réponses. Ensuite, nous traitons la demande en fonction du type de contenu de la demande et fermons l'accès au corps de la réponse. Enfin, nous avons supprimé une règle spécifique pour permettre à la demande de passer.

En résumé, en configurant Nginx et ModSecurity du serveur Linux, nous pouvons renforcer le filtrage et l'inspection de l'interface web. Ces méthodes peuvent protéger efficacement nos applications Web contre les requêtes et attaques malveillantes. J'espère que cet article pourra aider tout le monde à mieux améliorer la sécurité des interfaces Web.

(Fin de cet article)

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!

Étiquettes associées:
source:php.cn
Déclaration de ce site Web
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
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal
À propos de nous Clause de non-responsabilité Sitemap
Site Web PHP chinois:Formation PHP en ligne sur le bien-être public,Aidez les apprenants PHP à grandir rapidement!