α ααα»αααα½ααααα»αα
ααααα ααα»αααααααΆααααΆααααααααααΆαααααΆαααα Linux OS αα
ααΎα§αααααα
ααα αα·ααααΆαααΈααααααααΆααααααα ααΊααΆααααα·ααα»ααααα·ααΆααααααααααΊααα ααααΆαααα αα·ααααααα·ααΈαααααΆαααααααα ααα»ααααααααα·αααΎ
ααααααΆαααααααα ααΎαααΌαα»ααα»ααααα·ααΆαααΈαα»α αα·α SELinux
Security Enhanced Linux ααΊααΆαααα»αααα αααΆαα αα·αααααααΆαα αΌαααααΎ αααααα’ααααΎααααΌα αΌαααααΎααααΆααα αΆαααΆα α αα·αααα’ααααΎαα½ααΆααΈ ααΎααααΈααΆαααΆααααααααα Linux ααΈααΆαααααΆαααα αααααα’αΆα ααΎαααΆα αα·ααααααααΌαααΆαααααααΆααα Discretionary Access Control (DAC) αααααΆαααααααααα»ααααα·ααΆα Unix αααααααΈα αααααααααααΆααααααα ααααΈααααααααααααΈααααΆααααΆαααααα·αα»αααΆαα·αα ααααα’αΆαααα·α α αΎαααααΌαααΆααααααΎαα‘αΎααααααααΆαααααα’αααααα ααΆα Secure Computing Corporation αα·α MITER ααααΌα ααΆαααααΈααα·αααααααααΆαααααΆααα½αα ααα½ααααααα
αααΌαα»ααα»ααααα·ααΆαααΈαα»α
Linus Torvalds ααΆαααααΎα’ααααΆαα·ααααΆααα½αα
ααα½αα’αααΈααΆαα’αα·αααααα NSA ααααΈααΎααααΈα±αααα½αααα’αΆα
αααα
αΌααα
αααα»αααΊαααααΈαα»α
α ααΆααααΆααα·αααααΆα’αααΈααα·ααααΆαααΌαα
αααααΆααααα»αα§αααααααααΆααα
αΆααααΎααααΈαααααααααααααα·ααααα·ααΆαααΆαα½αααααα» αα·ααααα»αααααΆαααΆαααΆαααΆααααΆαααα
αααα»ααα
ααΆαααααααααα·ααααααααΊααα ααΎααααΈαααααΆαα»ααα»ααααααααααααααΌαααααΆα αααααΆααααααα·ααααΆααααα’αΆα
ααααΌαααΆαααααΎααααααΌαα»αααΊααααααα’αΆα
αααα»αααΆα ααΎααααΈα’αα»ααααααααΌαα»ααααα·ααΆαααΆαα½ααααα
ααααΆαα LSM ααΆααααα
αΌαααΊαααααΈαα»α
v2.6 αααΆααααααααααα»αααααΆα 2003α
ααααααααα LSM αα½ααααα αΌαααΆαααΆααα αααα»ααα ααΆαααααααααα·αααααα αα·αααΆαα α αα ααΆαααα»αααΆαααααΆααα αΆαααα α ααα»α ααααΆααααα αααα»αααΌαααΊααα ααΎααααΈαααα ααα½αααΆ αα·αα’αα»ααααααΆααααααααααααΆαα αΌαααααΎααααΆααα ααΆαααααααααα»αααΆααααααΆααααΆαα α»αααααααααΌαα»ααα»ααααα·ααΆααααααα α ααα»α αααααΆαα /sys/kernel/security/lsm ααΆααααααΈαααααΌαα»αααααααα ααΎααααααααα ααααα LSM ααααΌαααΆααααααΆαα»ααααα»ααααααΈαααααααΌαααΆαα α ααΆαααααΆαααααααΆααααααΆαααα αααα»α CONFIG_LSM α α―αααΆααααα’α·ααα ααΎαααααααααΌαααΆααααα αΌααααα»αα―αααΆαααααααΆ include/linux/lsm_hooks.h α
αααααααααα LSM ααααΎα±ααααΆα’αΆα αααα ααααΆααα½ααααα αΌααααααααα SELinux ααΆαα½αααΉαααααααΌα ααααΆααααΊαααααΈαα»α αααααΆααααααααΆα v2.6 α ααααΎαααααααΆααααα SELinux ααΆαααααΆαααΆαααααααΆαααΆααααααααααααΆααααα·ααααΆαααΈαα»α αααααΆααα»ααααα·ααΆα α αΎαααααΌαααΆααα½ααααα αΌααα αααα»αααΆαα ααα αΆαααααααα·αααααα»αα RedHat Enterprise Linux, Fedora, Debian, Ubuntu α
αααααΆαα»αααα SELinux
- α’ααααααααΆα - α’αααααααΎααααΆαα SELinux αα·αααΌα ααααααααΆααα’αααααααΎααααΆαα Unix/Linux ααααααΆαα αα½αααα’αΆα αα½ααααααΆαα½ααααααααααααα½α ααα»ααααααΆαααααΉαααΆααα»αααααΆααΆαααααα»αα ααααΈααΈαα»α αααααααΆαααΈαα½ααα’αΆα ααααΌαααααΆααΉααα½α α¬α αααΎααα αααα»α SELinux α α’ααααααααΆα SELinux ααΊααΆααααααα½αααααα·αααα»ααααα·ααΆαααΆααααΌα αααααααααααααΆαα½ααααα’αααα’αΆα αα·ααα·αα’αΆα α αΌααα½αααΆαα
- ααα - αα αααα»α SELinux αααααΊααΆααα·ααααααα·ααααα·αααααααΆααα αααααΊααααΎαααΆααα½αα αααααααααααααααΆααααΌαααΆαα αΌαααααΎαααΆααααααααΎαααΆαααΆαα αααααΊααΆαααααΈααΌαααααΆαααα’αααΈαααααααΎαααΆαα’αΆα ααααΎααΆα α¬α’αααΈαααααααΎαααΆαα’αΆα ααααΎααΆαα½αααααααααααααα α§ααΆα ααααα½αα ααα½ααααααααΊ sysadm_t αααααΆααααΆαααααααααααααααααα αα·α user_t αααααΆαααα’αααααααΎααααΆααααααααΆααααα·αααΆααα·αααα·α αααααααα init ααααΎαααΆααααα»αααα init_t α αΎαααααΎαααΆααααααΆααααααααααΎαααΆααααα»αααα name_t α
- αα½ααΆααΈ - α’αααΈααααααααΎααΆα’ααααααΆααΈαααΆαααα αα·αα’αααααααΎααααΆαα SELinux α αα½ααΆααΈααααααααααΆαα½ααααα’αααααααΎααααΆααα’αΆα ααΆαααααα·αααα· αα·αααααααααααα»ααααα½αααα’αΆα α αΌαααααΎααΆαα ααααααΆααααααααααααΆαα αΌαααααΎαααααΆαααΆαααΆαααααΆαααα ααααααΆαααΆααααα αΆααααααΎααα·αααα·α αα½ααΆααΈααααΌαααΆαααααααα αααα»αααααΌαα»ααααα·ααΆα Role Based Access Control (RBAC) αααααααΎαααα»α SELinux α
- αααααα - αα»ααααααααααααΈααΆαα’αα»αααααααααααααααααΌαααΆαα αΆααααΆαααα ααααα»αα½α αα·ααααααααΆα’αααααΆα’αΆα α αΌαααααΎααΆααΆαα ααααααααααΆαα ααΉααα·αααααααα ααΎααααααααααααα’αα»ααααα ααααααααΎαααΆααα½α α αΎαααααααα’αα»ααααα ααααααααα»ααΌα ααΆ ααα―αααΆα ααααααΆααΎαα
- ααααα»αα·αααααα» - ααααΎαααΆαααΊααΆααααααααα» αα·αααααΎαααΆααααα»αααα·ααααΆααααΆαα α¬ααααα»ααααα·ααΆαα ααααΆαααααααααααααα·ααααα·ααΆαα α―αααΆα ααα―αααΆα ααααααΆααΎα ααΊααΆααααα»αααααααΌαααΆαα αΆααααΆααααααααααΆααααΆαααα½α αααααΆααα·αααα ααααα·αα―αααααΆαα
- αααααΆααα SELinux - SELinux ααααΎαααααΆαααααΆα αααΎαααΎααααΈααΆαααΆαααααααααα αααααΆααα SELinux αααααααΆαα αΌαααααΎααααα’αααααααΎααααΆααα αααααα½ααΆααΈ αα½ααΆααΈαα ααΆααααα αα·αααααα ααααααα ααααΌα α’αααααααΎααααΆααααααΌαααΆαα’αα»ααααΆαα±ααααα½αααΆααα½ααΆααΈ αααααΆαααααα½ααΆααΈααααΌαααΆαα’αα»ααααΆαα±ααα αΌαααααΎαααα ααΆα α»αααααα ααααα½αα’αΆα α αΌαααααΎααΆααααααααααα½αα ααα½αααααααα»ααα»αααααα
LSM αα·αααααΆαααααααα SELinux
αααααΈααΆααΆααααααααααα LSMs ααΆααΌαα αα·αα’αΆα αααα»ααααΌαα»αααΈαα»α ααΆαααα ααααααΆαααΆααααα ααΌα ααΆ SELinux ααΆααααΌαααΆααα½ααααα αΌααααααααΆαααα αααα»αααΊαααα ααΆααααΆαααααΆααααααΌααα ααΌαααααα LSM ααΆαααΆαααΆαα αααααααΊαααααααΈα αααααΎααααααααΌαααααΆααααΌαααααΎααα αααα»αααΆααααααααΊααα ααΎαα·αααΌα αααααααααααΌα LSM ααΉααα·αααααΌαααΆαααααΎα±ααααααααααααΆααααΈααΆαα αΆααααααΎαα ααα»ααααααΌααααΈαααααα»αααααΈααα ααΆα’αΆα ααααΌαααΆαααΎαααααααααΎααααααα·ααΈα αΆααααααΎαααααααααααααα·ααααα·ααΆαα
ααααα·αα·ααα LSM
LSM ααααΌαααΆαααααΆαααααααααααα αααα»ααα»αααΆαααΊαααααααΌα αααα’αΆα ααΆααααααααααααΆααααΆααααα½ααα·αα·αααα ααααααααααΆαααα½ααα LSMs ααΊααΆαα½αααΆααααΌαααΆαααΆαααααα ααΌα ααααααΆααααα½ααα·αα·ααααααααααΆααα ααααααΌαααΆαα’αα»αααα α αΎααααααΆααααΈαα½αααα LSM ααααΆααααααααααααΆαααααααααα αα·αααΆααααααααααααααααααα»αααααα αααβααΆαβαααβααΆ ααΆαβα αΆαααααΆαβαα·αβα’αΆα βααβααβαα·αβααΆαβααα αααααααΌαααΆααααα αΆααα αααα»αααΌαααΆα ααααα·αααΎααααααααααΆααααα½ααα·αα·ααα DAC ααΆαααα αΆαααΊααΆααΆααααΆααα ααααααα αΆααΉααα·αα’αΆα αα αααααααα LSM ααΆαααα
SELinux ααα½αααααααΆαααααααααα»ααααα·ααΆα Flask ααααααααααααααα·ααααα·ααΆαααααΆαααααΆα Fluke ααΆαα·ααααααααΆααααααα·αααα·αα·α αα½α αααα»αα ααααΉαααΆααααααα·αααα ααΌα ααααααααααααααΆααΆααααα αΆα ααΊααααααα·αααα·αααα’αααααααΎααααΆαα α¬ααααΎαααΆααααα·αααα·ααΆααααα αααα αΆαααΆα αααΎααααΈα’αα»αααααααααααΆααααααΆαααααααα»αα αααααΆααααααααααΌαααΆαα’αα»αααααααααααΎααΆαααΆααααα αΌααααααααα ααΌα ααααααΆααααααααααααΆαα αΌαααααΎαα αααα»α SELinux ααΊααα’ααααΎ domain => type modelα
ααΌαα’ααα»αα ααααααΆαααΆααααα αΌααααααααα SELinux ααΆααααααααΆααααααααααααΆαα αΌαααααΎααΆαα αααΎαααΆαααααΌ DAC αααααααΈαααααααΎαααα»αααααααααααααα·ααααα·ααΆα Unix/Linux α α§ααΆα ααα α’αααα’αΆα ααααααααα ααααααααΆαααααααΆαααΈααα ftp ααΉαααααΆαααα α’αα»ααααΆαα±ααααααα αα·αααααΆααααααΌαα―αααΆααα αααα»αααααΆααααΆαααα½α ααα»αααααα·ααα»ααα½αααΆααα
αααΆαααΆαα»ααααΆααααααα SELinux ααΊα
- αααΆαααΈαααα’αα»αααααααααΆααα - ααααααΆαααααΆαααααααΆαααααα αααΆααααααααααααΆαα αΌαααααΎααααΆααα
- ααΌαααααΆααα·ααααααααααααααΆααα»ααααα·ααΆαααααααααα
- α’ααααααααααΆαα½αα§αααααααααΆααα αΆααααααΉαααα·ααΆααα LSM α
- Selinuxfs - Pseudo-FS ααΌα ααααΆααΉα /proc αα·αααΆααααααα αααα»α /sys/fs/selinux α αααα αΌαααΆααααααααααΊαααααΈαα»α αα αααααααΎαααΆα αα·αααΆαα―αααΆααααααΆαααααααΆαααααΆαααΆα SELinux α
- α αΌαααααΎααααΆαααααααΆααααα·α ααα - ααααααΆααααα½ααααααΆααααΆααααααΎαααα·αααΆαα
ααααααα SELinux ααααΎαααΆα
ααΆααΆααα’ααααααΎαααΆαααΌα αααα
- αααααΆαααααΆααααΆαααα½ααα αααα»ααααααααα SELinux α’αα»αααααααααααΆααααααααΌαααΆαα’αα»ααααΆαααΎααααα»αα½ααααααΆααααΈααΆααααα½ααα·αα·ααα DAC ααΌα αααααΆααααα αΆααααα»αααΌαααΆαααΆαααΎα ααααΎαααααΎααααΈα’αα»ααααααααα·ααααα·ααΆααα½ααα ααΆααα§αααααααααΆααα αΆααααααΉαααα·ααΆααα LSM α
- ααΈααΈααα ααααΎαα½αααΆαα½αααΉααααααΆααα αα·αααα·αααα»ααααα·ααΆαααααα»ααααΌαααΆααααααΌααα αααΌαα»α SELinux Abstraction αα·α Hook Logic αααααα½ααα»αααααΌαα ααααα’ααααααααααΆαα½α LSM α
- α’αΆααααΆααααααΎααΆααααααα α α·αααααΎααΆαα αΌαααααΎαααααααααΆααααα ααΆααααααα»αα½αααΊ Server Enforcement Server α αΎαααΆααα½ααα·ααααααααΈ SELinux AnHLα
- ααΎααααΈααααΎααΆαααααα α α·αααα’αααΈααΆαα αΌαααααΎ α¬ααΆαααα·αααααα Server Enforcement Server αααααα ααΆααααααααααααααΆαααααααΆαα Access Vector Cache (AVC) αααααΆααα αααΆαααααααααΎα αααΎααααα»αα
- ααααα·αααΎαααααααααΆααααααΆααα αααΆαααααααααΌαααααΆαα·αααααΌαααΆαααααΎααα αααα»αααααΆαααααααΆαα αααααααΎααααΌαααΆααααααΌααα ααΌαααααΆααα·ααααααααααααααΆααα»ααααα·ααΆαα
- αααααααααααααααΈααΌαααααΆααα·αααααα αα·α AVC ααααΌαααΆααααααααα αααΆαααΈαααα’αα»αααααααααΆαααα
- ααααα·αααΎαααααΆααααααααΆαααααΎαααααΌαααααΆααΉααααααααΆααααααΆαααααΎαα»α αααααααα·ααααα·ααΆαααααΌαααΆαα’αα»ααααΆαα ααΎαα·αααΌα ααααααααααα·ααααα·ααΆαααααΌαααΆαα αΆαααΆααα
αααααααααααΆαααααα SELinux
SELinux ααααΎαααΆααααα»ααααααα½ααααα»αα ααααααΈα
- ααΆααααααΉα - ααΆααααααΆααααααΆαααααΆαααΉααααΉαα ααααααααααααΆαααααα·αα»αα
- ααΆαα’αα»ααααΆα - ααΆαααααΆαααΎααΆαααΉααααααΉαααααΌαααΆαα’αα»ααααΆα α αααΆααααααααΌαααααΆααααΌαααΆαααααΎα‘αΎααα αααα»ααα·ααΆαα»αααααααα·α
- αα·α - αααααΆααααα»ααααα·ααΆααα·αααΆαααααα·αααααΆαααα
α’αααα’αΆα ααΎαααΆααΎ SELinux αααα·ααααα»αααααααΆαααααααΎααΆααααααααΆααΆααααααα
[admin@server ~]$ getenforce
Permissive
ααΆαααααΆααααααΌααααααα»ααααα αΆααααααΎαα‘αΎααα·α α§ααΆα ααα αααααααΆαα ααΆααΆαααααα α¬ 1. αααΆαααΆααααααα’αα»ααααΆαααααΌαααααΆαα ααΉααααααΌαααα 0 α
[admin@server ~]$ setenfoce enforcing
[admin@server ~]$ setenfoce 1 #ΡΠΎ ΠΆΠ΅ ΡΠ°ΠΌΠΎΠ΅
α’αααααα’αΆα ααααΆααααααΌααααααααααααααα½αα―αααΆαα
[admin@server ~]$ cat /etc/selinux/config
# This file controls the state of SELinux on the system.
# SELINUX= can take one of these three values:
# enforcing - SELinux security policy is enforced.
# permissive - SELinux prints warnings instead of enforcing.
# disabled - No SELinux policy is loaded.
SELINUX=enforcing
# SELINUXTYPE= can take one of three values:
# targeted - Targeted processes are protected,
# minimum - Modification of targeted policy. Only selected processes are protected.
# mls - Multi Level Security protection.
SELINUXTYPE=ααααα
ααΆααα»αααααΆααΆαα½α setenfoce ααΊααΆαα ααααααααααααααααααα·ααααα·ααΆαα αΆααααααΎα αα»αααΆα SELinux ααΉαααααΌαααΆααααααααααααΆαααααααααααΆαααΆαααααα SELINUX αα αααα»αα―αααΆαααααααα ααΆααααααααα ααΎαααΈααα ααΆαααααΆααααααΌααα ααΆαααααα <=> αα·αααααΎαααΆαααΆααααααααΆαααααααα½αα―αααΆα /etc/selinux/config α αΎααααααΆααααΈα αΆααααααΎαα‘αΎααα·αα
ααΎααααΆαααΆαααααααΆαααΆαααααααα
[admin@server ~]$ sestatus
SELinux status: enabled
SELinuxfs mount: /sys/fs/selinux
SELinux root directory: /etc/selinux
Loaded policy name: targeted
Current mode: permissive
Mode from config file: enforcing
Policy MLS status: enabled
Policy deny_unknown status: allowed
Max kernel policy version: 31
ααΎααααΈααΎααα»ααααααα SELinux α§αααααααααΎααααΆαααααααααΆααα½αα
ααα½αααααΎαααΆαααΆαααααα -Z α
[admin@server ~]$ ls -lZ /var/log/httpd/
-rw-r--r--. root root system_u:object_r:httpd_log_t:s0 access_log
-rw-r--r--. root root system_u:object_r:httpd_log_t:s0 access_log-20200920
-rw-r--r--. root root system_u:object_r:httpd_log_t:s0 access_log-20200927
-rw-r--r--. root root system_u:object_r:httpd_log_t:s0 access_log-20201004
-rw-r--r--. root root system_u:object_r:httpd_log_t:s0 access_log-20201011
[admin@server ~]$ ps -u apache -Z
LABEL PID TTY TIME CMD
system_u:system_r:httpd_t:s0 2914 ? 00:00:04 httpd
system_u:system_r:httpd_t:s0 2915 ? 00:00:00 httpd
system_u:system_r:httpd_t:s0 2916 ? 00:00:00 httpd
system_u:system_r:httpd_t:s0 2917 ? 00:00:00 httpd
...
system_u:system_r:httpd_t:s0 2918 ? 00:00:00 httpd
ααΎαααααααααα ααΉαααααααααααααΆαα ls -l ααΆαααΆαααααααααΆα αααΎααααα»αααααααααΌα ααΆααααααα
<user>:<role>:<type>:<level>
ααΆαα α»αααααααααα αΆαααΈα’αααΈαα½αααΌα ααΆααΆαα αΆααααααΆαααα»ααααα·ααΆα α αΎαααΆαααΆααα½ααααα αΌαααααΆααααΆαα»ααΈαα
- s0 - ααΆααααααΆαααααααΆαααααααααααααΆα αααααααααα·αααΆα-ααααα·αααααα
- c0, c1β¦ c1023 - ααααααα
ααΆαααααΆααααααΌαααΆααααααααΆαα αΌαααααΎ
ααααΎ semodule ααΎααααΈαααα»α αααααα αα·ααααααΌαα»α SELinux α ααα
[admin@server ~]$ semodule -l |wc -l #ΡΠΏΠΈΡΠΎΠΊ Π²ΡΠ΅Ρ
ΠΌΠΎΠ΄ΡΠ»Π΅ΠΉ
408
[admin@server ~]$ semodule -e abrt #enable - Π°ΠΊΡΠΈΠ²ΠΈΡΠΎΠ²Π°ΡΡ ΠΌΠΎΠ΄ΡΠ»Ρ
[admin@server ~]$ semodule -d accountsd #disable - ΠΎΡΠΊΠ»ΡΡΠΈΡΡ ΠΌΠΎΠ΄ΡΠ»Ρ
[admin@server ~]$ semodule -r avahi #remove - ΡΠ΄Π°Π»ΠΈΡΡ ΠΌΠΎΠ΄ΡΠ»Ρ
αααα»αααΈαα½α αααααααααααΆαα αΌα ααααΆααα’αααααααΎααααΆαα SELinux αα α’αααααααΎααααΆααααααααααααααα·ααααα·ααΆα ααΈααΈααααα αΆααααααΈα ααΆα α»αααααα ααΆααααααααΆα α»αααααααααααΆααα»αααΆαα -r ααααΆαααΌααααααΈα’αααααααΎααααΆαα SELinux αα ααΆααααααΈ OS α ααΆαααααααα’αααΈααΆααααααααααααααααΆααααααααα½α MLS/MCS ααΊαα αααα»αααααααα»αα
[admin@server ~]$ semanage login -a -s user_u karol
[admin@server ~]$ semanage login -l
Login Name SELinux User MLS/MCS Range Service
__default__ unconfined_u s0-s0:c0.c1023 *
root unconfined_u s0-s0:c0.c1023 *
system_u system_u s0-s0:c0.c1023 *
[admin@server ~]$ semanage login -d karol
αααα»αααΆαααΆα αααααααααα’αααααααΎααααΆαα ααααΎααΎααααΈαααααααααααΆαααΌααααααΈαααΆαα’αααααααΎααααΆαα SELinux αα·ααα½ααΆααΈα
[admin@server ~]$ semanage user -l
Labeling MLS/ MLS/
SELinux User Prefix MCS Level MCS Range SELinux Roles
guest_u user s0 s0 guest_r
staff_u staff s0 s0-s0:c0.c1023 staff_r sysadm_r
...
user_u user s0 s0 user_r
xguest_u user s0 s0 xguest_r
[admin@server ~]$ semanage user -a -R 'staff_r user_r'
[admin@server ~]$ semanage user -d test_u
αααΆαααΆααααααααΆααααααααΆα
- - ααααααααΆαα»αααααΈαα½ααΆααΈααααΆαααααα½α;
- -l αααααΈααα’αααααααΎααααΆαααααααααΌαααααΆ αα·ααα½ααΆααΈ;
- -d αα»αααΆαα»αααααΈαα½ααΆααΈα’αααααααΎααααΆαα;
- -R αααααΈαα½ααΆααΈαααααααΆααααΆαα½αα’αααααααΎααααΆαα;
α―αααΆα α ααα αα·αααααααααΌααΈα
αααΌαα»α SELinux ααΈαα½αααααααααΌααααα»αααα αααΆααααΆααααααΆαα―αααΆα ααα»ααααα’αααααα’αΆα ααααααα αααΆααααααΆαααααα½αααααα’αααααααα·αααΎα αΆαααΆα αα α§ααΆα ααα ααΎαα ααα±αααααΆαααΈαααααα αααααααΆααα·αααα·α αΌαααααΎαα /srv/www α
[admin@server ~]$ semanage fcontext -a -t httpd_sys_content_t "/srv/www(/.*)?
[admin@server ~]$ restorecon -R /srv/www/
ααΆααααααααΆααΈαα½αα α»ααααααα αααΆαααααααΆααααααΈ α αΎαααΈααΈααααααα‘αΎααα·α α¬αααααααααααα―αααΆαααααααΆαα αααΆαααα αα α»ααααααα
ααΌα ααααΆααα α ααα TCP/UDP ααααΌαααΆααααααΆααααΆααααααααααΆαααααααΆααααααααααααα»ααααααααα’αΆα ααααΆααααΆαα α§ααΆα ααα ααΎααααΈα±αααααΆαααΈααααααααΆαααααΆαααα ααΎα ααα 8080 α’αααααααΌαααααΎαααΆαααΆααααααααΆα
[admin@server ~]$ semanage port -m -t http_port_t -p tcp 8080
α ααα½αααααΆαααααααΌαα»α SELinux ααΆααααΆαααΆαααααααααα’αΆα ααααααααααΌααΈαα αααααΈααΆααααΌααααααΆαααΆααααααααααααα’αΆα ααΎαααΎααααααααΎ getsebool -a α α’αααα’αΆα ααααΆααααααΌαααααααααΌααΈααααααααΎ setsebool α
[admin@server ~]$ getsebool httpd_enable_cgi
httpd_enable_cgi --> on
[admin@server ~]$ setsebool -P httpd_enable_cgi off
[admin@server ~]$ getsebool httpd_enable_cgi
httpd_enable_homedirs --> off
αα·ααααΆααΆααΆ ααα½αααΆαααΆαα αΌααα ααΆααα ααα»α αααααΆαααααααΆα Pgadmin
ααΌααααα‘ααααΎαα§ααΆα αααααΆαααααααα ααΎαααΆαααα‘αΎα pgadmin7.6-web αα
ααΎ RHEL 4 ααΎααααΈαααααααααααΌαααααΆααα·αααααα PostgreSQL α ααΎαααΎαααααα·α
ααΎαα
αΆααααααΎαααΆαα½αααααααααααααααΆ αα·αα·αααααΎα /var/log/httpd/error_log α ααΆαααΆαα»αα½αα±ααα
αΆααα’αΆαααααααα½αα
ααα½ααα
ααΈαααα
[timestamp] [core:notice] [pid 23689] SELinux policy enabled; httpd running as context system_u:system_r:httpd_t:s0
...
[timestamp] [wsgi:error] [pid 23690] [Errno 13] Permission denied: '/var/lib/pgadmin'
[timestamp] [wsgi:error] [pid 23690]
[timestamp] [wsgi:error] [pid 23690] HINT : You may need to manually set the permissions on
[timestamp] [wsgi:error] [pid 23690] /var/lib/pgadmin to allow apache to write to it.
αα α ααα»α ααα α’ααααααααααααααΈαα»α ααΆαα αααΎαααΉαααααΌαααΆααααα½ααααΆαααααΆααα±ααααααΎαααΆα setencorce 0 α αΎααααααΉαααΆααΈαααα ααααααααΆα αα·ααΆαα±ααααααααα αααα»αααΆαααααΎααΆααΆααΎαααααΌαα αααααααΆααααΌαα ααααα ααα»αααααα ααααΆαααΈααα’αααα»αα
αααααΈααΆααΆααα ααΆαααααα»αααααΆαααααα SELinux α’αΆα ααΆααααα½αααααΎα ααααΆααααααα‘αΎααααα αα setroubleshoot α αΎαααΎααααααα ααα»ααααααααα
[admin@server ~]$ yum install setroubleshoot
[admin@server ~]$ journalctl -b -0
[admin@server ~]$ service restart auditd
ααΌαα αααΆαααΆααααΆαααααααααααααααΌαααα αΆααααααΎαα‘αΎααα·αααΆααα·ααΈααα αα·ααα·αααααΎ systemctl αααααΈααΆααΆαααααααΆα systemd αα αααα»α OS αααααα αα αααα»ααααααα ααα»αααααααα ααΉαααααΌαααΆαα ααα’α»ααααα αΆα αα·αααααΉαααααΆααα·αααααΆααααααααΆααααα»αααααααααα»ααααααααΆα ααα»αααα·α αα·ααΈααΎααααΈααααααααΆαα αΆαααΆαα.
ααΎαααααα·ααααα·ααΆααααααααΆααΆαααααα
[admin@server ~]$ setsebool -P httpd_can_network_connect 1
[admin@server ~]$ setsebool -P httpd_can_network_connect_db 1
ααΎααα·αα·αααααΎαααΆαα αΌααα ααΆααααα ααααα pgadmin4-web page α’αααΈαααααΎαααΆαα
ααααα: www.habr.com