Autorisations et stratégies de contrôle d'accès auxquelles vous devez prêter attention avant de créer un serveur Web sur CentOS
Dans le processus de création d'un serveur Web, les autorisations et les stratégies de contrôle d'accès sont très importantes. La définition correcte des autorisations et des politiques de contrôle d'accès peut protéger la sécurité du serveur et empêcher les utilisateurs non autorisés d'accéder à des données sensibles ou de faire fonctionner le serveur de manière inappropriée. Cet article présentera les autorisations et les stratégies de contrôle d'accès auxquelles il faut prêter attention lors de la création d'un serveur Web sous le système CentOS, et fournira des exemples de code correspondants.
Tout d'abord, nous devons créer un utilisateur spécifiquement pour exécuter le serveur Web et l'ajouter au groupe approprié. Créez un utilisateur nommé "webuser" dans le système en exécutant la commande suivante :
sudo useradd webuser
Ensuite, nous pouvons ajouter l'utilisateur webuser au groupe www-data (pour le serveur Apache) à l'aide de la commande suivante :
sudo usermod -a -G www-data webuser
Lors de la création d'un serveur Web, nous devons nous assurer que les fichiers et répertoires sur le serveur disposent des autorisations appropriées. Normalement, les utilisateurs du serveur Web n'ont besoin que d'une autorisation pour lire des fichiers et exécuter des répertoires, pas d'autorisations en écriture.
Ce qui suit est un exemple de définition des autorisations de répertoire. Supposons que nous souhaitions placer les fichiers du site Web dans le répertoire /var/www/html :
sudo chown -R webuser:www-data /var/www/html sudo chmod -R 755 /var/www/html
La commande ci-dessus définit le propriétaire du répertoire /var/www/html sur l'utilisateur webuser et le groupe sur le groupe www-data. Dans le même temps, les autorisations du répertoire sont définies sur 755, c'est-à-dire que le propriétaire dispose des autorisations de lecture, d'écriture et d'exécution, tandis que le groupe et les autres utilisateurs n'ont que des autorisations de lecture et d'exécution.
En plus des autorisations de fichiers et de répertoires, nous devons également définir des politiques de contrôle d'accès pour contrôler l'accès au serveur Web. Il existe principalement les moyens suivants pour y parvenir.
(1) Utilisez les fichiers de configuration pour contrôler l'accès
Dans le serveur Apache, les autorisations d'accès peuvent être contrôlées via des fichiers de configuration. Par exemple, vous pouvez utiliser la directive « Require » pour restreindre l'accès à des adresses IP spécifiques. Voici un exemple pour autoriser uniquement des adresses IP spécifiques à accéder à un site Web :
<Directory /var/www/html> Order deny,allow Deny from all Allow from 192.168.1.100 </Directory>
La configuration ci-dessus refusera toutes les demandes d'accès, à l'exception de celles avec l'adresse IP 192.168.1.100.
(2) Utilisez un pare-feu pour contrôler l'accès
Une autre façon de contrôler l'accès consiste à utiliser des règles de pare-feu. Dans les systèmes CentOS, vous pouvez utiliser la commande firewall-cmd pour définir des règles de pare-feu. Voici un exemple pour autoriser uniquement l'accès HTTP à partir d'une adresse IP spécifique :
sudo firewall-cmd --zone=public --add-rich-rule=' rule family="ipv4" source address="192.168.1.100" port protocol="tcp" port="80" accept'
La commande ci-dessus permettra à l'hôte avec l'adresse IP 192.168.1.100 d'accéder au service HTTP.
Résumé :
Avant de créer un serveur Web, nous devons prêter attention aux paramètres d'autorisations et aux politiques de contrôle d'accès. Vous pouvez améliorer la sécurité du serveur en définissant correctement les autorisations des utilisateurs, des groupes, des fichiers et des répertoires, et en contrôlant l'accès à l'aide de fichiers de configuration et de règles de pare-feu. Dans les systèmes CentOS, vous pouvez utiliser les exemples de code fournis ci-dessus pour définir les autorisations et les politiques de contrôle d'accès.
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!