나는 항상 Centos 6에서 SFTP를 다음과 같이 구성합니다.
https://www.linuxtechi.com/configure-chroot-sftp-in-linux/
이 항목은 댓글에 표시됩니다.
setsebool -P ssh_chroot_full_access on
문서에서https://linux.die.net/man/8/ssh_selinux:
Fenced 도메인이 SSH를 수행하도록 허용하려면 Fenced_can_ssh 부울을 활성화해야 합니다.
그러나 CentOS 7은 다음과 같이 불평합니다.
SELinux 부울 ssh_chroot_full_access가 존재하지 않습니다.
CentOS7에서 이 작업을 수행하는 올바른 방법은 무엇입니까?
답변1
getsebool -a | grep ssh
내 CentOS 7의 명령은 다음과 같습니다.
fenced_can_ssh --> off
selinuxuser_use_ssh_chroot --> off
ssh_chroot_rw_homedirs --> off
ssh_keysign --> off
ssh_sysadm_login --> off
그래서 귀하의 질문 명령에 따르면
setsebool -P fenced_can_ssh on
문제가 해결되어야 합니다.
setroubleshoot-server
그러나 "어려운" 방법으로 다음 패키지를 설치할 수도 있습니다 policycoreutils-python
.
yum -y install setroubleshoot-server policycoreutils-python
그런 다음 일시적으로 SELinux 모드를 다음으로 설정하십시오 permissive
.
setenforce Permissive
그런 다음 이전에 작동하지 않았던 것을 시도해 보십시오. 이제는 괜찮을 것입니다.
이제 다음 파일을 살펴보세요 /var/log/audit/audit.log
. 일반적으로 SELinux에서 발견한 문제를 표시합니다.
grep -i "denied" /var/log/audit/audit.log
로그에서 거부 메시지를 받지 못한 경우 SELinux는 해당 이벤트가 너무 많은 로그를 생성하는 것으로 간주하여 이를 기록하지 않았을 수 있습니다. 이 경우 다음 명령을 사용하여 모든 이벤트의 로깅을 활성화할 수 있습니다.
semodule -DB
semodule -B
하지만 문제 해결이 끝난 후에는 반드시 정상으로 되돌리세요.
문제를 발견하면 이제 audit2allow
도구를 사용하여 요구 사항에 맞는 정책 모듈을 만들 수 있습니다. audit2allow
옵션이 많으니 먼저 읽어보세요액세스 허용: AUDIT2ALLOW습관 audit2allow
.
SELinux를 다시 켜고 (변경된 경우) 감소된 로깅을 활성화하는 것을 잊지 마십시오!
setenforce permissive
semodule -B