Hướng Dẫn Cài Đặt và Cấu Hình Keycloak trên Ubuntu 20.04
Giới Thiệu
Keycloak là một giải pháp quản lý danh tính và truy cập mã nguồn mở do cộng đồng RedHat phát triển. Keycloak cung cấp các tính năng như xác thực đa yếu tố (MFA), đăng nhập một lần (SSO), quản lý người dùng tập trung và hỗ trợ các nhà cung cấp danh tính như LDAP và Active Directory. Trong bài viết này, chúng ta sẽ hướng dẫn cách cài đặt và cấu hình Keycloak trên hệ điều hành Ubuntu 20.04.
Bước 1: Cập Nhật Hệ Thống
Trước tiên, hãy cập nhật hệ thống lên phiên bản mới nhất bằng các lệnh sau:
apt-get update -y
apt-get upgrade -y
Bước 2: Cài Đặt Java
Keycloak là ứng dụng dựa trên Java, vì vậy bạn cần cài đặt JDK trước khi cài đặt Keycloak.
apt-get install default-jdk -y
Kiểm tra phiên bản Java đã cài đặt:
java --version
Bước 3: Tải Xuống Keycloak
Tải xuống phiên bản mới nhất của Keycloak từ GitHub bằng lệnh sau:
wget https://github.com/keycloak/keycloak/releases/download/15.0.2/keycloak-15.0.2.tar.gz
Giải nén tệp tải xuống:
tar -xvzf keycloak-15.0.2.tar.gz
Di chuyển thư mục Keycloak vào /opt:
mv keycloak-15.0.2 /opt/keycloak
Bước 4: Tạo Người Dùng và Nhóm Keycloak
Tạo nhóm và người dùng chuyên dụng cho Keycloak:
groupadd keycloak
useradd -r -g keycloak -d /opt/keycloak -s /sbin/nologin keycloak
Cấp quyền sở hữu cho thư mục Keycloak:
chown -R keycloak: /opt/keycloak
chmod o+x /opt/keycloak/bin/
Bước 5: Cấu Hình Keycloak
Tạo thư mục cấu hình Keycloak:
mkdir /etc/keycloak
Sao chép các tệp cấu hình mẫu:
cp /opt/keycloak/docs/contrib/scripts/systemd/wildfly.conf /etc/keycloak/keycloak.conf
cp /opt/keycloak/docs/contrib/scripts/systemd/launch.sh /opt/keycloak/bin/
Cấp quyền sở hữu tệp cấu hình:
chown keycloak: /opt/keycloak/bin/launch.sh
Chỉnh sửa tệp launch.sh và xác định đường dẫn Keycloak:
nano /opt/keycloak/bin/launch.sh
Lưu và đóng tệp sau khi chỉnh sửa.
Bước 6: Tạo Dịch Vụ Keycloak
Sao chép tệp dịch vụ systemd:
cp /opt/keycloak/docs/contrib/scripts/systemd/wildfly.service /etc/systemd/system/keycloak.service
Chỉnh sửa tệp dịch vụ:
nano /etc/systemd/system/keycloak.service
Tải lại dịch vụ systemd:
systemctl daemon-reload
Khởi động và kích hoạt Keycloak:
systemctl start keycloak
systemctl enable keycloak
Kiểm tra trạng thái dịch vụ:
systemctl status keycloak
ss -antpl | grep 8080
Tại thời điểm này, máy chủ Keycloak được khởi động và lắng nghe trên cổng 8080. Bạn có thể kiểm tra bằng lệnh sau:
Bước 7: Tạo Người Dùng Quản Trị
Tạo người dùng quản trị Keycloak:
/opt/keycloak/bin/add-user-keycloak.sh -u admin
Đặt mật khẩu và khởi động lại dịch vụ:
systemctl restart keycloak
Bước 8: Vô Hiệu Hóa HTTPS (Tuỳ Chọn)
Vô hiệu hóa HTTPS trong môi trường thử nghiệm:
/opt/keycloak/bin/kcadm.sh config credentials --server http://localhost:8080/auth --realm master --user admin
/opt/keycloak/bin/kcadm.sh update realms/master -s sslRequired=NONE
Bước 9: Truy Cập Giao Diện Quản Trị Keycloak
Mở trình duyệt và truy cập:
http://<your-server-ip>:8080/auth/admin
Nhập thông tin tài khoản admin để đăng nhập và truy cập giao diện Keycloak
Bước 10: Tạo Realm và Người Dùng
- Truy cập giao diện Keycloak.
- Chọn Add realm để tạo Realm mới.
- Chọn Manage -> Users để thêm người dùng mới.
- Đặt mật khẩu cho người dùng trong tab Credentials.
Kết Luận
Bài viết này đã hướng dẫn cách cài đặt và cấu hình Keycloak trên Ubuntu 20.04. Keycloak cung cấp các tính năng mạnh mẽ trong việc quản lý danh tính và truy cập, giúp bạn bảo mật các ứng dụng một cách dễ dàng. Bạn có thể tiếp tục khám phá các tính năng nâng cao như tích hợp LDAP, OpenID Connect, và xác thực hai yếu tố.