Ranger Plugin으로 접근제어 설정
- 인쇄
- PDF
Ranger Plugin으로 접근제어 설정
- 인쇄
- PDF
Article Summary
Share feedback
Thanks for sharing your feedback!
Apache Ranger로 빅데이터 에코시스템에 대한 보안 규칙을 구현할 수 있습니다. Ranger 프로젝트는 모든 Hadoop 애플리케이션에 통일된 방식으로 보안 가이드라인을 정의하고, 적용될 수 있게 합니다.
Ranger 플러그인 활성화
- Ambari UI에 접속한 후 Services > Ranger > [CONFIGS] > RANGER PLUGIN을 차례대로 클릭하여 설정을 변경해 주십시오.
- 클러스터에 설치된 서비스가 어떤 것이 있냐에 따라 활성화할 수 있는 플러그인이 정해져 있습니다. (기본값: 플러그인 비활성화)
- Ranger로 Security Policy를 관리하려면 플러그인을
ON
상태로 변경해 주십시오. 이 가이드에서는 HDFS, HIVE, YARN 플러그인을 모두 활성화하고 구성값을 저장합니다. - HDFS 플러그인 활성화 예시
- Advanced hdfs-site 항목의 dfs.permissions.enabled의 값을 true로 설정해 주십시오. 이 설정을 반영해야 Ranger Audit에 이력이 남습니다.
- Ranger 서비스의 [RANGER PLUGIN] 탭에서 Plugin을 활성화해야 Ranger를 이용한 권한 관리가 가능합니다. HDFS Ranger Plugin을 활성화해 주십시오.
- HDFS, HIVE, YARN, PRESTO 서비스는 재시작이 필요합니다. 오른쪽 상단의 [ACTIONS] > Restart All을 클릭한 후, 팝업창의 [CONFIRM RESTART ALL] 을 클릭하여 바뀐 설정을 적용해 주십시오.
참고
왼쪽 사이드 바에서 [...] > Restart All Required를 클릭하여 재시작이 필요한 컴포넌트를 한번에 재시작 할 수도 있습니다.
- Dependent Configurations 프롬프트가 표시되면 [OK] 버튼을 클릭해 주십시오.
Ranger Admin UI
- SSL VPN에 접속해 주십시오.
- SSL VPN에 대한 내용은 SSH로 클러스터 노드 접속 가이드를 참고해 주십시오.
- Ranger Admin UI에 접속할 Cloud Hadoop 클러스터를 선택한 후 [Application 별 보기] > Ranger Web UI를 클릭해 주십시오.
- Ranger UI 접속에 대한 자세한 내용은 Application 별 보기를 참조해 주십시오.
또는 콘솔의 클러스터 상세정보에서 도메인 주소를 확인해 주십시오. 아래과 같이 URL로 Ranger Admin UI에 바로 접속할 수 있습니다.
https://{도메인 주소}:6182/
참고
- Cloud Hadoop 1.3 버전의 Ranger UI 계정(ID/Password)은 admin/admin으로 설정됩니다.
- Cloud Hadoop 1.4 버전 이상의 Ranger UI의 계정(ID/Password)은 admin/{사용자가 입력한 패스워드}로 설정됩니다.
Ranger Admin UI에 접속하면 어떤 서비스에 Policy가 적용 중인지 확인해 주십시오.
- 사전 작업으로 플러그인을 활성화한 HDFS, HIVE, YARN Policy가 존재하는 것을 확인할 수 있습니다.
- 사전 작업으로 플러그인을 활성화한 HDFS, HIVE, YARN Policy가 존재하는 것을 확인할 수 있습니다.
HDFS의 플러그인을 클릭해 List of Policies 화면에서 기본으로 생성된 Policy의 규칙을 확인해 주십시오.
- Action > [edit] 를 클릭해 주십시오. Select User는 모든 path에 대하여 Read, Write, Execute 권한을 가지고 있음을 확인할 수 있습니다.
Ranger Policy 생성하기
- Ranger Admin UI 첫 화면에서 HDFS 플러그인에 기본으로 노출되는 [{클러스터명}_hadoop] Policy를 클릭해 주십시오.
- 다음과 같이 [Add New Policy] 버튼을 선택 후 정책을 넣어주십시오.
Resource Path에는 다른 경로를 입력해도 됩니다. 여기서는 관리자 계정의 HDFS 홈 디렉터리를 사용했습니다. 특정 디렉터리 아래 모든 파일 또는 하위 디렉터리에 권한이 적용되도록 하려면 [Recursive] 버튼 상태를 활성화로 설정하십시오.
SSH 접속 계정인
sshuser
가 이 경로에 접근할 수 있도록 Select User에sshuser
를 선택해 주십시오.여기서는 Read, Write, Execute 모든 권한을 부여했습니다.
참고
Cloud Hadoop은 설치 시 설정한 관리자 계정(e.g. df-test17
)에 대해 HDFS 홈 디렉터리를 기본적으로 생성해 줍니다.
ls
명령어로 생성한 규칙이 적용되었는지 확인해 주십시오.- 클러스터의 어떤 노드에 접속해도 상관없습니다.
- 노드에 SSH로 접속하여 아래와 같이
mkdir
명령어로sshuser
계정의/user/{클러스터 계정명}
디렉터리에 새로운 디렉터리를 생성해 주십시오. ls
명령어로 디렉터리가 제대로 생성되었는지 테스트해 보십시오.
$ hadoop fs -mkdir /user/{클러스터 계정명}/tmp
$ hadoop fs -ls /user/{클러스터 계정명}
- Ranger Audit UI 를 통해서 접근 시도한 로그 확인이 가능합니다.
참고
- Cloud Hadoop 1.8 버전은 PRESTO 플러그인을 추가 제공합니다.
- Cloud Hadoop 1.8 버전은 Presto Ranger Plugin을 추가 제공합니다.
이 문서가 도움이 되었습니까?