Atlassian의 Crowd는 사용자 아이덴티티 관리(IAM) 툴입니다. 이 솔루션은 기업이나 조직에서 다양한 애플리케이션 및
서비스에 대한 사용자 계정 및 액세스 권한을 중앙에서 관리할 수 있도록 도와줍니다. Crowd의 주요 기능과 장점은 다음과 같습니다.
- 단일 로그인(Single Sign-On, SSO)
- Crowd는 사용자가 여러 Atlassian 제품(Jira, Confluence, Bitbucket 등) 및 기타 서드파티 애플리케이션에 대해
하나의 아이덴티티로 로그인할 수 있게 해줍니다.
- Crowd는 사용자가 여러 Atlassian 제품(Jira, Confluence, Bitbucket 등) 및 기타 서드파티 애플리케이션에 대해
- 중앙 집중식 사용자 관리
- 모든 사용자 계정과 그룹을 한 곳에서 관리할 수 있습니다. 이를 통해 IT 관리자는 사용자 권한을 효율적으로 관리할 수 있습니다.
- 통합된 권한 및 액세스 제어
- 다양한 애플리케이션과 서비스에 대한 액세스 권한을 중앙에서 관리함으로써 보안을 강화할 수 있습니다.
- 디렉터리 통합
- LDAP, Active Directory와 같은 외부 디렉터리 서비스와 통합하여 사용자 정보를 동기화할 수 있습니다.
- API 지원
- 사용자 관리, 애플리케이션 인증 등을 위한 RESTful API를 제공합니다.
Crowd는 특히 Atlassian 제품을 사용하는 조직에서 유용하며, 사용자 계정 관리 및 인증 프로세스를 간소화하여 IT 관리의
효율성을 높이고 보안을 강화하는 데 도움을 줍니다.
오늘날 기업들은 사용자 관리 및 애플리케이션 인증을 위한 효율적인 솔루션을 찾고 있습니다. Atlassian의 Crowd는
이러한 요구를 충족시켜주는 강력한 도구입니다.
이 글에서는 Atlassian Crowd의 설치 과정을 단계별로 쉽게 설명하겠습니다.
0. 설치 환경
OS: Ubuntu 20.04.6 LTS
JDK: openJDK 11
Crowd: 5.2.3
Database: PostgreSQL 14
1. 필요한 시스템 요구사항 확인
Crowd 설치 전에, 시스템이 다음 요구사항을 충족하는지 확인하세요.
운영 체제: Windows 또는 Linux
메모리: 최소 2GB
디스크 공간: 최소 1GB
2. PostgreSQL Install
1) 공식 PostgreSQL 저장소 추가
sudo sh -c 'echo "deb http://apt.postgresql.org/pub/repos/apt $(lsb_release -cs)-pgdg main" > /etc/apt/sources.list.d/pgdg.list'
먼저, PostgreSQL의 공식 저장소를 시스템에 추가합니다. 이를 위해 터미널을 열고 다음 명령어를 실행합니다.
2) 저장소 키 추가
wget --quiet -O - https://www.postgresql.org/media/keys/ACCC4CF8.asc | sudo apt-key add -
저장소의 공개 키를 추가하여 패키지의 무결성을 검증합니다. 다음 명령어를 사용하여 키를 추가하세요.
3) 패키지 목록 업데이트
sudo apt-get update
새로운 저장소를 추가한 후, 패키지 목록을 업데이트 합니다. 이를 위해 다음 명령어를 실행합니다.
4) PostgreSQL 14 설치
sudo apt-get install postgresql-14 -y
이제 PostgreSQL 14를 설치할 수 있습니다. 다음 명령어로 설치를 진행하세요.
이 단계들을 수행하면 Ubuntu 20.04 시스템에서 PostgreSQL 14를 성공적으로 설치할 수 있습니다.
설치 후에는 PostgreSQL 서비스를 시작하고, 필요한 설정을 진행하면 됩니다.
5) PostgreSQL 외부 접속 허용 설정
vim /etc/postgresql/14/main/postgresql.conf
---
# - Connection Settings -
listen_addresses = '*' # 60 lines 'localhost -> *'
---
Listen_addresses을 주석 해제 후 localhost에서 * 으로 변경합니다.
6) Crowd 인스턴스에서 접근 허용할 정보 입력
vim /etc/postgresql/14/main/pg_hba.conf
---
# Database administrative login by Unix domain socket
#local all postgres peer
local all postgres scram-sha-256 # 추가
# TYPE DATABASE USER ADDRESS METHOD
# "local" is for Unix domain socket connections only
#local all all peer
local all all scram-sha-256 # 추가
# IPv4 local connections:
host all all 127.0.0.1/32 scram-sha-256
# IPv6 local connections:
host all all ::1/128 scram-sha-256
# Allow replication connections from localhost, by a user with the
# replication privilege.
#local replication all peer
local replication all scram-sha-256 # 추가
host replication all 127.0.0.1/32 scram-sha-256
host replication all ::1/128 scram-sha-256
# 추가
# Allow Instance
# Crow Server
host crowddb crowddbadmin 10.0.0.21/24 scram-sha-256
---
7) PostgreSQL DB 구성
sudo -u postgres psql # psql 접속
CREATE USER crowddbadmin PASSWORD 'crowdadmin';
CREATE DATABASE crowddb WITH OWNER crowddbadmin ENCODING 'UTF-8';
GRANT ALL PRIVILEGES ON DATABASE crowddb TO crowddbadmin;
\q # 종료 Exit
3. Crowd 설치
1) OpenJDK 11 설치
apt install openjdk-11-jdk -y
2) JAVA_HOME 환경 변수 설정
OpenJDK 설치 위치를 확인합니다. (기본적으로 /usr/lib/jvm에 존재합니다.)
dpkg -L openjdk-11-jdk
---
/.
/usr
/usr/lib
/usr/lib/jvm
/usr/lib/jvm/java-11-openjdk-amd64
/usr/lib/jvm/java-11-openjdk-amd64/bin
/usr/lib/jvm/java-11-openjdk-amd64/bin/jconsole
/usr/lib/jvm/java-11-openjdk-amd64/include
/usr/lib/jvm/java-11-openjdk-amd64/include/jawt.h
/usr/lib/jvm/java-11-openjdk-amd64/include/linux
/usr/lib/jvm/java-11-openjdk-amd64/include/linux/jawt_md.h
/usr/lib/jvm/java-11-openjdk-amd64/man
/usr/lib/jvm/java-11-openjdk-amd64/man/ja_JP.UTF-8
/usr/lib/jvm/java-11-openjdk-amd64/man/ja_JP.UTF-8/man1
/usr/lib/jvm/java-11-openjdk-amd64/man/ja_JP.UTF-8/man1/jconsole.1.gz
/usr/lib/jvm/java-11-openjdk-amd64/man/man1
/usr/lib/jvm/java-11-openjdk-amd64/man/man1/jconsole.1.gz
/usr/lib/jvm/openjdk-11
/usr/share
/usr/share/doc
/usr/share/doc/openjdk-11-jre-headless
/usr/share/doc/openjdk-11-jre-headless/test-amd64
/usr/share/doc/openjdk-11-jre-headless/test-amd64/check-hotspot-hotspot.log.gz
/usr/share/doc/openjdk-11-jre-headless/test-amd64/check-jaxp-hotspot.log.gz
/usr/share/doc/openjdk-11-jre-headless/test-amd64/check-jdk-hotspot.log.gz
/usr/share/doc/openjdk-11-jre-headless/test-amd64/check-langtools-hotspot.log.gz
/usr/share/doc/openjdk-11-jre-headless/test-amd64/failed_tests-hotspot.tar.gz
/usr/share/doc/openjdk-11-jre-headless/test-amd64/jtreg-summary-hotspot.log
/usr/share/doc/openjdk-11-jre-headless/test-amd64/jtreg_output-hotspot.log.gz
/usr/share/doc/openjdk-11-jre-headless/test-amd64/jtreport-hotspot.tar.gz
/usr/lib/jvm/openjdk-11/src.zip
/usr/share/doc/openjdk-11-jdk
---
echo "export JAVA_HOME='/usr/lib/jvm/java-11-openjdk-amd64'" >> ~/.bashrc
source ~/.bashrc
3) Crowd 5.2.3 설치 파일 Download
https://www.atlassian.com/software/crowd/download-archive
4) Crowd 설치
Crowd 디렉터리에 다운받은 설치 파일 압축 해제
cd /root/crowd/
tar -xvf tar -xvf atlassian-crowd-5.2.3.tar.gz
설치 전 crowd-init.properties 수정
vim /root/crowd/atlassian-crowd-5.2.3/crowd-webapp/WEB-INF/classes/crowd-init.properties
---
crowd.home=/root/crowd # 주석 해제 후 crowd dir 설정
---
(선택) Server Port 및 Connector Port 변경
vim /root/crowd/atlassian-crowd-5.2.3/apache-tomcat/conf/server.xml
5) 설치
스크립트 실행
sh /root/crowd/atlassian-crowd-5.2.3/start_crowd.sh
---
To run Crowd in the foreground, start the server with ./start_crowd.sh -fg
Using CATALINA_BASE: /root/crowd/atlassian-crowd-5.2.3/apache-tomcat
Using CATALINA_HOME: /root/crowd/atlassian-crowd-5.2.3/apache-tomcat
Using CATALINA_TMPDIR: /root/crowd/atlassian-crowd-5.2.3/apache-tomcat/temp
Using JRE_HOME: /usr/lib/jvm/java-11-openjdk-amd64
Using CLASSPATH: /root/crowd/atlassian-crowd-5.2.3/apache-tomcat/bin/bootstrap.jar:/root/crowd/atlassian-crowd-5.2.3/apache-tomcat/bin/tomcat-juli.jar
Using CATALINA_OPTS:
Using CATALINA_PID: /root/crowd/atlassian-crowd-5.2.3/apache-tomcat/work/catalina.pid
Tomcat started.
---
bash /root/crowd/atlassian-crowd-5.2.3/start_crowd.sh
---
To run Crowd in the foreground, start the server with start_crowd.sh -fg
Using CATALINA_BASE: /root/crowd/atlassian-crowd-5.2.3/apache-tomcat
Using CATALINA_HOME: /root/crowd/atlassian-crowd-5.2.3/apache-tomcat
Using CATALINA_TMPDIR: /root/crowd/atlassian-crowd-5.2.3/apache-tomcat/temp
Using JRE_HOME: /usr/lib/jvm/java-11-openjdk-amd64
Using CLASSPATH: /root/crowd/atlassian-crowd-5.2.3/apache-tomcat/bin/bootstrap.jar:/root/crowd/atlassian-crowd-5.2.3/apache-tomcat/bin/tomcat-juli.jar
Using CATALINA_OPTS:
Using CATALINA_PID: /root/crowd/atlassian-crowd-5.2.3/apache-tomcat/work/catalina.pid
Existing PID file found during start.
Tomcat appears to still be running with PID 90852. Start aborted.
If the following process is not a Tomcat process, remove the PID file and try again:
UID PID PPID C STIME TTY TIME CMD
root 90852 1 99 06:25 pts/1 00:00:34 /usr/lib/jvm/java-11-openjdk-amd64/bin/java -Djava.util.logging.config.file=/root/crowd/atlassian-crowd-5.2.3/apache-tomcat/conf/logging.properties -Djava.util.logging.manager=org.apache.juli.ClassLoader
---
6) Crowd 접속
http://<Server IP>:8095
Tomcat이 시작되었다는 메시지가 표시되었음에도 불구하고 해당 URL에 접근할 수 없는 상황이 발생했을 경우,
문제의 원인을 진단하기 위해 Tomcat의 로그 파일을 검토하는 것이 중요합니다.
로그 파일은 다음 경로에 위치해 있습니다. `/Atlassian/atlassian-crowd-5.1.1/apache-tomcat/logs/`.
해당 디렉토리 내의 로그 파일들은 Tomcat 서버의 작동 상태와 발생한 문제에 대한 상세한 정보를 제공합니다.
로그 파일을 통해 시스템 관리자는 서버 구성, 네트워크 설정, 보안 정책 등과 관련된 문제를 식별하고 해결할 수
있습니다.
Crowd 접속 후 Set up Crowd 클릭
License key 입력 후 Continue
New installation 선택 후 Continue
Database configuration은 JDBC connection 선택 후 기존 정보 기입 후 Continue
- 1: PostgreSQL Server IP
- 2: Database Name
- 3: Database user
- 4: Database Password
(선택) Options을 설정합니다.
- 이 가이드에서는 Deployment title만 변경
(선택) Internal directory를 설정합니다.
- 이 가이드에서는 기본값으로 진행
Default administrator 설정 후 Continue
Intergrated applications 설정 후 Continue
Crowd OpenID 서버를 활용하면 OpenID를 지원하는 웹사이트에서 표준 Crowd 로그인 메커니즘을 이용하여
사용자 인증을 진행할 수 있습니다. 이는 단일 로그인(Single-Sign-On, SSO) 서비스의 일환으로,
사용자들이 Confluence, Jira, Bitbucket 등과 같은 다양한 Atlassian 제품에 대하여 Crowd를 통해 통합된
인증 절차를 거칠 수 있게 해줍니다. 이러한 접근 방식은 사용자 경험을 향상시키고, 보안을 강화하며,
인증 관리의 효율성을 높이는데 기여합니다. Crowd의 OpenID 서버 기능은 조직 내에서 다양한 애플리케이션의
인증 프로세스를 단순화하고 중앙화하는 데 중요한 역할을 합니다.
설치완료
4. 마무리
Atlassian Crowd의 설치 과정은 간단하며, 본 가이드에 따라 진행하면 설치 과정을 원활하게 완료할 수 있습니다.
Crowd를 활용하면 조직의 사용자 관리 및 애플리케이션 인증 절차를 더욱 효과적으로 수행할 수 있습니다.
이는 IT 인프라의 통합 관리 및 보안 강화에 크게 기여하며, 관리자 및 최종 사용자 모두에게 편리함을 제공합니다.
Atlassian Crowd의 도입을 통해 조직의 인증 관리 프로세스를 최적화하고,
보안 및 효율성을 강화하는 데 중요한 발판을 마련하시기 바랍니다.
'Atlassian' 카테고리의 다른 글
Atlassian Jira 설치 가이드: 단계별 쉬운 설치 방법 (0) | 2024.01.23 |
---|---|
Atlassian Confluence 설치: 초보자를 위한 완벽한 가이드 (0) | 2024.01.22 |