LFCS — Linux Foundation System Administrator
Quiz: SELinux and firewalld by Hand
한국어 원문으로 표시합니다.
chcon -t httpd_sys_content_t /srv/web/index.html 로 컨텍스트를 바꿨다. 나중에 restorecon -R /srv/web 을 돌리면?
- chcon 이 붙인 타입이 그대로 유지된다. restorecon 은 빠진 컨텍스트만 채운다
- 정책의 규칙 목록에 /srv/web 규칙이 없으므로 기본 타입으로 되돌아간다
- restorecon 이 chcon 의 변경을 감지해 규칙 목록에 자동으로 등록한다
- httpd_sys_content_t 는 시스템 타입이라 restorecon 이 건드리지 않는다
firewall-cmd --add-service=http 만 실행한 뒤 firewall-cmd --reload 를 했다. 결과는?
- runtime 에 넣은 http 가 permanent 로 승격되어 양쪽에 남는다
- reload 는 runtime 을 건드리지 않으므로 http 는 그대로 열려 있다
- reload 가 permanent 를 다시 읽으므로 runtime 에만 있던 http 는 사라진다
- reload 가 실패한다. runtime 변경이 있으면 먼저 --runtime-to-permanent 를 해야 한다
/etc/sudoers.d/ops 에 문법 오류가 있는 채로 저장했다. 다른 사용자가 sudo 를 쓰면?
- 그 조각만 무시되고 나머지 규칙은 정상 동작한다
- root 가 다음 로그인할 때 자동으로 고쳐진다
- sudo 가 syntax error 를 내며 전부 거부할 수 있다. 그래서 visudo -cf 로 먼저 검사한다
- 파일 권한이 0440 이면 문법 오류가 있어도 안전하게 무시된다
/etc/security/limits.d/90-lfcs.conf 에 deploy hard nofile 4096 을 적었는데 지금 열려 있는 deploy 의 셸에서 ulimit -Hn 은 그대로다. 이유는?
- limits 파일은 재부팅해야만 읽힌다
- hard 한도는 root 만 바꿀 수 있어 deploy 셸에서는 보이지 않는다
- nofile 은 limits.conf 가 아니라 sysctl fs.file-max 로만 정한다
- pam_limits 는 세션을 열 때 적용하므로 새로 로그인한 셸에서 봐야 한다
/srv/web/upload 를 750 으로 만들고 setfacl -m u:deploy:rwx 를 줬더니 ls -ld 가 drwxrwx---+ 로 보인다. 해석은?
- setfacl 이 그룹 권한을 rwx 로 바꿔 버렸으므로 chmod 750 을 다시 해야 한다
-
- 는 setuid 표시라 보안 문제이므로 setfacl -b 로 지워야 한다
- ACL 항목이 그룹에도 복제된 것이므로 setfacl -x g:ops 로 정리한다
- ACL 이 붙으면 그룹 자리는 mask 를 보여 준다. 정상이며 getfacl 의 group:: 줄이 실제 그룹 권한이다
RHEL 9 에서 /etc/ssh/sshd_config 본문 끝에 MaxAuthTries 3 을 적었는데 sshd -T 는 다른 값을 보여 준다. 가장 그럴듯한 원인은?
- sshd 는 같은 키워드의 첫 값을 쓰는데, 맨 위의 Include 로 읽힌 드롭인이 먼저 그 값을 정했다
- sshd -T 는 기본값만 보여 주고 설정 파일은 반영하지 않는다
- MaxAuthTries 는 Match 블록 안에서만 유효한 키워드다
- 본문의 값은 systemctl restart sshd 없이도 즉시 반영되므로 다른 원인이다