เจฒเฉเจ เจฆเจพ เจ
เจจเฉเจตเจพเจฆ เจเฉเจฐเจธ เจฆเฉ เจตเจฟเจฆเจฟเจเจฐเจฅเฉเจเจ เจฒเจ เจตเจฟเจธเจผเฉเจธเจผ เจคเฉเจฐ 'เจคเฉ เจคเจฟเจเจฐ เจเฉเจคเจพ เจเจฟเจ เจธเฉ
เจเฉฑเจฅเฉ เจคเฉเจนเจพเจจเฉเฉฐ เจฌเจฟเจนเจคเจฐ เจธเฉเจฐเฉฑเจเจฟเจ เจจเจพเจฒ เจฒเฉเจจเจเจธ เจตเจฟเฉฑเจ เจเฉเจตเจจ, เจฌเฉเจฐเจนเจฟเจฎเฉฐเจก เจ
เจคเฉ เจนเจฐ เจเฉเจเจผ เจฌเจพเจฐเฉ เจฎเจนเฉฑเจคเจตเจชเฉเจฐเจจ เจธเจตเจพเจฒเจพเจ เจฆเฉ เจเจตเจพเจฌ เจฎเจฟเจฒเจฃเจเฉเฅค
"เจฎเจนเฉฑเจคเจตเจชเฉเจฐเจจ เจธเฉฑเจเจพเจ เจเจน เจนเฉ เจเจฟ เจเฉเจเจผเจพเจ เจนเจฎเฉเจธเจผเจพเจ เจเจน เจจเจนเฉเจ เจนเฉเฉฐเจฆเฉเจเจ เจเฉ เจเจน เจฆเจฟเจเจพเจ เจฆเจฟเฉฐเจฆเฉเจเจ เจนเจจ เจเจฎ เจเจฟเจเจจ ..."
-เจกเฉเจเจฒเจธ เจเจกเจฎเจธ, เจเจฒเฉเจเจธเฉ เจฒเจ เจนเจฟเจเจนเจพเจเจเจฐ เจฆเฉ เจเจพเจเจก
เจธเฉเจฐเฉฑเจเจฟเจเฅค เจตเจงเฉ เจนเฉเจ เจญเจฐเฉเจธเฉเจฏเฉเจเจคเจพเฅค เจฒเจฟเจเจค - เจชเฉเฉเจนเจค. เจจเฉเจคเฉ เจจเฉเฉฐ. เจเจชเฉเจเจฒเจฟเจชเจธ เจธเจฟเจธเจพเจกเจฎเจฟเจจ เจฆเฉ เจเจพเจฐ เจเฉเฉเจธเจตเจพเจฐ. เจธเจพเจกเฉ เจฐเฉเจเจผเจพเจจเจพ เจฆเฉ เจเฉฐเจฎเจพเจ เจคเฉเจ เจเจฒเจพเจตเจพ - เจจเจฟเจเจฐเจพเจจเฉ, เจฌเฉเจเจ
เฉฑเจช, เจฒเจพเจเฉ เจเจฐเจจเจพ, เจธเฉฐเจฐเจเจจเจพ, เจ
เฉฑเจชเจกเฉเจ เจเจฐเจจเจพ, เจเจฆเจฟ - เจ
เจธเฉเจ เจเจชเจฃเฉ เจธเจฟเจธเจเจฎเจพเจ เจฆเฉ เจธเฉเจฐเฉฑเจเจฟเจ เจฒเจ เจตเฉ เจเจผเจฟเฉฐเจฎเฉเจตเจพเจฐ เจนเจพเจเฅค เจเฉฑเจฅเฉเจ เจคเฉฑเจ เจเจฟ เจเจน เจชเฉเจฐเจฃเจพเจฒเฉเจเจ เจเจฟเฉฑเจฅเฉ เจคเฉเจเฉ-เจงเจฟเจฐ เจชเฉเจฐเจฆเจพเจคเจพ เจธเจฟเจซเจผเจพเจฐเจธเจผ เจเจฐเจฆเจพ เจนเฉ เจเจฟ เจ
เจธเฉเจ เจตเจฟเจธเจคเฉเจฐเจฟเจค เจธเฉเจฐเฉฑเจเจฟเจ เจจเฉเฉฐ เจ
เจธเจฎเจฐเฉฑเจฅ เจเจฐเจฆเฉ เจนเจพเจเฅค เจเจน เจเฉฐเจฎ เจตเจพเจเจ เจฎเจนเจฟเจธเฉเจธ เจนเฉเฉฐเจฆเจพ เจนเฉ
เจเจธ เจฆเฉเจฌเจฟเจงเจพ เจฆเจพ เจธเจพเจนเจฎเจฃเจพ เจเจฐเจฆเฉ เจนเฉเจ, เจเฉเจ เจธเจฟเจธเจเจฎ เจชเฉเจฐเจธเจผเจพเจธเจ เจฒเฉเจฃ เจฆเจพ เจซเฉเจธเจฒเจพ เจเจฐเจฆเฉ เจนเจจ
The Hitchhiker's Guide to the Galaxy เจฆเฉ เจญเจพเจตเจจเจพ เจตเจฟเฉฑเจ, เจเฉฑเจฅเฉ เจเฉฐเจเจฐเฉเจฒ เจ
เจคเฉ เจตเจฐเจคเฉเจ เจฌเจพเจฐเฉ เจฎเจนเฉฑเจคเจตเจชเฉเจฐเจจ เจธเจตเจพเจฒเจพเจ เจฆเฉ 42 เจเจตเจพเจฌ เจนเจจเฅค
1. SELinux เจเฉฑเจ เจเจผเจฌเจฐเจฆเจธเจคเฉ เจชเจนเฉเฉฐเจ เจจเจฟเจฏเฉฐเจคเจฐเจฃ เจธเจฟเจธเจเจฎ เจนเฉ, เจเจฟเจธเจฆเจพ เจฎเจคเจฒเจฌ เจนเฉ เจเจฟ เจนเจฐเฉเจ เจชเฉเจฐเจเจฟเจฐเจฟเจ เจฆเจพ เจเฉฑเจ เจฒเฉเจฌเจฒ เจนเฉเฉฐเจฆเจพ เจนเฉเฅค เจนเจฐเฉเจ เจซเจพเจเจฒ, เจกเจพเจเจฐเฉเจเจเจฐเฉ เจ เจคเฉ เจธเจฟเจธเจเจฎ เจเจฌเจเฉเจเจ เจฆเฉ เจฒเฉเจฌเจฒ เจตเฉ เจนเฉเฉฐเจฆเฉ เจนเจจเฅค เจจเฉเจคเฉ เจจเจฟเจฏเจฎ เจเฉเจ เจเฉเจคเฉเจเจ เจชเฉเจฐเจเจฟเจฐเจฟเจเจตเจพเจ เจ เจคเฉ เจตเจธเจคเฉเจเจ เจตเจฟเจเจเจพเจฐ เจชเจนเฉเฉฐเจ เจจเฉเฉฐ เจเฉฐเจเจฐเฉเจฒ เจเจฐเจฆเฉ เจนเจจเฅค เจเจฐเจจเจฒ เจเจนเจจเจพเจ เจจเจฟเจฏเจฎเจพเจ เจจเฉเฉฐ เจฒเจพเจเฉ เจเจฐเจฆเจพ เจนเฉเฅค
2. เจฆเฉ เจธเจญ เจคเฉเจ เจฎเจนเฉฑเจคเจตเจชเฉเจฐเจจ เจงเจพเจฐเจจเจพเจตเจพเจ เจนเจจ: เจฒเฉเจฌเจฒเจฟเฉฐเจ - เจฎเจพเจฐเจเจฟเฉฐเจ (เจซเจพเจเจฒเจพเจ, เจชเฉเจฐเจเจฟเจฐเจฟเจเจตเจพเจ, เจชเฉเจฐเจเจพเจ, เจเจฆเจฟ) เจ เจคเฉ เจฒเจพเจเฉเจเจฐเจจ เจฆเฉ เจเจฟเจธเจฎ (เจเฉ เจเจฟ เจเจฟเจธเจฎเจพเจ เจฆเฉ เจ เจงเจพเจฐ เจคเฉ เจเฉฑเจ เจฆเฉเจเฉ เจคเฉเจ เจชเฉเจฐเจเจฟเจฐเจฟเจเจตเจพเจ เจจเฉเฉฐ เจ เจฒเฉฑเจ เจเจฐเจฆเจพ เจนเฉ)เฅค
3. เจธเจนเฉ เจฒเฉเจฌเจฒ เจซเจพเจฐเจฎเฉเจ user:role:type:level
(เจตเจฟเจเจฒเจชเจฟเจ)เฅค
4. เจฌเจนเฉ-เจชเฉฑเจงเจฐเฉ เจธเฉเจฐเฉฑเจเจฟเจ เจชเฉเจฐเจฆเจพเจจ เจเจฐเจจ เจฆเจพ เจเจฆเฉเจธเจผ (เจฌเจนเฉ-เจชเฉฑเจงเจฐเฉ เจธเฉเจฐเฉฑเจเจฟเจ - MLS) เจเจนเจจเจพเจ เจฆเฉเจเจฐเจพ เจตเจฐเจคเฉ เจเจพเจฃ เจตเจพเจฒเฉ เจกเฉเจเจพ เจฆเฉ เจธเฉเจฐเฉฑเจเจฟเจ เจฆเฉ เจชเฉฑเจงเจฐ เจฆเฉ เจ เจงเจพเจฐ เจคเฉ เจชเฉเจฐเจเจฟเจฐเจฟเจเจตเจพเจ (เจกเฉเจฎเฉเจจเจพเจ) เจฆเจพ เจชเฉเจฐเจฌเฉฐเจงเจจ เจเจฐเจจเจพ เจนเฉเฅค เจเจฆเจพเจนเจฐเจจ เจฒเจ, เจเฉฑเจ เจเฉเจชเจค เจชเฉเจฐเจเจฟเจฐเจฟเจ เจเฉเจเฉ เจฆเฉ เจเฉเจชเจค เจกเฉเจเจพ เจจเฉเฉฐ เจจเจนเฉเจ เจชเฉเฉเจน เจธเจเจฆเฉเฅค
5. เจฌเจนเฉ-เจธเจผเฉเจฐเฉเจฃเฉ เจธเฉเจฐเฉฑเจเจฟเจ เจจเฉเฉฐ เจฏเจเฉเจจเฉ เจฌเจฃเจพเจเจฃเจพ (เจฌเจนเฉ-เจธเจผเฉเจฐเฉเจฃเฉ เจธเฉเจฐเฉฑเจเจฟเจ - MCS) เจเฉฑเจ เจฆเฉเจเฉ เจคเฉเจ เจธเจฎเจพเจจ เจชเฉเจฐเจเจฟเจฐเจฟเจเจตเจพเจ เจฆเฉ เจฐเฉฑเจเจฟเจ เจเจฐเจฆเจพ เจนเฉ (เจเจฆเจพเจนเจฐเจจ เจฒเจ, เจตเจฐเจเฉเจ เจฒ เจฎเจธเจผเฉเจจเจพเจ, เจเจชเจจเจธเจผเจฟเจซเจ เจเฉฐเจเจฃ, SELinux เจธเฉเจเจกเจฌเฉเจเจธ, เจเฉฐเจเฉเจจเจฐ, เจเจฆเจฟ)เฅค
6. เจฌเฉเจ เจนเฉเจฃ 'เจคเฉ SELinux เจฎเฉเจกเจพเจ เจจเฉเฉฐ เจฌเจฆเจฒเจฃ เจฒเจ เจเจฐเจจเจฒ เจตเจฟเจเจฒเจช:
autorelabel=1
โ เจธเจฟเจธเจเจฎ เจจเฉเฉฐ เจฐเฉเจฒเฉเจฌเจฒเจฟเฉฐเจ เจเจฒเจพเจเจฃ เจฆเจพ เจเจพเจฐเจจ เจฌเจฃเจฆเจพ เจนเฉselinux=0
โ เจเจฐเจจเจฒ SELinux เจฌเฉเจจเจฟเจเจฆเฉ เจขเจพเจเจเฉ เจจเฉเฉฐ เจฒเฉเจก เจจเจนเฉเจ เจเจฐเจฆเจพ เจนเฉenforcing=0
โ เจชเจฐเจฎเจฟเจธเจผเจจ เจฎเฉเจก เจตเจฟเฉฑเจ เจฒเฉเจก เจนเฉ เจฐเจฟเจนเจพ เจนเฉ
7. เจเฉเจเจฐ เจคเฉเจนเจพเจจเฉเฉฐ เจชเฉเจฐเฉ เจธเจฟเจธเจเจฎ เจจเฉเฉฐ เจฐเฉเจฒเฉเจฌเจฒ เจเจฐเจจ เจฆเฉ เจฒเฉเฉ เจนเฉ:
# touch /.autorelabel
#reboot
เจเฉเจเจฐ เจธเจฟเจธเจเจฎ เจฎเจพเจฐเจเจฟเฉฐเจ เจตเจฟเฉฑเจ เจตเฉฑเจกเฉ เจเจฟเจฃเจคเฉ เจตเจฟเฉฑเจ เจคเจฐเฉเฉฑเจเฉเจเจ เจนเจจ, เจคเจพเจ เจคเฉเจนเจพเจจเฉเฉฐ เจธเจซเจฒ เจนเฉเจฃ เจฒเจ เจฐเฉเจฎเจพเจฐเจเจฟเฉฐเจ เจฒเจ เจ เจจเฉเจฎเจคเฉ เจฎเฉเจก เจตเจฟเฉฑเจ เจฌเฉเจ เจเจฐเจจ เจฆเฉ เจฒเฉเฉ เจนเฉ เจธเจเจฆเฉ เจนเฉเฅค
8. เจเจน เจเจพเจเจ เจเจฐเจจ เจฒเจ เจเจฟ เจเฉ SELinux เจฏเฉเจ เจนเฉ: # getenforce
9. SELinux เจจเฉเฉฐ เจ
เจธเจฅเจพเจ เจคเฉเจฐ 'เจคเฉ เจธเจฎเจฐเฉฑเจฅ/เจ
เจฏเฉเจ เจเจฐเจจ เจฒเจ: # setenforce [1|0]
10. SELinux เจธเจฅเจฟเจคเฉ เจฆเฉ เจเจพเจเจ เจเฉเจคเฉ เจเจพ เจฐเจนเฉ เจนเฉ: # sestatus
11. เจธเฉฐเจฐเจเจจเจพ เจซเจพเจเจฒ: /etc/selinux/config
12. SELinux เจเจฟเจตเฉเจ เจเฉฐเจฎ เจเจฐเจฆเจพ เจนเฉ? เจเฉฑเจฅเฉ เจ เจชเจพเจเฉ เจตเฉเฉฑเจฌ เจธเจฐเจตเจฐ เจฒเจ เจฎเจพเจฐเจ เจเจฐเจจ เจฆเจพ เจเฉฑเจ เจเจฆเจพเจนเจฐเจจ เจนเฉ:
- เจฌเจพเจเจจเจฐเฉ เจชเฉเจฐเจคเฉเจจเจฟเจงเจคเจพ:
/usr/sbin/httpdโhttpd_exec_t
- เจธเฉฐเจฐเจเจจเจพ เจกเจพเจเจฐเฉเจเจเจฐเฉ:
/etc/httpdโhttpd_config_t
- เจฒเฉเจ เจซเจพเจเจฒ เจกเจพเจเจฐเฉเจเจเจฐเฉ:
/var/log/httpd โ httpd_log_t
- เจธเจฎเฉฑเจเจฐเฉ เจกเจพเจเจฐเฉเจเจเจฐเฉ:
/var/www/html โ httpd_sys_content_t
- เจธเจเฉเจฐเจฟเจชเจ เจฒเจพเจเจ เจเจฐเฉ:
/usr/lib/systemd/system/httpd.service โ httpd_unit_file_d
- เจชเฉเจฐเจเจฟเจฐเจฟเจ:
/usr/sbin/httpd -DFOREGROUND โ httpd_t
- เจฌเฉฐเจฆเจฐเจเจพเจนเจพเจ:
80/tcp, 443/tcp โ httpd_t, http_port_t
เจธเฉฐเจฆเจฐเจญ เจตเจฟเฉฑเจ เจเฉฑเจฒ เจฐเจนเฉ เจชเฉเจฐเจเจฟเจฐเจฟเจ httpd_t
, เจฒเฉเจฌเจฒ เจเฉเจคเฉ เจตเจธเจคเฉ เจจเจพเจฒ เจเฉฐเจเจฐเฉเจเจ เจเจฐ เจธเจเจฆเจพ เจนเฉ httpd_something_t
.
13. เจเจ เจนเฉเจเจฎ เจเฉฑเจ เจฆเจฒเฉเจฒ เจจเฉเฉฐ เจธเจตเฉเจเจพเจฐ เจเจฐเจฆเฉ เจนเจจ -Z
เจธเฉฐเจฆเจฐเจญ เจฆเฉเจเจฃ, เจฌเจฃเจพเจเจฃ เจ
เจคเฉ เจฌเจฆเจฒเจฃ เจฒเจ:
ls -Z
id -Z
ps -Z
netstat -Z
cp -Z
mkdir -Z
เจธเฉฐเจฆเจฐเจญ เจธเจฅเจพเจชเจฟเจค เจเฉเจคเฉ เจเจพเจเจฆเฉ เจนเจจ เจเจฆเฉเจ เจซเจพเจเจฒเจพเจ เจเจนเจจเจพเจ เจฆเฉ เจฎเฉเจฒ เจกเจพเจเจฐเฉเจเจเจฐเฉ เจฆเฉ เจธเฉฐเจฆเจฐเจญ เจฆเฉ เจ เจงเจพเจฐ เจคเฉ เจฌเจฃเจพเจเจเจ เจเจพเจเจฆเฉเจเจ เจนเจจ (เจเฉเจ เจ เจชเจตเจพเจฆเจพเจ เจฆเฉ เจจเจพเจฒ)เฅค RPMs เจเฉฐเจธเจเจพเจฒเฉเจธเจผเจจ เจฆเฉเจฐเจพเจจ เจชเฉเจฐเจธเฉฐเจ เจธเจฅเจพเจชเจค เจเจฐ เจธเจเจฆเฉ เจนเจจเฅค
14. SELinux เจเจฒเจคเฉเจเจ เจฆเฉ เจเจพเจฐ เจฎเฉเฉฑเจ เจเจพเจฐเจจ เจนเจจ, เจเจฟเจจเฉเจนเจพเจ เจจเฉเฉฐ เจนเฉเจ เจพเจ เจฌเจฟเฉฐเจฆเฉ 15-21 เจตเจฟเฉฑเจ เจตเจงเฉเจฐเฉ เจตเจฟเจธเจฅเจพเจฐ เจตเจฟเฉฑเจ เจฆเฉฑเจธเจฟเจ เจเจฟเจ เจนเฉ:
- เจฒเฉเจฌเจฒเจฟเฉฐเจ เจฎเฉเฉฑเจฆเฉ
- เจเจฟเจธเฉ เจเฉเจเจผ เจฆเฉ เจเจพเจฐเจจ เจเฉ SELinux เจจเฉเฉฐ เจเจพเจฃเจจ เจฆเฉ เจฒเฉเฉ เจนเฉ
- SELinux เจจเฉเจคเฉ/เจเจชเจฒเฉเจเฉเจธเจผเจจ เจตเจฟเฉฑเจ เจเจฒเจคเฉ
- เจคเฉเจนเจพเจกเฉ เจเจพเจฃเจเจพเจฐเฉ เจจเจพเจฒ เจธเจฎเจเฉเจคเจพ เจเฉเจคเจพ เจเจพ เจธเจเจฆเจพ เจนเฉ
15. เจฒเฉเจฌเจฒเจฟเฉฐเจ เจธเจฎเฉฑเจธเจฟเจ: เจเฉเจเจฐ เจคเฉเจนเจพเจกเฉเจเจ เจซเจพเจเจฒเจพเจ เจตเจฟเฉฑเจ เจนเจจ /srv/myweb
เจเจฒเจค เจคเจฐเฉเจเฉ เจจเจพเจฒ เจเจฟเฉฐเจจเฉเจนเจฟเจค เจเฉเจคเฉ เจเจ เจนเจจ, เจชเจนเฉเฉฐเจ เจคเฉเจ เจเจจเจเจพเจฐ เจเฉเจคเจพ เจเจพ เจธเจเจฆเจพ เจนเฉเฅค เจเฉฑเจฅเฉ เจเจธเจจเฉเฉฐ เจ เฉเจ เจเจฐเจจ เจฆเฉ เจเฉเจ เจคเจฐเฉเจเฉ เจนเจจ:
- เจเฉ เจคเฉเจธเฉเจ เจฒเฉเจฌเจฒ เจจเฉเฉฐ เจเจพเจฃเจฆเฉ เจนเฉ:
# semanage fcontext -a -t httpd_sys_content_t '/srv/myweb(/.*)?'
- เจเฉเจเจฐ เจคเฉเจธเฉเจ เจฌเจฐเจพเจฌเจฐ เจจเจฟเจธเจผเจพเจจเจพเจ เจตเจพเจฒเฉ เจเฉฑเจ เจซเจพเจเจฒ เจเจพเจฃเจฆเฉ เจนเฉ:
# semanage fcontext -a -e /srv/myweb /var/www
- เจธเฉฐเจฆเจฐเจญ เจจเฉเฉฐ เจฌเจนเจพเจฒ เจเจฐเจจเจพ (เจฆเฉเจตเฉเจ เจฎเจพเจฎเจฒเจฟเจเจ เจฒเจ):
# restorecon -vR /srv/myweb
16. เจฒเฉเจฌเจฒเจฟเฉฐเจ เจธเจฎเฉฑเจธเจฟเจ: เจเฉเจเจฐ เจคเฉเจธเฉเจ เจเจธ เจจเฉเฉฐ เจเจพเจชเฉ เจเจฐเจจ เจฆเฉ เจฌเจเจพเจ เจซเจพเจเจฒ เจจเฉเฉฐ เจฎเฉเจต เจเจฐเจฆเฉ เจนเฉ, เจคเจพเจ เจซเจพเจเจฒ เจเจธเจฆเฉ เจ เจธเจฒเฉ เจธเฉฐเจฆเจฐเจญ เจจเฉเฉฐ เจฌเจฐเจเจฐเจพเจฐ เจฐเฉฑเจเฉเจเฉเฅค เจเจธ เจธเจฎเฉฑเจธเจฟเจ เจจเฉเฉฐ เจนเฉฑเจฒ เจเจฐเจจ เจฒเจ:
- เจฒเฉเจฌเจฒ เจฆเฉ เจจเจพเจฒ เจชเฉเจฐเจธเฉฐเจ เจเจฎเจพเจเจก เจจเฉเฉฐ เจฌเจฆเจฒเฉ:
# chcon -t httpd_system_content_t /var/www/html/index.html
- เจฒเจฟเฉฐเจ เจฒเฉเจฌเจฒ เจฆเฉ เจจเจพเจฒ เจชเฉเจฐเจธเฉฐเจ เจเจฎเจพเจเจก เจจเฉเฉฐ เจฌเจฆเจฒเฉ:
# chcon --reference /var/www/html/ /var/www/html/index.html
- เจธเฉฐเจฆเจฐเจญ เจจเฉเฉฐ เจฌเจนเจพเจฒ เจเจฐเฉ (เจฆเฉเจตเฉเจ เจฎเจพเจฎเจฒเจฟเจเจ เจฒเจ):
# restorecon -vR /var/www/html/
17. เจเฉ SELinux เจคเฉเจนเจพเจจเฉเฉฐ เจเจพเจฃเจจ เจฆเฉ เจฒเฉเฉ เจนเฉเจเจฟ HTTPD เจชเฉเจฐเจ 8585 'เจคเฉ เจธเฉเจฃ เจฐเจฟเจนเจพ เจนเฉ, SELinux เจจเฉเฉฐ เจฆเฉฑเจธเฉ:
# semanage port -a -t http_port_t -p tcp 8585
18. SELinux เจคเฉเจนเจพเจจเฉเฉฐ เจเจพเจฃเจจ เจฆเฉ เจฒเฉเฉ เจนเฉ เจฌเฉเจฒเฉเจ
เจจ เจฎเฉเฉฑเจฒ เจเฉ SELinux เจชเจพเจฒเจฟเจธเฉ เจฆเฉ เจญเจพเจเจพเจ เจจเฉเฉฐ SELinux เจชเจพเจฒเจฟเจธเฉ เจจเฉเฉฐ เจเจตเจฐเจฐเจพเจเจ เจเฉเจคเฉ เจเจพเจฃ เจฆเฉ เจเจพเจฃเจเจพเจฐเฉ เจคเฉเจ เจฌเจฟเจจเจพเจ เจฐเจจเจเจพเจเจฎ 'เจคเฉ เจฌเจฆเจฒเจฃ เจฆเฉ เจเจเจพเจเจผเจค เจฆเจฟเฉฐเจฆเฉ เจนเจจเฅค เจเจฆเจพเจนเจฐเจจ เจฒเจ, เจเฉเจเจฐ เจคเฉเจธเฉเจ httpd เจจเฉเฉฐ เจเจฎเฉเจฒ เจญเฉเจเจฃเจพ เจเจพเจนเฉเฉฐเจฆเฉ เจนเฉ, เจคเจพเจ เจฆเจพเจเจฒ เจเจฐเฉ: # setsebool -P httpd_can_sendmail 1
19. SELinux เจคเฉเจนเจพเจจเฉเฉฐ เจเจพเจฃเจจ เจฆเฉ เจฒเฉเฉ เจนเฉ SELinux เจธเฉเจเจฟเฉฐเจเจพเจ เจจเฉเฉฐ เจธเจฎเจฐเฉฑเจฅ/เจ เจฏเฉเจ เจเจฐเจจ เจฒเจ เจฒเจพเจเจผเฉเจเจฒ เจฎเฉเฉฑเจฒ:
- เจธเจพเจฐเฉ เจฌเฉเจฒเฉเจ
เจจ เจฎเฉเฉฑเจฒ เจฆเฉเจเจฃ เจฒเจ:
# getsebool -a
- เจนเจฐเฉเจ เจฆเจพ เจตเฉเจฐเจตเจพ เจฆเฉเจเจฃ เจฒเจ:
# semanage boolean -l
- เจฌเฉเจฒเฉเจ
เจจ เจฎเฉเฉฑเจฒ เจธเฉเฉฑเจ เจเจฐเจจ เจฒเจ:
# setsebool [_boolean_] [1|0]
- เจเฉฑเจ เจธเจฅเจพเจ เจเฉฐเจธเจเจพเจฒเฉเจธเจผเจจ เจฒเจ, เจธเจผเจพเจฎเจฟเจฒ เจเจฐเฉ
-P
. เจเจฆเจพเจนเจฐเจฃ เจฒเจ:# setsebool httpd_enable_ftp_server 1 -P
20. SELinux เจจเฉเจคเฉเจเจ/เจเจชเจฒเฉเจเฉเจธเจผเจจเจพเจ เจตเจฟเฉฑเจ เจเจฒเจคเฉเจเจ เจนเฉ เจธเจเจฆเฉเจเจ เจนเจจ, เจเจฟเจธ เจตเจฟเฉฑเจ เจธเจผเจพเจฎเจฒ เจนเจจ:
- เจ เจธเจงเจพเจฐเจจ เจเฉเจก เจฎเจพเจฐเจ
- เจธเฉฐเจฐเจเจจเจพเจตเจพเจ
- stdout เจจเฉเฉฐ เจฐเฉเจกเจพเจเจฐเฉเจเจ เจเฉเจคเจพ เจเจพ เจฐเจฟเจนเจพ เจนเฉ
- เจซเจพเจเจฒ เจกเจฟเจธเจเฉเจฐเจฟเจชเจเจฐ เจฒเฉเจ
- เจเจเจเจผเฉเจเจฟเจเจเฉเจฌเจฒ เจฎเฉเจฎเฉเจฐเฉ
- เจเจผเจฐเจพเจฌ เจฌเจฃเฉเจเจ เจฒเจพเจเจฌเฉเจฐเฉเจฐเฉเจเจ
เจเจชเจจ เจเจฟเจเจเจพเจ (เจฌเจเจเจผเฉเจฒเจพ เจจเฉเฉฐ เจฐเจฟเจชเฉเจฐเจ เจจเจพ เจฆเจฟเจ; เจฌเฉฑเจเจเจผเฉเจฒเจพ เจฆเจพ เจเฉเจ SLA เจจเจนเฉเจ เจนเฉ)เฅค
21. เจคเฉเจนเจพเจกเฉ เจเจพเจฃเจเจพเจฐเฉ เจจเจพเจฒ เจธเจฎเจเฉเจคเจพ เจเฉเจคเจพ เจเจพ เจธเจเจฆเจพ เจนเฉเจเฉเจเจฐ เจคเฉเจนเจพเจกเฉ เจเฉเจฒ เจชเฉเจฐเจคเจฟเจฌเฉฐเจงเจฟเจค เจกเฉเจฎเฉเจจ เจนเจจ เจเฉ เจเจน เจเจฐเจจ เจฆเฉ เจเฉเจธเจผเจฟเจธเจผ เจเจฐ เจฐเจนเฉ เจนเจจ:
- เจเจฐเจจเจฒ เจฎเฉเจกเฉเจเจฒ เจฒเฉเจก เจเจฐเฉ
- เจฒเจพเจเฉ เจเฉเจคเฉ SELinux เจฎเฉเจก เจจเฉเฉฐ เจ เจธเจฎเจฐเฉฑเจฅ เจฌเจฃเจพเจ
- เจจเฉเฉฐ เจฒเจฟเจเฉ
etc_t/shadow_t
- iptables เจจเจฟเจฏเจฎ เจฌเจฆเจฒเฉ
22. เจจเฉเจคเฉ เจฎเจพเจกเจฟเจเจฒ เจตเจฟเจเจธเจฟเจค เจเจฐเจจ เจฒเจ SELinux เจเฉเจฒ:
# yum -y install setroubleshoot setroubleshoot-server
เจฐเฉเจฌเฉเจ เจเจฐเฉ เจเจพเจ เจฐเฉเจธเจเจพเจฐเจ เจเจฐเฉ auditd
เจเฉฐเจธเจเจพเจฒเฉเจธเจผเจจ เจฆเฉ เจฌเจพเจ
เจฆ.
23. เจตเจฐเจคเฉเจ เจเจฐเฉ
journalctl
เจจเจพเจฒ เจเฉเฉเฉ เจธเจพเจฐเฉ เจฒเจพเจเจพเจ เจฆเฉ เจธเฉเจเฉ เจชเฉเจฐเจฆเจฐเจธเจผเจฟเจค เจเจฐเจจ เจฒเจ setroubleshoot
:
# journalctl -t setroubleshoot --since=14:20
24. เจตเจฐเจคเฉเจ เจเจฐเฉ journalctl
เจเฉฑเจ เจเจพเจธ SELinux เจเฉเจ เจจเจพเจฒ เจเฉเฉเฉ เจธเจพเจฐเฉ เจฒเจพเจเจพเจ เจจเฉเฉฐ เจธเฉเจเฉเจฌเฉฑเจง เจเจฐเจจ เจฒเจเฅค เจเจฆเจพเจนเจฐเจฃ เจฒเจ:
# journalctl _SELINUX_CONTEXT=system_u:system_r:policykit_t:s0
25. เจเฉเจเจฐ SELinux เจเจฒเจคเฉ เจเจเจเจฆเฉ เจนเฉ, เจคเจพเจ เจฒเจพเจ เจฆเฉ เจตเจฐเจคเฉเจ เจเจฐเฉ setroubleshoot
เจเจ เจธเฉฐเจญเจต เจนเฉฑเจฒ เจฆเฉ เจชเฉเจธเจผเจเจธเจผ.
เจเจฆเจพเจนเจฐเจจ เจฒเจ, เจคเฉเจ journalctl
:
Jun 14 19:41:07 web1 setroubleshoot: SELinux is preventing httpd from getattr access on the file /var/www/html/index.html. For complete message run: sealert -l 12fd8b04-0119-4077-a710-2d0e0ee5755e
# sealert -l 12fd8b04-0119-4077-a710-2d0e0ee5755e
SELinux is preventing httpd from getattr access on the file /var/www/html/index.html.
***** Plugin restorecon (99.5 confidence) suggests ************************
If you want to fix the label,
/var/www/html/index.html default label should be httpd_syscontent_t.
Then you can restorecon.
Do
# /sbin/restorecon -v /var/www/html/index.html
26. เจฒเจพเจเจฟเฉฐเจ: SELinux เจเจ เจฅเจพเจตเจพเจ 'เจคเฉ เจเจพเจฃเจเจพเจฐเฉ เจฐเจฟเจเจพเจฐเจก เจเจฐเจฆเจพ เจนเฉ:
- / var / log / messages
- /var/log/audit/audit.log
- /var/lib/setroubleshoot/setroubleshoot_database.xml
27. เจฒเฉเจเจฟเฉฐเจ: เจเจกเจฟเจ เจฒเฉเจ เจตเจฟเฉฑเจ SELinux เจเจฒเจคเฉเจเจ เจฒเจ เจเฉเจ:
# ausearch -m AVC,USER_AVC,SELINUX_ERR -ts today
28. เจเจฟเจธเฉ เจเจพเจธ เจธเฉเจตเจพ เจฒเจ SELinux เจเจเจธเฉเจธ เจตเฉเจเจเจฐ เจเฉเจธเจผ (AVC) เจธเฉเจจเฉเจนเฉ เจฒเฉฑเจญเจฃ เจฒเจ:
# ausearch -m avc -c httpd
29. เจเจชเจฏเฉเจเจคเจพ audit2allow
เจตเจฐเจเจฟเจค เจเจชเจฐเฉเจธเจผเจจเจพเจ เจฆเฉ เจฒเจพเจเจพเจ เจคเฉเจ เจเจพเจฃเจเจพเจฐเฉ เจเจเฉฑเจ เฉ เจเจฐเจฆเจพ เจนเฉ เจ
เจคเฉ เจซเจฟเจฐ SELinux เจ
เจจเฉเจฎเจคเฉ เจจเฉเจคเฉ เจจเจฟเจฏเจฎ เจฌเจฃเจพเจเจเจฆเจพ เจนเฉเฅค เจเจฆเจพเจนเจฐเจฃ เจฒเจ:
- เจเจธ เจเฉฑเจฒ เจฆเจพ เจฎเจจเฉเฉฑเจเฉ-เจชเฉเฉเจนเจจเจฏเฉเจ เจตเจฐเจฃเจจ เจฌเจฃเจพเจเจฃ เจฒเจ เจเจฟ เจชเจนเฉเฉฐเจ เจเจฟเจเจ เจเจจเจเจพเจฐ เจเฉเจคเฉ เจเจ เจนเฉ:
# audit2allow -w -a
- เจเฉฑเจ เจเจฟเจธเจฎ เจฒเจพเจเฉ เจเจฐเจจ เจตเจพเจฒเฉ เจจเจฟเจฏเจฎ เจจเฉเฉฐ เจฆเฉเจเจฃ เจฒเจ เจเฉ เจ
เจธเจตเฉเจเจพเจฐ เจชเจนเฉเฉฐเจ เจฆเฉ เจเจเจพเจเจผเจค เจฆเจฟเฉฐเจฆเจพ เจนเฉ:
# audit2allow -a
- เจเฉฑเจ เจเจธเจเจฎ เจฎเฉเจกเฉเจเจฒ เจฌเจฃเจพเจเจฃ เจฒเจ:
# audit2allow -a -M mypolicy
- เจตเจฟเจเจฒเจช
-M
เจจเจฟเจฐเจงเจพเจฐเจค เจจเจพเจฎ เจจเจพเจฒ เจเฉฑเจ เจเจฟเจธเจฎ เจฆเฉ เจเจจเจซเฉเจฐเจธเจฎเฉเจเจ เจซเจพเจเจฒ (.te) เจฌเจฃเจพเจเจเจฆเจพ เจนเฉ เจ เจคเฉ เจจเจฟเจฏเจฎ เจจเฉเฉฐ เจเฉฑเจ เจชเจพเจฒเจฟเจธเฉ เจชเฉเจเฉเจ (.pp) เจตเจฟเฉฑเจ เจเฉฐเจชเจพเจเจฒ เจเจฐเจฆเจพ เจนเฉ:mypolicy.pp mypolicy.te
- เจเฉฑเจ เจเจธเจเจฎ เจฎเฉเจกเฉเจเจฒ เจจเฉเฉฐ เจธเจฅเจพเจชเจฟเจค เจเจฐเจจ เจฒเจ:
# semodule -i mypolicy.pp
30. เจเจเจพเจเจผเจค เจฎเฉเจก เจตเจฟเฉฑเจ เจเฉฐเจฎ เจเจฐเจจ เจฒเจ เจเฉฑเจ เจตเฉฑเจเจฐเฉ เจชเฉเจฐเจเจฟเจฐเจฟเจ (เจกเฉเจฎเฉเจจ) เจจเฉเฉฐ เจเฉเจเจซเจฟเจเจฐ เจเจฐเจจ เจฒเจ: # semanage permissive -a httpd_t
31. เจเฉเจเจฐ เจคเฉเจธเฉเจ เจนเฉเจฃ เจกเฉเจฎเฉเจจ เจจเฉเฉฐ เจฎเจจเจเจผเฉเจฐเฉ เจจเจนเฉเจ เจฆเฉเจฃเจพ เจเจพเจนเฉเฉฐเจฆเฉ เจนเฉ: # semanage permissive -d httpd_t
32. เจธเจพเจฐเฉ เจเจเจฟเจเจเจพเจฐเฉ เจกเฉเจฎเฉเจจเจพเจ เจจเฉเฉฐ เจ
เจฏเฉเจ เจเจฐเจจ เจฒเจ: # semodule -d permissivedomains
33. MLS SELinux เจจเฉเจคเฉ เจจเฉเฉฐ เจธเจฎเจฐเฉฑเจฅ เจเจฐเจจเจพ: # yum install selinux-policy-mls
ะฒ /etc/selinux/config:
SELINUX=permissive
SELINUXTYPE=mls
เจฏเจเฉเจจเฉ เจฌเจฃเจพเจ เจเจฟ SELinux เจ
เจจเฉเจฎเจคเฉ เจฎเฉเจก เจตเจฟเฉฑเจ เจเฉฑเจฒ เจฐเจฟเจนเจพ เจนเฉ: # setenforce 0
เจเฉฑเจ เจธเจเฉเจฐเจฟเจชเจ เจตเจฐเจคเฉ fixfiles
เจเจน เจฏเจเฉเจจเฉ เจฌเจฃเจพเจเจฃ เจฒเจ เจเจฟ เจซเจพเจเจฒเจพเจ เจจเฉเฉฐ เจ
เจเจฒเฉ เจฐเฉเจฌเฉเจ เจคเฉ เจฐเฉเจฒเฉเจฌเจฒ เจเฉเจคเจพ เจเจฟเจ เจนเฉ:
# fixfiles -F onboot # reboot
34. เจเฉฑเจ เจเจพเจธ MLS เจธเฉเจฎเจพ เจฆเฉ เจจเจพเจฒ เจเฉฑเจ เจเจชเจญเฉเจเจคเจพ เจฌเจฃเจพเจ: # useradd -Z staff_u john
เจเจฎเจพเจเจก เจฆเฉ เจตเจฐเจคเฉเจ เจเจฐเจฆเฉ เจนเฉเจ useradd
, เจจเจตเฉเจ เจเจชเจญเฉเจเจคเจพ เจจเฉเฉฐ เจฎเฉเจเฉเจฆเจพ SELinux เจเจชเจญเฉเจเจคเจพ เจจเจพเจฒ เจฎเฉเจช เจเจฐเฉ (เจเจธ เจธเจฅเจฟเจคเฉ เจตเจฟเฉฑเจ, staff_u
).
35. SELinux เจ
เจคเฉ Linux เจเจชเจญเฉเจเจคเจพเจตเจพเจ เจตเจฟเจเจเจพเจฐ เจฎเฉเจชเจฟเฉฐเจ เจฆเฉเจเจฃ เจฒเจ: # semanage login -l
36. เจเจชเจญเฉเจเจคเจพ เจฒเจ เจเฉฑเจ เจเจพเจธ เจฐเฉเจเจ เจชเจฐเจฟเจญเจพเจธเจผเจฟเจค เจเจฐเฉ: # semanage login --modify --range s2:c100 john
37. เจเจชเจญเฉเจเจคเจพ เจฆเฉ เจนเฉเจฎ เจกเจพเจเจฐเฉเจเจเจฐเฉ เจฒเฉเจฌเจฒ เจจเฉเฉฐ เจ เฉเจ เจเจฐเจจ เจฒเจ (เจเฉ เจฒเฉเฉ เจนเฉเจตเฉ): # chcon -R -l s2:c100 /home/john
38. เจฎเฉเจเฉเจฆเจพ เจธเจผเฉเจฐเฉเจฃเฉเจเจ เจจเฉเฉฐ เจฆเฉเจเจฃ เจฒเจ: # chcat -L
39. เจธเจผเฉเจฐเฉเจฃเฉเจเจ เจจเฉเฉฐ เจฌเจฆเจฒเจฃ เจเจพเจ เจเจชเจฃเฉ เจเฉเจฆ เจฆเฉ เจฌเจฃเจพเจเจฃเจพ เจธเจผเฉเจฐเฉ เจเจฐเจจ เจฒเจ, เจนเฉเจ เจฒเจฟเจเฉ เจ เจจเฉเจธเจพเจฐ เจซเจพเจเจฒ เจจเฉเฉฐ เจธเฉฐเจชเจพเจฆเจฟเจค เจเจฐเฉ:
/etc/selinux/_<
selinuxtype>
_/setrans.conf
40. เจเฉฑเจ เจเจพเจธ เจซเจพเจเจฒ, เจฐเฉเจฒ, เจ เจคเฉ เจเจชเจญเฉเจเจคเจพ เจธเฉฐเจฆเจฐเจญ เจตเจฟเฉฑเจ เจเฉฑเจ เจเจฎเจพเจเจก เจเจพเจ เจธเจเฉเจฐเจฟเจชเจ เจเจฒเจพเจเจฃ เจฒเจ:
# runcon -t initrc_t -r system_r -u user_u yourcommandhere
-t
เจซเจพเจเจฒ เจชเฉเจฐเจธเฉฐเจ-r
เจญเฉเจฎเจฟเจเจพ เจธเฉฐเจฆเจฐเจญ-u
เจเจชเจญเฉเจเจคเจพ เจธเฉฐเจฆเจฐเจญ
41. SELinux เจ เจฏเฉเจ เจจเจพเจฒ เจเฉฑเจฒ เจฐเจนเฉ เจเฉฐเจเฉเจจเจฐ:
- เจชเฉเจกเจฎเฉเจจ:
# podman run --security-opt label=disable โฆ
- เจกเฉเจเจฐ:
# docker run --security-opt label=disable โฆ
42. เจเฉเจเจฐ เจคเฉเจนเจพเจจเฉเฉฐ เจเฉฐเจเฉเจจเจฐ เจจเฉเฉฐ เจธเจฟเจธเจเจฎ เจคเฉฑเจ เจชเฉเจฐเฉ เจชเจนเฉเฉฐเจ เจฆเฉเจฃ เจฆเฉ เจฒเฉเฉ เจนเฉ:
- เจชเฉเจกเจฎเฉเจจ:
# podman run --privileged โฆ
- เจกเฉเจเจฐ:
# docker run --privileged โฆ
เจ เจคเฉ เจนเฉเจฃ เจคเฉเจธเฉเจ เจชเจนเจฟเจฒเจพเจ เจนเฉ เจเจตเจพเจฌ เจเจพเจฃเจฆเฉ เจนเฉ. เจเจธ เจฒเจ เจเจฟเจฐเจชเจพ เจเจฐเจเฉ: เจเจฌเจฐเจพเจ เจจเจพ เจ เจคเฉ SELinux เจจเฉเฉฐ เจธเจฎเจฐเฉฑเจฅ เจฌเจฃเจพเจเฅค
เจฒเจฟเฉฐเจ:
SELinux byเจกเฉเจจ เจตเจพเจฒเจธเจผ SELinux เจชเจพเจฒเจฟเจธเฉ เจฒเจพเจเฉ เจเจฐเจจ เจฒเจ เจคเฉเจนเจพเจกเฉ เจตเจฟเจเจผเฉเจ เจฒ เจเจฟเจธ เจคเจฐเฉเจนเจพเจ เจฆเฉ เจเจพเจเจก เจตเฉ เจกเฉเจจ เจตเจพเจฒเจธเจผ เจฆเฉเจเจฐเจพเจธเจฟเจฐเจซเจผ เจชเฉเจฐเจพเจฃเฉเจเจ เจฒเจ เจธเฉเจฐเฉฑเจเจฟเจ เจตเจฟเฉฑเจ เจธเฉเจงเจพเจฐ เจเฉเจคเจพ เจฒเฉเจจเจเจธ byเจฅเจพเจฎเจธ เจเฉเจฎเจฐเจจ SELinux เจเจฒเจฐเจฟเฉฐเจ เจฌเฉเฉฑเจ byเจฎเจพเจฟเจฐเจฟเจจ เจกเจซเฉ SELinux เจเจชเจญเฉเจเจคเจพ เจ เจคเฉ เจชเฉเจฐเจธเจผเจพเจธเจ เจฆเฉ เจเจพเจเจก - Red Hat Enterprise Linux 7
เจธเจฐเฉเจค: www.habr.com