서론
Jenkins는 기본 설치만으로도 강력하지만, 플러그인을 통해 다양한 기능을 추가하고 확장할 수 있다. 또한, 보안 관리 역시 CI/CD 환경에서 중요한 요소 중 하나이다. 이 글에서는 젠킨스 플러그인 관리와 보안 설정을 중심으로 살펴보자.
플러그인이란
Jenkins 플러그인은 Jenkins의 기능을 확장하고 특정 요구를 충족하기 위해 제공되는 추가 모듈이다. 플러그인은 Jenkins의 유연성과 확장성을 높이며, 다양한 개발 환경과 통합을 지원한다. 플러그인을 설치하려면 다음 단계과 과정을 거친다.
- 관리 Jenkins (Manage Jenkins) 클릭
- 플러그인 관리 (Manage Plugins) 선택
- 사용 가능한 플러그인 (Available Plugins) 탭에서 필요한 플러그인을 검색
- 설치할 플러그인을 선택한 후 지금 설치(Install without restart) 또는 재시작 후 설치(Install after restart) 클릭
플러그인 매니저 이해
Jenkins의 플러그인 매니저는 플러그인 설치, 업데이트, 제거를 관리하는 인터페이스이다. 주요 탭의 기능은 다음과 같다.
- Updates: 설치된 플러그인의 최신 업데이트 정보를 제공한다.
- Available: 다운로드 및 설치할 수 있는 플러그인이 표시된다.
- Installed: 현재 설치된 플러그인을 확인하고, 업데이트 가능 여부를 확인한다.
- Advanced: 플러그인을 URL이나 파일 업로드 방식으로 수동 설치할 수 있다.
많이 사용되는 플러그인
- Pipeline Plugin: 파이프라인을 코드로 정의하고 실행할 수 있게 한다.
- Git Plugin: Git과의 통합을 지원한다.
- Blue Ocean: 직관적인 사용자 인터페이스(UI)를 제공한다.
- JUnit Plugin: 테스트 결과를 시각적으로 보여준다.
- Docker Plugin: Docker 컨테이너와 통합하여 빌드 및 배포 환경을 관리한다.
- Maven Integration: 메이븐 빌드 도구와 젠킨스를 통합하는 데 사용된다.
- Email Extension: 젠킨스에서 빌드 진행 상태를 관리자에게 알리는 이메일 알림을 구성할 수 있다.
전역 보안 관리
보안은 Jenkins 서버를 안전하게 유지하기 위해 필수적이다. LDAP과 같은 디렉터리 서비스를 활용하면 사용자를 효율적으로 관리할 수 있다.
전역 보안 관리 구성
Jenkins의 전역 보안을 설정하면 시스템에 대한 접근을 보다 체계적으로 관리할 수 있다. 기본적인 전역 보안 구성 방법은 다음과 같다.
- Manage Jenkins → Configure Global Security 클릭
- Enable Security 체크박스를 선택
- Security Realm 설정
- Jenkins 자체 데이터베이스 사용 시 Jenkins’ own user database 선택
- LDAP 등 외부 인증 서비스를 사용할 경우 해당 옵션 선택
- Authorization 설정
- Matrix-based security: 사용자와 그룹별로 세부적인 권한을 설정
- Project-based Matrix Authorization Strategy: 프로젝트별로 권한을 세분화
- 설정 후 Save를 클릭하여 저장
LDAP 구성
LDAP(Lightweight Directory Access Protocol)는 네트워크 상에서 사용자 정보를 중앙 관리하는 프로토콜이다. Jenkins와 통합하면 조직 내 사용자 관리를 쉽게 할 수 있다. LDAP를 설정하려면 다음과 과정을 따라하면 된다.
- Manage Jenkins → Configure Global Security 클릭
- Security Realm에서 LDAP 선택
- LDAP 서버 정보 입력:
- Server: LDAP 서버 URL 입력 (예: ldap://ldap.example.com)
- Root DN: LDAP의 기본 DN(Base Distinguished Name) 설정
- Manager DN / Password: 관리자 계정 정보 입력
- 사용자 그룹 매핑을 설정하고 Save를 클릭하여 저장
LDAP 필요성
- 중앙 관리: 조직의 모든 사용자 정보를 중앙에서 관리하여 일관성을 유지한다.
- 보안 강화: LDAP 인증을 통해 권한 있는 사용자만 Jenkins에 접근하도록 제한할 수 있다.
- 스케일링: 대규모 조직에서 사용자 계정과 권한을 효율적으로 관리할 수 있다.
- 감사 추적: LDAP을 통해 사용자 활동을 중앙에서 기록하고 추적할 수 있어 보안 사고에 신속히 대응할 수 있다.
- 표준화된 인증: LDAP은 다양한 애플리케이션과 호환되는 표준화된 인증 메커니즘을 제공한다.
반응형
'VCS > CICD' 카테고리의 다른 글
젠킨스 작업의 이해 (0) | 2024.12.29 |
---|---|
젠킨스 자격 증명 관리와 사용자 관리 (0) | 2024.12.29 |
젠킨스 구성과 전역 도구 구성 (0) | 2024.12.28 |
JenKins로 CI/CD 시작하기 (1) | 2024.12.27 |
CI/CD의 필요성 (1) | 2024.12.21 |
댓글