selinux를 비활성화하면 어떤 문제가 발생합니까? [닫기]

selinux를 비활성화하면 어떤 문제가 발생합니까? [닫기]

우리는 다른 팀으로부터 중고 서버를 물려받았습니다. 그들 중 일부는 SELinux를 활성화하고 일부는 그렇지 않습니다. SELinux로 인해 비밀번호 없는 SSH, 웹서버 등을 설정하는 데 문제가 있습니다. 해결 방법을 찾았습니다.이 스택 교환 웹사이트즉, 다음을 실행합니다.

restorecon -R -v ~/.ssh

그러나 우리가 수행하는 작업을 수행하기 위해 SELinux를 실행할 필요는 없으므로 권한이 필요한 모든 디렉토리에서 모든 사람이 위의 cmd를 실행하도록 허용하는 것을 기억하는 것보다 SELinux를 끄는 것이 더 쉬울 것입니다.

아무런 영향 없이 SELinux를 끌 수 있습니까, 아니면 서버 이미지를 다시 설치하는 것이 더 낫습니까? 한 가지 주목할 점은 우리 IT 팀이 너무 바쁘기 때문에 꼭 필요한 경우(정말 좋은 비즈니스 사례가 필요함)가 아니면 서버를 다시 이미징하는 것은 실제로 우선 순위가 아니라는 것입니다... 또는 누군가가 스카치 위스키나 위스키 병을 사용하여 뇌물을 주는 경우가 아닙니다. 상사.

업데이트: 여러분의 제안과 조언에 감사드립니다. 이들 서버는 모두 내부 개발 서버로 사용됩니다. 이러한 시스템에는 외부 액세스가 없으므로 보안은 우리에게 큰 관심사가 아닙니다. (제가 아는 한) 현재 우리가 사용하는 서버 중 SELinux가 활성화된 서버는 없습니다. 관리자가 방금 받은 기능 중 일부는 정상이며 클러스터의 모든 기능이 통합되도록 해당 기능을 비활성화하는 것을 고려하고 있습니다.

답변1

SELinux는보안 기능운영 체제. 이는 서버의 특정 부분을 다른 부분으로부터 보호하도록 설계되었습니다.

예를 들어 웹 서버를 실행하고 공격자가 임의의 명령을 실행하도록 허용하는 "취약한" 코드가 있는 경우 SELinux는 웹 서버가 볼 수 없는 파일에 액세스하지 못하도록 방지하여 이를 완화하는 데 도움을 줄 수 있습니다.

이제 당신은할 수 있는SELinux를 비활성화해도 아무런 문제가 없습니다. 서버는 계속해서 정상적으로 작동합니다.

하지만 보안 기능 중 하나를 비활성화하게 됩니다.

답변2

SELinux에 대해서는 다양한 의견이 있습니다. 대부분의 경우 특정 애플리케이션은 SELinux에서 제대로 작동하지 않으므로 이러한 결정은 논쟁의 여지가 있습니다(Oracle이 한 예입니다).
일반적으로 SELinux는 시스템을 손상시키려는 악의적인 사람들에게 또 다른 장애물을 만드는 보호 메커니즘입니다.

이전에 대기업에서 시스템 관리자로 일할 때 저는 주로 SELinux를 비활성화했습니다. 사용자, 개발자, 관리자가 사용하는 모든 시스템에서 모든 SELinux 버그를 추적할 시간이 없습니다.

특정 기능을 비활성화하기 전에 먼저 시스템의 파일을 올바른 상태로 되돌려야 합니다. 내가 찾은 가장 쉬운 방법은 다음 명령을 입력하는 것입니다.

 # /sbin/fixfiles onboot

또는

 # touch /.autorelabel

그런 다음 시스템을 재부팅하고 시스템의 잘못된 SELinux 레이블을 확인하고 재설정하는 데 거의 동일한 시간이 걸리므로 기다립니다. 서버 관리를 시도하기 전에 수정되었을 수 있는 자격이 없는 SELinux 레이블을 수정하고 수정하므로 그 후에는 아마 괜찮을 것입니다.

그러나 이렇게 하지 않으면 SELinux를 적용 모드로 두지 않아도 시스템이 손상되지 않습니다. 이는 추가 보호 계층일 뿐입니다.

답변3

즉, 필수 액세스 제어(MAC) 메커니즘을 비활성화합니다.SELinux이는 좋은 생각이 아니며 악의적인 행위자가 DAC(임의 액세스 제어)로 구현된 이름 기반 액세스 제어를 우회하는 데 성공할 경우 보안상의 불이익을 초래할 수 있습니다.

나였으면 이런 짓을 했을 텐데

semanage fcontext -a -t ssh_home_t ~/.ssh # Adding the policy
restorecon -R -v ~/.ssh # Applying the policy

더 확실해유형 태그다음에서 재귀적으로 할당됨~/.ssh

답변4

일반적으로 SELinux를 비활성화하면 안 됩니다. 무엇이 잘못되었는지 이해하는 데 도움이 되는 도구가 있습니다. 제가 가장 좋아하는 것은 sealert 예제 사용법입니다:

sealert -a /var/log/audit/audit.log

OFC 디버깅 목적으로 언제든지 SELinux를 허용 모드로 설정할 수 있지만 SELinux를 비활성화하거나 허용 모드로 놔두는 것은 Red Hat에 의해 심각한 보안 결함으로 간주됩니다.

관련 정보