상식닷컴
로그인
가입하기
2026년 상식닷컴 선정 식당 & 카페 리스트
2025년 2026년 신상 호텔 리스트
최근에 오픈한 호텔을 찾는다면 살펴보세요
일주일 식단표 어플
자동 일주일 식단표 어플
안드로이드
아이폰
주식 & 코인 차트의 신
1000만원으로 2000만원 만들기 프로젝트
궁금한 상식 보기
카라치의 주요 해양 관광지는 어디인가요?
대기오염을 줄이기 위한 시민 참여의 중요성은 무엇인가요?
이산화탄소와 지구 생태계의 관계는 무엇인가요?
라호르에서의 안전은 어떤가요?
라호르의 주요 역사적 사건은 무엇인가요?
사모펀드의 성과 보수란 무엇인가요?
사모펀드의 투자자와의 관계에서 중요한 피드백 채널은 무엇인가요?
헤지펀드의 '샤프 비율'이란 무엇인가요?
헤지펀드의 '투자자 피드백'은 어떻게 반영되나요?
서울대학교의 입학 전형은 어떻게 되나요?
서울대학교의 캠퍼스 환경은 어떤가요?
서울대학교의 학생 자치 기구는 어떻게 구성되어 있나요?
Previous
Next
수정하기 - SELinux에서 특정 디렉토리에 대한 접근을 제한하는 방법은 무엇인가요?
닉네임
비밀번호
제목
내용
[이미지 업로드는 권한이 있는 사람만 가능. 하단 카톡으로 연락]
SELinux(Security-Enhanced Linux)는 리눅스 커널에 통합된 보안 모듈로, 시스템의 보안을 강화하기 위해 프로세스와 파일에 대한 접근 제어를 제공합니다. SELinux는 기본적으로 "<a href='https://sangseek.com/sangseeks/정책 기반/ko'>정책 기반</a>" 접근 제어를 사용하여, 각 프로세스와 파일에 대해 어떤 작업을 수행할 수 있는지를 정의합니다. 특정 디렉토리에 대한 접근을 제한하는 방법은 다음과 같습니다. 1. SELinux 모드 확인 SELinux는 세 가지 모드로 작동합니다: `enforcing`, `permissive`, `disabled`. 먼저 현재 SELinux 모드를 확인해야 합니다. ```bash sestatus ``` 이 명령어를 통해 SELinux의 상태와 모드를 확인할 수 있습니다. 2. 정책 이해하기 SELinux는 파일, 프로세스, 포트 등 다양한 객체에 대해 정책을 적용합니다. 각 객체는 특정한 컨텍스트를 가지며, 이 컨텍스트는 접근 제어를 결정하는 데 사용됩니다. 파일의 컨텍스트를 확인하려면 다음 명령어를 사용합니다. ```bash ls -Z /path/to/directory ``` 이 명령어는 지정한 디렉토리의 SELinux 컨텍스트를 보여줍니다. 3. 특정 디렉토리의 접근 제한하기 특정 디렉토리에 대한 접근을 제한하려면, 해당 디렉토리의 SELinux 컨텍스트를 변경하거나, 새로운 정책을 작성해야 합니다. 3.1. 컨텍스트 변경 디렉토리의 SELinux 컨텍스트를 변경하여 접근을 제한할 수 있습니다. 예를 들어, 특정 디렉토리에 대해 `httpd_sys_content_t` 컨텍스트를 제거하고 싶다면, 다음과 같이 변경할 수 있습니다. ```bash chcon -t my_custom_t /path/to/directory ``` 여기서 `my_custom_t`는 사용자 정의 타입입니다. 이 타입에 대한 정책을 작성하여 접근을 제한할 수 있습니다. 3.2. 정책 작성 SELinux 정책을 작성하여 특정 디렉토리에 대한 접근을 제한할 수 있습니다. 이를 위해서는 다음과 같은 단계를 따릅니다. 1. 정책 파일 생성 : 새로운 정책 파일을 생성합니다. 예를 들어, `my_policy.te`라는 파일을 생성합니다. ```bash nano my_policy.te ``` 2. 정책 내용 작성 : 파일에 다음과 같은 내용을 추가합니다. ```plaintext module my_policy 1.0; require { type my_custom_t; 위에서 설정한 사용자 정의 타입 class dir { read write search }; } 특정 디렉토리에 대한 접근 제한 deny my_custom_t dir { read write search }; ``` 3. 정책 컴파일 : 정책 파일을 컴파일하여 모듈을 생성합니다. ```bash checkmodule -M -m -o my_policy.mod my_policy.te semodule_package -o my_policy.pp -m my_policy.mod ``` 4. 정책 설치 : 생성한 정책 모듈을 시스템에 설치합니다. ```bash semodule -i my_policy.pp ``` 4. 정책 테스트 및 검증 정책을 적용한 후, 해당 디렉토리에 접근을 시도하여 정책이 제대로 작동하는지 확인합니다. SELinux의 로그를 확인하여 접근이 차단되었는지 확인할 수 있습니다. ```bash ausearch -m avc -ts recent ``` 이 명령어는 최근의 AVC(Access Vector Cache) 로그를 보여줍니다. 여기서 접근이 차단된 기록을 확인할 수 있습니다. 5. 문제 해결 정책이 예상대로 작동하지 않거나, 특정 프로세스가 필요한 접근을 차단당하는 경우, `audit2allow` 도구를 사용하여 필요한 접근을 허용하는 정책을 생성할 수 있습니다. ```bash ausearch -m avc -ts recent | audit2allow -M my_new_policy semodule -i my_new_policy.pp ``` 이렇게 하면, 최근의 AVC 로그를 기반으로 새로운 정책을 생성하여 적용할 수 있습니다. 결론 SELinux를 사용하여 특정 디렉토리에 대한 접근을 제한하는 것은 시스템 보안을 강화하는 중요한 방법입니다. 정책을 작성하고 적용하는 과정은 다소 복잡할 수 있지만, 이를 통해 시스템의 보안을 한층 더 강화할 수 있습니다. SELinux의 정책을 이해하고 적절히 활용하는 것이 중요합니다.
이용안내
커뮤니티 이용안내
×
- 게시한 게시글로 발생하는 문제는 게시자에게 책임이 있습니다.
- 게시글이 타인/타업체의 저작권을 침해할 경우 모든 책임은 게시자에게 있습니다. 게시자가 모든 손해를 부담해야 합니다.
- 상식닷컴 운영자는 게시자와 상의하지 않고 게시글을 수정 또는 삭제할 수 있습니다.
- 상식닷컴 운영자는 깨끗한 커뮤니티 공간을 만드는 것이 1순위입니다.
수정하기
취소하기