nouvelles
Serverspace Technologies aux Emirats Arabes Unis : Lancement de Falconcloud
VB
18 mai 2023
Mise à jour en juin 3, 2023

Nginx sécurité. Ressources de contrôle et limites

NGINX

Nginx est l'un des meilleurs serveurs Web populaires aujourd'hui. Sa popularité est due au fait qu'il est très rapide et facile à mettre en place. L'autre côté de cette popularité - nginx est souvent la cible d'attaques malveillantes. Alors, si votre nginx n'est pas limité par les ressources disponibles, votre serveur peut totalement "tomber" lorsque nginx dépensé toutes les ressources système. C'est pourquoi vous devez contrôler et limiter les ressources Nginx consommé.

Toutes les limites sont définies dans nginx fichier de configuration. je vais le décrire sur Ubuntu 20.04 comme exemple. Toutes les modifications seront apportées dans / Etc /nginx/nginx.conf déposer. Chaque directive doit se terminer par un point-virgule. Je vais décrire le pa le plus importantrameters plus loin.

Les paramètres globaux

Ces paramètres affecteront l'ensemble du serveur. PennsylvanieramLa description des ètres est :

  • connexions_travailleurs - cette option définit combien de connexions simultanées sont possibles pour un travailleur ("unité" spéciale qui communique entre nginx et noyau du système d'exploitation). Les travailleurs comptent cela dépend de combien CPU noyaux et RAM disponible sur votre serveur ;
  • multi_accepter - cette directive permet aux travailleurs de gérer plusieurs processus simultanément. Il créera une file d'attente de processus, les tâches seront gérées une par une ;
  • mutex_accept_delay - ce parameter définit un délai entre le redémarrage des tâches gérées ;
  • utilisé - une méthode de traitement. Le meilleur ensemble pour Linux les serveurs sont epoll ;
  • limite_conn - cette directive limitera les connexions. Il peut être défini à divers endroits, toutes les restrictions fonctionneront. Sur la capture d'écran ci-dessous, j'ai défini le nombre total de connexions sur 5 pour une adresse IP et 2 pour /Télécharger dossier:

pic1

Opérations de disque

Ces paramètres définissent comment nginx fonctionner avec lecteur de disque :

  • envoyer le fichier sur - cette option permet au serveur web "d'échanger" des données de petits fichiers dans le noyau space, sans l'envoyer à l'application space. Cela fait nginx traitement des données beaucoup plus rapide ;
  • ai sur - cette directive fournit des opérations de lecture/écriture multi-thread sur disque.

pic3

Compression et mise en cache

Vous pouvez mettre en cache certaines données à faire nginx plus rapide. La compression réduira le flux de trafic :

  • gzip sur - cette option active la compression ;
  • gzip_comp_level - niveau de compression. Un nombre plus élevé correspond à beaucoup de compression ;
  • gzip_types - définir des types de fichiers à compresser. Par exemple, le texte est bon à compresser, mais les images ne l'est pas.
  • open_file_cache - autoriser la mise en cache des fichiers ;
  • open_file_cache_valid - temps de stockage du cache ;
  • open_file_cache_errors - cette option permet de mettre en cache des erreurs comme "accès refusé". Il peut être utile d'empêcher une attaque massive par connexions simultanées ;

pic5

Les paramètres de sécurité

Vous pouvez restreindre l'accès des scrapers, des bots, des téléchargeurs, etc. Ajoutez simplement une construction comme ci-dessous à l'emplacement restreint :

if ($http_user_agent ~* LWP::curl|wget|*bot) {

return 403;

}

pic7

En outre, vous pouvez autoriser l'accès à certaines zones du site Web uniquement via des adresses IP définies. Il pourrait être utile de restreindre l'accès à la zone d'administration, par exemple :

location /admin/ {
## allow access from your IP
allow xxx.xxx.xxx.xxx/32;
## drop all other connections
deny all;
}

pic8

Conclusion

Dans cet article, j'ai décrit comment optimiser votre nginx fonctionne et a donné quelques conseils sur les améliorations de la sécurité de base.

Vous pouvez également être intéressé par

Voter:
5 sur 5
Note moyenne : 5
Noté par : 1
1101 CT Amsterdam Pays-Bas, Herikerbergweg 292
+31 20 262-58-98
700 300
ITGLOBAL.COM NL
700 300

Vous pourriez aussi aimer...

Nous utilisons des cookies pour rendre votre expérience sur le Serverspace meilleur. En poursuivant votre navigation sur notre site, vous acceptez nos
Utilisation des cookies ainsi que Politique de confidentialité.