เบเบฒเบเปเบเบเบฒเบชเบฒเบเบญเบเบเบปเบเบเบงเบฒเบกเปเบเปเบเบทเบเบเบฐเบเบฝเบกเปเบเบเบชเบฐเปเบเบฒเบฐเบชเปเบฒเบฅเบฑเบเบเบฑเบเบชเบถเบเบชเบฒเบเบญเบเบซเบผเบฑเบเบชเบนเบ
เปเบเบเบตเปเบเบตเปเบเปเบฒเบเบเบฐเปเบเปเบฎเบฑเบเบเปเบฒเบเบญเบเบเปเปเบเปเบฒเบเบฒเบกเบเบตเปเบชเปเบฒเบเบฑเบเบเปเบฝเบงเบเบฑเบเบเบตเบงเบดเบ, เบเบฑเบเบเบฐเบงเบฒเบเปเบฅเบฐเบเบธเบเบชเบดเปเบเบเบธเบเบขเปเบฒเบเปเบ Linux เบเบตเปเบกเบตเบเบงเบฒเบกเบเบญเบเปเบเบเบตเปเบเบฑเบเบเบธเบ.
"เบเบงเบฒเบกเบเบดเบเบเบตเป เบชเบณ เบเบฑเบเบงเปเบฒเบชเบดเปเบเบเปเบฒเบเปเบเปเปเบชเบฐ เปเปเบต เปเบเปเบเบชเบดเปเบเบเบตเปเบเบงเบเปเบเบปเบฒเปเบเบดเปเบเบเบทเบงเปเบฒเปเบเบฑเบเบเบงเบฒเบกเบฎเบนเปเบเบปเปเบงเปเบ ... "
- Douglas Adams, เบเบนเปเบกเบท Hitchhiker เบเบญเบ Galaxy
เบเบงเบฒเบกเบเบญเบเปเบ. เบเบงเบฒเบกเบซเบเปเบฒเปเบเบทเปเบญเบเบทเปเบเบตเปเบกเบเบถเปเบ. เบเบปเบเปเบฒเบ. เบเบฐเปเบเบเบฒเบ. เบชเบตเป Horsemen เบเบญเบ Apocalypse sysadmin. เบเบญเบเปเบซเบเบทเบญเปเบเบเบฒเบเบงเบฝเบเบเบฒเบเบเบฐเบเปเบฒเบงเบฑเบเบเบญเบเบเบงเบเปเบฎเบปเบฒ - เบเบฒเบเบเบดเบเบเบฒเบก, เบเบฒเบเบชเปเบฒเบฎเบญเบเบเปเปเบกเบนเบ, เบเบฒเบเบเบฐเบเบดเบเบฑเบ, เบเบฒเบเบเบฑเปเบเบเปเบฒ, เบเบฒเบเบเบฑเบเบเบธเบ, เปเบฅเบฐเบญเบทเปเบเป - เบเบงเบเปเบฎเบปเบฒเบเบฑเบเบกเบตเบเบงเบฒเบกเบฎเบฑเบเบเบดเบเบเบญเบเบเปเปเบเบงเบฒเบกเบเบญเบเปเบเบเบญเบเบฅเบฐเบเบปเบเบเบญเบเบเบงเบเปเบฎเบปเบฒ. เปเบเบดเบเปเบกเปเบเบงเปเบฒเบฅเบฐเบเบปเบเปเบซเบผเบปเปเบฒเบเบฑเปเบเบเบตเปเบเบนเปเปเบซเปเบเปเบฅเบดเบเบฒเบเบเบฒเบเบชเปเบงเบเบเบตเบชเบฒเบกเปเบเบฐเบเปเบฒเบงเปเบฒเบเบงเบเปเบฎเบปเบฒเบเบดเบเบเบฒเบเปเบเปเบเบฒเบเบเบงเบฒเบกเบเบญเบเปเบเบเบตเปเบเบฑเบเบเบธเบ. เบกเบฑเบเบฎเบนเปเบชเบถเบเบเบทเบเบฑเบเบเบฒเบเปเบฎเบฑเบเบงเบฝเบ
เบเบฐเปเบเบตเบเบซเบเปเบฒเบเบฑเบเบเบฑเบเบซเบฒเบเบตเป, เบเบนเปเบเปเบฅเบดเบซเบฒเบเบฅเบฐเบเบปเบเบเบฒเบเบเบปเบเบเบฑเบเบชเบดเบเปเบเบเบตเปเบเบฐเปเบญเบปเบฒ
เปเบเบเบดเบเปเบเบเบญเบเบเบนเปเบกเบท Hitchhiker เบเบญเบ Galaxy, เบเบตเปเปเบกเปเบ 42 เบเปเบฒเบเบญเบเบชเปเบฒเบฅเบฑเบเบเปเบฒเบเบฒเบกเบเบตเปเบชเปเบฒเบเบฑเบเบเปเบฝเบงเบเบฑเบเบเบฒเบเบเบงเบเบเบธเบกเปเบฅเบฐเบเบฒเบเบเปเบฒเปเบเป.
1. SELinux เปเบกเปเบเบฅเบฐเบเบปเบเบเบฒเบเบเบงเบเบเบธเบกเบเบฒเบเปเบเบปเปเบฒเปเบเบดเบเบเบตเปเบเบทเบเบเบฑเบเบเบฑเบ, เบเบถเปเบเบซเบกเบฒเบเบเบงเบฒเบกเบงเปเบฒเบเบธเบเบเบฐเบเบงเบเบเบฒเบเบกเบตเบเปเบฒเบเบเบทเป. เปเบเปเบฅเบฐเปเบเบฅเป, เปเบเปเบฅเบเบฐเบเปเบฅเบตเปเบฅเบฐเบฅเบฐเบเบปเบเบงเบฑเบเบเบธเบเบฑเบเบกเบตเบเปเบฒเบเบเบทเป. เบเบปเบเบฅเบฐเบเบฝเบเบเบฐเปเบเบเบฒเบเบเบงเบเบเบธเบกเบเบฒเบเปเบเบปเปเบฒเปเบเบดเบเบฅเบฐเบซเบงเปเบฒเบเบเบฐเบเบงเบเบเบฒเบ tagged เปเบฅเบฐเบงเบฑเบเบเบธ. kernel เบเบฑเบเบเบฑเบเปเบเปเบเบปเบเบฅเบฐเบเบฝเบเปเบซเบผเบปเปเบฒเบเบตเป.
2. เบชเบญเบโเปเบเบงโเบเบงเบฒเบกโเบเบดเบโเบเบตเปโเบชเปเบฒโเบเบฑเบโเบเบตเปโเบชเบธเบโเปเบกเปเบโ: เบเปเบฒเบ เบเบณ เบเบฑเบ - เปเบเบทเปเบญเบเปเบฒเบ (เปเบเบฅเป, เบเบฐเบเบงเบเบเบฒเบ, เบเบญเบ, เปเบฅเบฐเบญเบทเปเบเป) เปเบฅเบฐ เบเบฐเปเบเบเบเบฒเบเบเบฑเบเบเบฑเบเปเบเป (เปเบเบดเปเบเปเบเบเบเบฐเบเบงเบเบเบฒเบเบญเบญเบเบเบฒเบเบเบฑเบเปเบเบเบญเบตเบเปเบชเปเบเบฐเปเบเบ).
3. เบฎเบนเบเปเบเบเบเปเบฒเบเบเบทเปเบเบตเปเบเบทเบเบเปเบญเบ user:role:type:level
(เบเบฒเบเปเบฅเบทเบญเบ).
4. เบเบธเบเบเบฐเบชเบปเบเบเบญเบเบเบฒเบเบชเบฐเบซเบเบญเบเบเบงเบฒเบกเบเบญเบเปเบเบซเบผเบฒเบเบฅเบฐเบเบฑเบ (เบเบงเบฒเบกเบเบญเบเปเบเบซเบผเบฒเบเบฅเบฐเบเบฑเบ - MLS) เปเบกเปเบเบเบฒเบเบเบธเปเบกเบเบญเบเบเบฐเบเบงเบเบเบฒเบ (เปเบเปเบกเบ) เปเบเบเบญเบตเบเปเบชเปเบฅเบฐเบเบฑเบเบเบงเบฒเบกเบเบญเบเปเบเบเบญเบเบเปเปเบกเบนเบเบเบตเปเบเบงเบเปเบเบปเบฒเบเบฐเปเบเป. เบเบปเบงเบขเปเบฒเบ, เบเบฐเบเบงเบเบเบฒเบเบฅเบฑเบเบเปเปเบชเบฒเบกเบฒเบเบญเปเบฒเบเบเปเปเบกเบนเบเบฅเบฑเบเบชเบนเบเบชเบธเบเปเบเป.
5. เบฎเบฑเบเบเบฐเบเบฑเบเบเบงเบฒเบกเบเบญเบเปเบเบซเบผเบฒเบเบเบฐเปเบเบ (เบเบงเบฒเบกเบเบญเบเปเบเบซเบผเบฒเบเปเบงเบเปเบนเป - MCS) เบเบปเบเบเปเบญเบเบเบฐเบเบงเบเบเบฒเบเบเบตเปเบเปเบฒเบเบเบทเบเบฑเบเบเบฒเบเบเบฑเบเปเบฅเบฐเบเบฑเบ (เบเบปเบงเบขเปเบฒเบ, เปเบเบทเปเบญเบ virtual, เปเบเบทเปเบญเบเบเบฑเบ OpenShift, SELinux sandbox, containers, เปเบฅเบฐเบญเบทเปเบเป).
6. เบเบปเบงเปเบฅเบทเบญเบ Kernel เบชเปเบฒเบฅเบฑเบเบเบฒเบเบเปเบฝเบเปเบซเบกเบ SELinux เปเบ boot:
autorelabel=1
โ เปเบฎเบฑเบเปเบซเปเบฅเบฐเบเบปเบเปเบฎเบฑเบเบงเบฝเบ relabelingselinux=0
โ kernel เบเปเปเปเบเปเปเบซเบฅเบเปเบเบเบชเปเบฒเบเบเบทเปเบเบเบฒเบ SELinuxenforcing=0
โ เบเบฒเบเปเบซเบผเบเบขเบนเปเปเบเปเปเบเบญเบฐเบเบธเบเบฒเบ
7. เบเปเบฒเบเปเบฒเบเบเปเบญเบเบเบฒเบ relabel เบฅเบฐเบเบปเบเบเบฑเบเบซเบกเบปเบ:
# touch /.autorelabel
#reboot
เบเปเบฒเปเบเบทเปเบญเบเปเบฒเบเบฅเบฐเบเบปเบเบกเบตเบเปเปเบเบดเบเบเบฒเบเบเบณเบเบงเบเบซเบผเบงเบเบซเบผเบฒเบ, เบเปเบฒเบเบญเบฒเบเบเปเบญเบเปเบเบตเบเปเบเบทเปเบญเบเปเบเปเปเบเบญเบฐเบเบธเบเบฒเบเปเบเบทเปเบญเปเบซเปเปเบฒเบเปเบซเบเบชเบณเปเบฅเบฑเบ.
8. เปเบเบทเปเบญเบเบงเบเปเบเบดเปเบเบงเปเบฒ SELinux เบเบทเบเปเบเบตเบเปเบเป: # getenforce
9. เปเบเบทเปเบญเปเบเบตเบเปเบเป / เบเบดเบเบเบฒเบเปเบเปเบเบฒเบ SELinux เบเบปเปเบงเบเบฒเบง: # setenforce [1|0]
10โ. เบเบณเบฅเบฑเบเบเบงเบเบชเบญเบเบชเบฐเบเบฒเบเบฐ SELinux: # sestatus
11โ. เปเบเบฅเปเบเบฒเบเบเบฑเปเบเบเปเบฒ: /etc/selinux/config
12โ. SELinux เปเบฎเบฑเบเบงเบฝเบเปเบเบงเปเบ? เบเบตเปเปเบกเปเบเบเบปเบงเบขเปเบฒเบเปเบเบทเปเบญเบเบซเบกเบฒเบเบชเปเบฒเบฅเบฑเบเปเบเบทเปเบญเบเปเบกเปเบเปเบฒเบเปเบงเบฑเบเปเบเบเป Apache:
- เบเบปเบงโเปเบเบโเบเบฒเบโเบชเบญเบโ:
/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 เบเบตเปเปเบเบปเปเบฒเบเปเบญเบเบเบฒเบเบฎเบนเป เบเปเบฒ Boolean เบเบตเปเบญเบฐเบเบธเบเบฒเบเปเบซเปเบเบฒเบเบชเปเบงเบเบเบญเบเบเบฐเปเบเบเบฒเบ SELinux เบกเบตเบเบฒเบเบเปเบฝเบเปเบเบเปเบเปเบงเบฅเบฒเปเบฅเปเบเปเบเบเบเปเปเบกเบตเบเบงเบฒเบกเบฎเบนเปเบเปเบฝเบงเบเบฑเบเบเบฐเปเบเบเบฒเบ SELinux เบเบทเบเบเบฝเบเบเบฑเบ. เบเบปเบงเบขเปเบฒเบ: เบเปเบฒเบเปเบฒเบเบเปเบญเบเบเบฒเบ httpd เบชเบปเปเบเบญเบตเปเบกเบง, เปเบชเป: # setsebool -P httpd_can_sendmail 1
19โ. SELinux เบเบตเปเปเบเบปเปเบฒเบเปเบญเบเบเบฒเบเบฎเบนเป เบเปเบฒโเบเบตเปโเบกเบตโเปเบซเบโเบเบปเบโเบชเปเบฒโเบฅเบฑเบโเบเบฒเบโเปเบเบตเบ / เบเบดเบโเบเบฒเบโเบเบฑเปเบโเบเปเบฒ SELinuxโ:
- เปเบเบทเปเบญเปเบเบดเปเบเบเปเบฒ boolean เบเบฑเบเปเบปเบ:
# getsebool -a
- เปเบเบทเปเบญเปเบเบดเปเบเบฅเบฒเบเบฅเบฐเบญเบฝเบเบเบญเบเปเบเปเบฅเบฐเบเบปเบ:
# semanage boolean -l
- เปเบเบทเปเบญเบเปเบฒเบเบปเบเบเปเบฒ boolean:
# setsebool [_boolean_] [1|0]
- เบชเปเบฒเบฅเบฑเบเบเบฒเบเบเบดเบเบเบฑเปเบเปเบเบเบเบฒเบงเบญเบ, เปเบเบตเปเบก
-P
เบเบตเปเบขเบนเป เบเบปเบงเบขเปเบฒเบ:# setsebool httpd_enable_ftp_server 1 -P
20โ. เบเบฐเปเบเบเบฒเบ/เปเบญเบฑเบเบเบฅเบดเปเบเบเบฑเบ SELinux เบญเบฒเบเบกเบตเบเปเปเบเบดเบเบเบฒเบ, เบฅเบงเบกเบเบฑเบ:
- เปเบชเบฑเปเบเบเบฒเบเบฅเบฐเบซเบฑเบเบเบตเปเบเบดเบเบเบปเบเบเบฐเบเบด
- เบเบฒเบเบเบฑเปเบเบเปเบฒ
- เบเบฒเบเบเปเบฝเบเปเบชเบฑเปเบเบเบฒเบ stdout
- เปเบเบฅเป descriptor เบฎเบปเปเบง
- เบซเบเปเบงเบเบเบงเบฒเบกเบเปเบฒเบเบฐเบเบดเบเบฑเบเปเบเป
- เบซเปเบญเบเบชเบฐเปเบธเบเบเบตเปเบชเปเบฒเบเบเบถเปเบเบเปเปเบเบต
เปเบเบตเบเบเบปเปเบง (เบขเปเบฒเบชเบปเปเบเบเบปเบเบฅเบฒเบเบเบฒเบเปเบซเป Bugzilla; Bugzilla เบเปเปเบกเบต SLA).
21โ. เบเปเปเบกเบนเบเบเบญเบเบเปเบฒเบเบญเบฒเบเบเบฐเบเบทเบเบเปเบฒเบฅเบฒเบเบเปเบฒเบเปเบฒเบเปเบเปเบเปเบฒเบเบฑเบเปเบเปเบกเบเบเบตเปเบเบฐเบเบฒเบเบฒเบก:
- เปเบซเบผเบเปเบกเบเบนเบ kernel
- เบเบดเบเปเบเปเบเบฒเบเปเปเบ SELinux เบเบตเปเบเบทเบเบเบฑเบเบเบฑเบ
- เบเบฝเบเบซเบฒ
etc_t/shadow_t
- เบเปเบฝเบเบเบปเบเบฅเบฐเบเบฝเบ iptables
22โ. เปเบเบทเปเบญเบเบกเบท SELinux เบชเปเบฒเบฅเบฑเบเบเบฒเบเบเบฑเบเบเบฐเบเบฒเปเบกเบเบนเบเบเบฐเปเบเบเบฒเบ:
# yum -y install setroubleshoot setroubleshoot-server
reboot เบซเบผเบท restart 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 / เบเปเปเบเบงเบฒเบก
- /var/log/audit/audit.log
- /var/lib/setroubleshoot/setroubleshoot_database.xml
27โ. เบเบฒเบเบเบฑเบเบเบถเบ: เบเบฒเบเบเบญเบเบซเบฒเบเปเปเบเบดเบเบเบฒเบ SELinux เปเบเบเบฑเบเบเบถเบเบเบฒเบเบเบงเบเบชเบญเบ:
# ausearch -m AVC,USER_AVC,SELINUX_ERR -ts today
28โ. เปเบเบทเปเบญเบเบญเบเบซเบฒเบเปเปเบเบงเบฒเบก SELinux Access Vector Cache (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
เปเบเบทเปเบญเบฎเบฑเบเบเบฐเบเบฑเบเบงเปเบฒเปเบเบฅเปเบเบฐเบเบทเบ relabeled เปเบ reboot เบเปเปเปเบ:
# 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โ. เปเบเบทเปเบญเบเปเบฒเปเบเบตเบเบเบฒเบเบเปเบฒเบชเบฑเปเบเบซเบผเบท script เปเบเปเบเบฅเปเบชเบฐเปเบเบฒเบฐเปเบเบซเบเบถเปเบ, เบเบฒเบฅเบฐเบเบปเบเบเบฒเบ, เปเบฅเบฐเบเปเบฅเบดเบเบปเบเบเบญเบเบเบนเปเปเบเป:
# runcon -t initrc_t -r system_r -u user_u yourcommandhere
-t
เบเปเบฅเบดเบเบปเบเบเบญเบเปเบเบฅเป-r
เบเปเบฅเบดเบเบปเบเบเบปเบเบเบฒเบ-u
เบชเบฐเบเบฒเบเบเบฒเบเบเบญเบเบเบนเปเปเบเป
41โ. เบเบนเปเบเบญเบเปเบเบเปเบเบตเบเบตเปเปเบฅเปเบเบเปเบงเบ SELinux เบเบดเบเปเบเปเบเบฒเบ:
- Podman:
# podman run --security-opt label=disable โฆ
- เบเปเบฒเปเบฎเบทเบญ:
# docker run --security-opt label=disable โฆ
42โ. เบเปเบฒเบเปเบฒเบเบเปเบญเบเบเบฒเบเปเบซเปเบเปเบญเบเบเบฑเบเบเบธเปเบเบปเปเบฒเปเบเบดเบเบฅเบฐเบเบปเบเบขเปเบฒเบเปเบเบฑเบกเบเบตเป:
- Podman:
# podman run --privileged โฆ
- เบเปเบฒเปเบฎเบทเบญ:
# docker run --privileged โฆ
เปเบฅเบฐเบเบญเบเบเบตเปเปเบเบปเปเบฒเบฎเบนเปเบเบณเบเบญเบเปเบฅเปเบง. เบเบฑเปเบเบเบฑเปเบเบเบฐเบฅเบธเบเบฒ: เบขเปเบฒเบเบปเบเปเบเปเบฅเบฐเปเบเบตเบเปเบเป SELinux.
เปเบญเบเบฐเบชเบฒเบเบญเปเบฒเบเบญเบตเบ:
SELinux byDan Walsh เบเบนเปเบกเบทเบงเบดเบเบตเบเบฒเบเบเบตเปเปเบเบฑเบเบเบฒเบเบเบญเบเบเปเบฒเบเบชเปเบฒเบฅเบฑเบเบเบฒเบเบเบฑเบเบเบฑเบเปเบเปเบเบฐเปเบเบเบฒเบ SELinux เปเบเบฑเปเบเบเบฑเบ เปเบเบ Dan Walshเบเบงเบฒเบกเบเบญเบเปเบเบเบฑเบเบเบธเบ Linux เบชเปเบฒเบฅเบฑเบเบเบฝเบเปเบเปเบกเบฐเบเบธเบ byThomas Cameron เบเบทเปเบกเบเบฑเบเบเบถเบเบชเบต SELinux byMirn Duffy เบเบนเปเบกเบทเบเบนเปเปเบเป เปเบฅเบฐเบเบนเปเปเบเบดเปเบเปเบเบเบฅเบฐเบเบปเบ SELinuxโRed Hat Enterprise Linux 7
เปเบซเบผเปเบเบเปเปเบกเบนเบ: www.habr.com