SELinux를 끄기 전에 확인할 것

서비스가 안 돌아가면 일단 SELinux부터 끄는 일이 많습니다. 대부분 바로 해결되기 때문입니다. 다만 그 뒤에 다시 켜지는 경우는 거의 없습니다.

문제

끔 채로 몇 년을 쓰면 그 서버는 보호 계층 하나를 잃은 상태로 남습니다.

  • 취약점이 뚫렸을 때 피해 범위를 제한할 수단이 없음
  • 보안 점검과 감사에서 반복해서 지적됨
  • 나중에 켜려면 라벨을 전부 다시 입혀야 해서 더 어려움
  • 왜 꺼둔지 기록이 없어 다음 담당자가 판단하지 못함

원인

대부분은 정책 자체가 아니라 파일 라벨이나 포트 유형이 맞지 않아 막힌 것입니다.

  • 기본 경로가 아닌 곳에 데이터를 둔 경우
  • 표준 포트를 바꿈 후 유형을 등록하지 않은 경우
  • 거부 로그를 보지 않고 바로 끕

해결책

끄기 전에 거부 로그를 한 번만 보면 대개 몇 줄로 끝납니다.

  • 먼저 허용 모드로 바꿔 무엇이 막혀 있는지 기록만 남김
  • 거부 로그를 확인해 대상 파일과 포트를 특정
  • 데이터 경로의 라벨을 기본 경로와 같게 맞춤
  • 바꿼 포트는 서비스 유형으로 등록
  • 그래도 꺼야 한다면 이유와 날짜를 문서에 남김
  • 대신 방화벽과 접근 제한을 한 단계 강화

현장에서 확인할 것

  • 현재 모드가 강제인지 허용인지 해제인지
  • 최근 거부 로그에 남은 항목
  • 기본 경로 밖에 둔 데이터가 있는지
  • 끔 이유가 문서로 남아 있는지

끄지 말자는 이야기가 아니라, 끄는 것도 결정이니 근거를 남기자는 이야기입니다.

Scroll to Top