Maison > Article > Opération et maintenance > Quelles sont les méthodes pour afficher les règles de politique dans SELinux ?
Comment afficher les règles de politique dans SELinux : 1. Utilisez la commande seinfo pour demander combien de règles pertinentes la politique SELinux fournit. Si un processus sujet peut lire les ressources du fichier cible, il se concentre sur la politique SELinux et les règles de la syntaxe. "seinfo [option]"; 2. Utilisez la commande search pour interroger le contenu spécifique des règles de politique SELinux, la syntaxe est "research [option] [type de règle] [expression]".
L'environnement d'exploitation de ce tutoriel : système linux7.3, ordinateur Dell G3.
Il existe deux manières d'afficher les règles de politique SELinux : seinfo et search.
La politique par défaut actuelle de SELinux est ciblée, alors combien de règles cette politique contient-elle ? Utilisez la commande seinfo
pour interroger. La seinfo
命令即可查询。
seinfo命令是用来查询SELinux的策略提供多少相关规则,一个主体进程能否读取到目标文件资源的重点是在于SELinux的策略以及策略内的各项规则,然后再通过该规则的定义去处理各项目标文件的安全上下文,尤其是“类型”部分。
sesearch 命令格式如下:
seinfo [选项]
常用选项:
-a | 列出SELinux的状态、规则布尔值、身份识别、角色、类型等所有信息 |
-t | 列出SELinux所有类型(type)的种类 |
-r | 列出SELinux所有角色(role)的种类 |
-u | 列出SELinux所有身份识别(user)的种类 |
-b | 列出所有规则的种类(布尔值) |
参考实例:
[root@localhost ~]# seinfo -b #还记得-b选项吗?就是查询布尔值,也就是查询规则名字 Conditional Booleans:187 #当前系统中有187个规则 allow_domain_fd_use allow_ftpd_full_access allow_sysadm_exec_content allow_user_exec_content allow_zebra_write_config …省略部分输出…
seinfo
命令只能看到所有规则的名称,如果想要知道规则的具体内容,就需要使用 sesearch
est utilisée pour interroger le nombre de règles pertinentes fournies par la politique SELinux. Si un processus sujet peut lire les ressources du fichier cible, il se concentre sur la politique SELinux et les règles au sein de la politique, puis transmet les règles. contexte de sécurité pour gérer chaque fichier cible, en particulier la partie "type".
Le format de la commande de recherche est le suivant :
sesearch [选项] [规则类型] [表达式]
-a | Liste tous les statuts SELinux, les valeurs booléennes des règles, l'identification, les rôles, les types et autres informations |
-t | Liste toutes les informations SELinux Type de type |
-r | Liste les types de tous les rôles dans SELinux |
-u | Liste tous les types d'identification (utilisateur) dans SELinux |
-b | Liste tous les types de règles (valeur booléenne) |
Exemple de référence : la commande
[root@localhost ~]# seinfo -b | grep http httpd_manage_ipa …省略部分输出… #查询和apache相关的规则,有httpd_manage_ipa规则 [root@localhost ~]# sesearch --all -b httpd_manage_ipa # httpd_manage_ipa规则中具体定义了哪些规则内容呢?使用sesearch命令查询一下 Found 4 semantic av rules: allow httpd_t var_run_t:dir { getattr search open } ; allow httpd_t memcached_var_run_t:file { ioctl read write create getattr setattr lock append unlink link rename open } ; allow httpd_t memcached_var_run_t:dir { ioctl read write getattr lock add_name remove_name search open } ; allow httpd_t var_t:dir { getattr search open } ; Found 20 role allow rules: allow system_r sysadm_r; allow sysadm_r system_r; …省略部分输出…
seinfo
ne peut voir que les noms de toutes les règles, si vous souhaitez connaître le contenu spécifique des règles, vous devez utiliser la commande research
.
[root@localhost ~]# ps auxZ | grep httpd unconfined_u:system_r:httpd_t:s0 root 25620 0.0 0.5 11188 36X6 ? Ss 03:44 0:03 /usr/sbin/httpd #apache进程的域是httpd_t [root@localhost ~]# ls -Zd /var/www/html/ drwxr-xr-x. root root system_u:object_r:httpd_sys_content_t:s0 /var/www/html/ #/var/www/html/ 目录的类型是 httpd_sys_content_t [root@localhost ~]# sesearch --all -s httpd_t -t httpd_sys_content_t Found 13 semantic av rules: ...省略部分输出... allow httpd_t httpd_sys_content_t : file { ioctl read getattr lock open }; allow httpd_t httpd_sys_content_t : dir { ioctl read getattr lock search open }; allow httpd_t httpd_sys_content_t : lnk_file { read getattr }; allow httpd_t httpd_sys_content_t : file { ioctl read getattr lock open }; ...省略部分输出... #可以清楚地看到httpd_t域是允许访间和使用httpd_sys_content_t类型的
Options :
-h : afficher les informations d'aide
Type de règle :
--allow : afficher les règles autorisées ; - neverallow : Afficher les règles qui ne sont jamais autorisées ;
--all : Afficher toutes les règles
Expression :
-s Type de sujet : Afficher les règles liées au type du sujet spécifié (le sujet est access L'initiateur, cela signifie source, c'est-à-dire le type de source)
-t type de cible : affiche les règles liées au type de cible spécifiée (la cible est le visiteur, cela signifie cible, également est le type de cible) ;
-b nom de la règle : affiche le contenu spécifique de la règle (b est bool, ce qui signifie valeur booléenne, fait référence ici au nom de la règle) ; Tout d’abord, montrons comment interroger le contenu d’une règle spécifique si nous connaissons le nom de la règle. La commande est la suivante :
rrreeeChaque règle définit un grand nombre de contenus de règles spécifiques. Ces contenus sont relativement complexes et n'ont généralement pas besoin d'être modifiés.
Mais parfois, nous connaissons le type de contexte de sécurité plutôt que le nom de la règle. Par exemple, nous savons que le domaine du processus Apache est httpd_t et que le type du répertoire /var/www/html/ est httpd_sys_content_t. La raison pour laquelle Apache peut accéder au répertoire /var/www/html/ est que le domaine httpd_t et le type httpd_sys_content_t correspondent. Alors, comment interroger les règles de correspondance de ces deux types ? La commande est la suivante :
rrreee🎜Recommandations associées : "🎜Tutoriel vidéo Linux🎜"🎜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!