Crowd

Crowd

 

Crowd는 5.3.0 버전을 이용

install

Crowd downlad link

JVM 설치 (java-openjdk-11)

# lavence 계정에서 진행 # dnf update & install sudo dnf update -y sudo dnf install java-11-openjdk java-11-openjdk-devel -y # environment setting vim ~/.bashrc export JAVA_HOME=/usr/lib/jvm/java-11-openjdk-11.0.25.0.9-3.el9.x86_64/ export PATH=$JAVA_HOME/bin:$PATH

 

tar.gz 파일 압축해제 및 설치

# 파일은 linux 서버로 옮겼다고 가정 # 압축 해제 # (압축 전 tar이 없다는 에러 메시지가 나와서 tar 설치) dnf install wget tar.x86_64 -y tar -xvzf atlassian-crowd-5.3.0.tar.gz # 디렉토리 이름 변경 mv atlassian-crowd-5.3.0 crowd # 서비스 시작 cd crowd ./start_crowd.sh -bg To run Crowd in the foreground, start the server with ./start_crowd.sh -fg Using CATALINA_BASE: /home/lavence/crowd/apache-tomcat Using CATALINA_HOME: /home/lavence/crowd/apache-tomcat Using CATALINA_TMPDIR: /home/lavence/crowd/apache-tomcat/temp Using JRE_HOME: /usr/lib/jvm/java-11-openjdk-11.0.25.0.9-3.el9.x86_64/ Using CLASSPATH: /home/lavence/crowd/apache-tomcat/bin/bootstrap.jar:/home/lavence/crowd/apache-tomcat/bin/tomcat-juli.jar Using CATALINA_OPTS: Using CATALINA_PID: /home/lavence/crowd/apache-tomcat/work/catalina.pid Tomcat started.

 

방화벽 해제 및 추가

(테스트를 위해서 일단 방화벽 해제함)

# firewalld stop systemctl stop firewalld ########### # 포트 추가 # 각 포트 허용 (crowd와 jira, confluence 모두 포함) sudo firewall-cmd --permanent --add-port=8095/tcp # Crowd sudo firewall-cmd --permanent --add-port=8080/tcp # Jira sudo firewall-cmd --permanent --add-port=8090/tcp # Confluence # 변경 사항 적용 sudo firewall-cmd --reload # 확인 sudo firewall-cmd --list-ports

 

Home Directory 설정

web 설치 마법사 진행 중 home directory가 설정되어 있지 않다는 에러 메시지가 발생

# home directory 설정 mkdir -p /var/crowd chown -R lavence:lavence /var/crowd # setenv.sh의 위치는 ./apache-tomcat/bin/setenv.sh vim ./apache-tomcat/bin/setenv.sh export CATALINA_OPTS="$CATALINA_OPTS -Dcrowd.home=/var/crowd-home"

 

SSO 설정

개념에 대한 짤막한 설명

  • SSO를 설정하면 브라우저 쿠키가 공통 도메인에 있는 경우 같은 서비스처럼 로그인 인증이 가능. 예를 들어, lavence-test.com/confluence와 lavence-test/jira으로 confluence와 jira를 설정했으면 lavence-test.com이라는 같은 도메인으로 묶여(Reverse Proxy(nginx) 참조) 한 곳에서만 로그인 하면 다른 서비스에 로그인 없이 접속 가능

  • 위와 같은 로그인 기능을 crowd에서 제공. → 개념은 이해했으나 서비스를 사용만 해봐서 연동을 하고 그룹 및 유저를 직접 추가할 때 이론과 실전이 매치가 안 되었음. 비유를 하자면, 자동차의 시동은 켤 줄 아는데, 자동차가 시동을 켜기까지 어떤 방식으로 진행되고 어떤 과정인지 몰랐던 셈 거대한 삽질

 

Application 연동

  • Crowd는 중앙관제이고, 각 서비스를 선언하고 서비스에서 crowd의 application을 연동시켜야 sso 인증을 사용 가능

Crowd

crowd 상단의 application에서 Add application에서 연동하고자 하는 서비스 등록

image-20250407-060003.png

application type을 선택하고 원하는 서비스 등록

image-20250407-060322.png

작성 완료 후 다음

image-20250407-060519.png

그 다음 URL과 Remote IP를 넣고 다음 클릭

image-20250407-060637.png

 

디렉토리 추가. 디렉토리는 유저와 그룹이 모두 포함된 개념. 스크린샷에 보이는 admin@dmove.kr Crowd server가 기본값으로 나머지는 따로 추가한 디렉토리.

image-20250407-060759.png

 

필요한 인증 권한을 주고

image-20250407-060952.png

완료를 눌러서 application 추가 완료

image-20250407-061050.png

jira/confluence-crowd 설정

Server 설정

경로(설치한 경로에서)

  • confluence: ./confluence/confluence/WEB-INF/classes

  • jira: ./jira/atlassian-jira/WEB-INF/classes

crowd.properties

설정이 되어 있어야 Web에서 user directory에 crowd 등록 가능

(* https로 사용하는 경우 바꿔주기)

application.name jira # 예시는 jira. crowd에서 설정한 application 이름 application.password dmove1122! # 마찬가지로 crowd에서 설정한 비밀번호 application.login.url http://lavence-test.com/crowd/console/ crowd.server.url http://lavence-test.com/crowd/services/ crowd.base.url http://lavence-test.com/crowd/ session.isauthenticated session.isauthenticated session.tokenkey session.tokenkey session.validationinterval 2 session.lastvalidation session.lastvalidation cookie.tokenkey crowd.token_key
seraph-config.xml

sso 인증으로 변경

# 기본값을 주석으로 처리 <!-- <authenticator class="com.atlassian.confluence.user.ConfluenceAuthenticator"/> --> # SSO 인증을 주석 풀기 <authenticator class="com.atlassian.confluence.user.ConfluenceCrowdSSOAuthenticator"/>

Web 설정

  • 설정(톱니바퀴) → User management → (왼쪽 바에서) User directory

image-20250407-061358.png

추가를 위해 Add Directory → Atlassian Crowd

image-20250407-061518.png

application name과 password는 crowd에서 설정한 것과 동일하게 설정해야 함 (스크린샷은 기존에 만든 것을 이용해 위에서 작성한 것과 이름이 다름) 작성 후 아래의 Test setting을 눌러서 확인

image-20250407-062316.png
image-20250407-062611.png

Test 완료 시 하단과 같이 success 문구가 뜸

image-20250407-062714.png

Save and Test으로 저장

image-20250407-062757.png

 

 

 

Related content