Keycloak 설치하기: Ubuntu 및 CentOS – 오픈소스 소프트웨어 가이드
Keycloak 은 국제적인 인증, 인가 표준 및 접근 관리에 통합 인증을 제공하는 오픈소스 소프트웨어 제품입니다.
Keycloak의 대표적인 기능은 다음과 같습니다 :
- 다중 프로토콜 지원 (OIDC, SAML, OAuth 2.0 등)
- SSO (Single-Sign-On)
- 사용자 ID 및 액세스
- 관리자 / 계정관리 콘솔 제공
- Client Adapters
해당 포스트에서는 Ubuntu 22.04 및 CentOS 7 환경에서 Keycloak을 설치하는 방법을 가이드합니다.
목차
1. Ubuntu Keycloak 설치 구성
1-1. 환경 업데이트
1-2. Java 설치
1-3. Keycloak 설치 및 구성
1-4. Keycloak 관리자 계정 생성
1-5. Keycloak 웹 인터페이스 액세스
2. CentOS Keycloak 설치 구성
2-1. 환경 업데이트
2-2. Java 설치
2-3. Keycloak 설치 및 구성
2-4. Keycloak 관리자 계정 생성
2-5. Keyclaok 웹 인터페이스 액세스
1. Ubuntu Keycloak 설치 구성

cat /etc/issue
Ubuntu가 최신버전인지 확인합니다.
1-1. 환경 업데이트

apt update
apt update를 사용해 패키지 환경을 업데이트 합니다.
1-2. Java 설치

apt install openjdk-11-jdk
Keycloak은 Java 기반 애플리케이션 이기 때문에 Java를 설치합니다.
원활한 구동을 위해서 JDK 11 버전 이상을 설치해야 합니다.
구버전 Java가 설치되어 있다면 제거 후 설치를 진행합니다.

java -version
Java 버전을 확인합니다.

readlink -f /bin/java
Java가 설치된 물리적 경로를 확인합니다.

vim /etc/profile
profile 파일을 편집기로 오픈 합니다.

export JAVA_HOME=/usr/lib/jvm/java-11-openjdk-amd64/bin/java
Java 환경 변수를 등록합니다.

source /etc/profile
profile을 재시작 합니다.

echo $JAVA_HOME
환경 변수를 확인합니다.
1-3. Keycloak 설치 및 구성

wget https://github.com/keycloak/keycloak/releases/download/21.0.1/keycloak-21.0.1.tar.gz
Keyclaok 최신 버전을 다운로드합니다.

tar -zxf keycloak-21.0.1.tar.gz
다운 받은 파일의 압축을 해제합니다.

cd keycloak-21.0.1/
압축이 해제된 디렉토리로 이동합니다.

ufw allow 8080
Keycloak을 실행하기 전, 8080 포트의 방화벽을 오픈합니다.

sudo bin/kc.sh start-dev
해당 명령어로 keycloak을 실행합니다.

1-4. Keycloak 관리자 계정 생성

localhost:8080 으로 접속하고 아이디와 패스워드를 친 후
Create 버튼을 눌러 관리자 계정을 생성합니다.

1-5. Keyclaok 웹 인터페이스 액세스

생성한 관리자 계정을 통해 웹 인터페이스에 접근합니다.

최종적으로 접속이 되는지 확인합니다.
2. CentOS Keycloak 설치 구성

cat /etc/centos-release
CentOS가 최신버전인지 확인합니다.
2-1. 환경 업데이트

yum update
yum update 명령어를 사용해 패키지 환경을 업데이트 합니다.
2-2. Java 설치

yum install java-11-openjdk
Keycloak은 Java 기반 애플리케이션 이기 때문에 Java를 설치합니다.
원활한 구동을 위해서 JDK 11 버전 이상을 설치해야 합니다.
구버전 Java가 설치되어 있다면 제거 후 설치를 진행합니다.

java -version
Java 버전을 확인합니다.

readlink -f /bin/java
Java가 설치된 물리적 경로를 확인합니다.

vim /etc/profile
profile 파일을 편집기로 오픈 합니다.

export JAVA_HOME=/usr/lib/jvm/java-11-openjdk-11.0.18.0.10-1.el7_9.x86_64/bin/java
Java 환경 변수를 등록합니다.

source /etc/profile
profile을 재시작 합니다.

echo $JAVA_HOME
환경 변수를 확인합니다.
2-3. Keycloak 설치 및 구성

wget https://github.com/keycloak/keycloak/releases/download/21.0.1/keycloak-21.0.1.tar.gz
Keyclaok 최신 버전을 다운로드합니다.

tar -zxf keycloak-21.0.1.tar.gz
다운 받은 파일의 압축을 해제합니다.

firewall-cmd --zone=public --add-port=8080/tcp --permanent
Keycloak을 실행하기 전, 8080 포트의 방화벽을 오픈합니다.

firewall-cmd --reload
방화벽을 재시작합니다.

cd keycloak-21.0.1/
압축이 해제된 디렉토리로 이동합니다.

bin/kc.sh start-dev
해당 명령어로 keycloak을 실행합니다.

2-4. Keycloak 관리자 계정 생성

localhost:8080 으로 접속하고 아이디와 패스워드를 친 후
Create 버튼을 눌러 관리자 계정을 생성합니다.
2-5. Keyclaok 웹 인터페이스 액세스

생성한 관리자 계정을 통해 웹 인터페이스에 접근합니다.


최종적으로 접속이 되는지 확인합니다.
Keycloak에 대한 기술지원 또는 NGINX Plus + Keycloak 연동에 대해 컨설팅이 필요하시다면 아래 폼을 통해 신청해주세요!
댓글을 달려면 로그인해야 합니다.