서버 설치 · 4 min read · Oct 21, 2025

AlmaLinux 9에서 Nginx 리버스 프록시와 함께 GlassFish Java 애플리케이션 서버 설치하는 방법

GlassFish는 Eclipse에서 개발한 Java EE 플랫폼의 무료 오픈 소스 구현입니다. 이는 Java 애플리케이션을 배포하기 위한 Java EE 플랫폼의 세계 최초 구현입니다. GlassFish는 Enterprise JavaBeans, JPA, JavaServer Faces 및 JMS와 같은 여러 Java 기술을 지원하는 확장 가능한 아키텍처를 제공합니다.

이 가이드는 Nginx 리버스 프록시와 함께 AlmaLinux 9 서버에 GlassFish를 설치하는 방법을 보여줍니다. 또한 GlassFish 관리에 대한 인증을 활성화하고 안전한 SSL/TLS 연결을 설정하여 GlassFish를 보호하는 방법도 다룹니다.

전제 조건

시작하기 전에 다음 사항을 확인하십시오:

  • AlmaLinux 9 서버.
  • 관리자 권한이 있는 비루트 사용자.
  • 서버 IP 주소를 가리키는 로컬 도메인 이름.

종속성 설정

먼저 GlassFish를 실행하는 데 사용할 시스템 사용자를 추가하여 AlmaLinux 시스템을 설정한 다음 Java OpenJDK 패키지를 설치해야 합니다.

패키지를 설치하기 전에 아래 명령어로 새로운 시스템 사용자 glassfish를 생성합니다. 이 사용자는 기본 홈 디렉토리 /opt/glassfish7을 가지며, 이는 GlassFish의 설치 디렉토리로 사용됩니다.

sudo useradd -m -d /opt/glassfish7 -U -s /bin/false glassfish

이제 아래 명령어로 Java OpenJDK 21 및 unzip 패키지를 설치합니다. 설치를 진행하려면 y를 입력하십시오.

sudo dnf install java-21-openjdk unzip nano

install java

설치가 완료되면 아래 명령어로 Java 버전을 확인하십시오. AlmaLinux 서버에 Java 17 또는 21이 설치되어 있는지 확인하십시오.

java --version

GlassFish 패키지 다운로드

시스템 사용자를 생성하고 Java를 설치한 후, 이제 GlassFish 패키지를 다운로드할 수 있습니다. GlassFish 다운로드 페이지를 방문하여 최신 버전의 링크를 복사하십시오.

아래 wget 명령어를 사용하여 GlassFish 패키지를 다운로드합니다.

wget https://download.eclipse.org/ee4j/glassfish/glassfish-7.0.12.zip

다운로드가 완료되면 glassfish-7.0.12.zip 파일을 /opt 디렉토리에 아래 unzip 명령어로 추출합니다. 이렇게 하면 GlassFish가 /opt/glassfish7 디렉토리에 추출됩니다.

unzip glassfish-7.0.12.zip -d /opt

마지막으로 /opt/glassfish7 디렉토리의 소유권을 사용자 glassfish로 변경합니다. 이는 GlassFish를 시스템 사용자 glassfish로 실행할 것이기 때문입니다.

sudo chown -R glassfish:glassfish /opt/glassfish7

GlassFish를 위한 systemd 서비스 설정

이 가이드에서는 GlassFish를 systemd 서비스로 실행합니다. 이렇게 하면 GlassFish가 백그라운드에서 실행되며 systemctl 유틸리티를 통해 쉽게 관리할 수 있습니다.

아래 nano 편집기를 사용하여 새로운 systemd 서비스 파일 /etc/systemd/system/glassfish7.service를 생성합니다.

sudo nano /etc/systemd/system/glassfish7.service

아래의 systemd 구성을 GlassFish에 삽입합니다.

[Unit]  
Description = GlassFish Server v7  
After = syslog.target network.target  
  
[Service]  
User=glassfish  
ExecStart=/opt/glassfish7/bin/asadmin start-domain  
ExecReload=/opt/glassfish7/bin/asadmin restart-domain  
ExecStop=/opt/glassfish7/bin/asadmin stop-domain  
Type = forking  
  
[Install]  
WantedBy = multi-user.target

작업이 완료되면 파일을 저장하고 편집기를 닫습니다.

이제 새로운 서비스 파일을 적용하기 위해 systemd 관리자를 다시 로드합니다.

sudo systemctl daemon-reload

그런 다음 아래 명령어로 GlassFish를 시작하고 활성화합니다. 시작되면 GlassFish는 포트 8080 및 4848에서 실행되어야 합니다.

sudo systemctl start glassfish7  
sudo systemctl enable glassfish7

setup systemd

마지막으로 아래 명령어로 glassfish7 서비스를 확인합니다. glassfish7 서비스가 시스템에서 활성화되고 실행 중인지 확인하십시오.

sudo systemctl status glassfish7

verify glassfish

GlassFish 관리자 설정

이 시점에서 GlassFish는 시스템에서 systemd 서비스로 실행되고 있습니다. 이제 GlassFish의 관리자 사용자를 확인하고 GlassFish 관리 보안을 위한 enable-secure-admin을 설정해야 합니다.

먼저 아래 명령어를 실행하여 GlassFish 설치를 위한 새로운 관리자 사용자를 생성합니다.

sudo -u glassfish /opt/glassfish7/bin/asadmin --port 4848 change-admin-password

사용자 입력을 요청받으면 기본 사용자 admin을 입력하고 비밀번호를 요청받을 때 ENTER를 누릅니다. 기본 GlassFish는 비밀번호 없이 제공됩니다.
새 비밀번호를 설정하라는 요청이 오면 비밀번호를 입력하고 반복합니다.

프로세스가 완료되면 ‘Command change-admin-password executed successfully‘라는 출력이 표시됩니다.

GlassFish의 관리자 비밀번호를 구성한 후, 아래 명령어를 실행하여 secure-admin 기능을 활성화합니다. 이렇게 하면 GlassFish에 대한 SSL/TLS 인증서가 자동으로 생성됩니다.

sudo -u glassfish /opt/glassfish7/bin/asadmin --port 4848 enable-secure-admin

요청 시 GlassFish의 관리자 사용자와 비밀번호를 입력합니다. 프로세스가 성공적으로 완료되면 ‘Command enable-secure-admin executed successfully‘라는 출력을 볼 수 있습니다.

마지막으로 GlassFish에 대한 수정 사항을 적용하기 위해 glassfish7 서비스를 재시작합니다. 명령어가 실행된 후 GlassFish 설치는 보안이 설정되고, 새로운 비밀번호를 가진 관리자 사용자와 GlassFish 관리자를 위한 TLS 인증서가 생성되어야 합니다.

sudo systemctl restart glassfish7

Nginx 리버스 프록시와 함께 GlassFish 실행

이 가이드에서는 Nginx 리버스 프록시 뒤에서 GlassFish를 실행합니다. 따라서 AlmaLinux 서버에 Nginx를 설치한 다음 리버스 프록시를 위한 새로운 서버 블록 구성을 생성해야 합니다.

아래 명령어를 사용하여 AlmaLinux에 Nginx 웹 서버를 설치합니다. 설치를 진행하려면 y를 입력하십시오.

sudo dnf install nginx

install nginx

설치가 완료되면 아래 nano 편집기 명령어를 사용하여 새로운 서버 블록 구성 /etc/nginx/conf.d/glassfish.conf를 생성합니다.

sudo nano /etc/nginx/conf.d/glassfish.conf

아래 구성을 삽입하여 기본적으로 포트 8080에서 실행되는 GlassFish에 대한 리버스 프록시를 설정합니다. 아래의 도메인 이름을 로컬 도메인으로 변경하는 것을 잊지 마십시오.

upstream glassfish7 {  
server 127.0.0.1:8080 weight=100 max_fails=5 fail_timeout=5;  
}  
  
server {  
listen 80;  
server_name glassfish.howtoforge.local;  
  
location / {  
proxy_set_header X-Forwarded-Host $host;  
proxy_set_header X-Forwarded-Server $host;  
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;  
proxy_pass http://glassfish7/;  
}  
}

작업이 완료되면 파일을 저장하고 종료합니다.

이제 아래 명령어를 사용하여 Nginx 구문을 확인합니다. 구문이 올바르면 ‘syntax is ok - test is successful‘라는 출력을 얻어야 합니다.

sudo nginx -t

그런 다음 아래 명령어로 AlmaLinux 서버에서 Nginx를 시작하고 활성화합니다.

sudo systemctl start nginx  
sudo systemctl enable nginx

setup nginx

시작되면 아래 명령어로 Nginx 서비스를 확인하여 서비스가 실행 중이고 활성화되어 있는지 확인합니다.

sudo systemctl status nginx

아래에서 Nginx 서비스가 AlmaLinux에서 실행 중이고 활성화되어 있는 것을 확인할 수 있습니다.

verify nginx

Firewalld 설정

Nginx가 실행 중인 상태에서 firewalld를 통해 서버의 HTTP 포트를 열어야 합니다. 또한 GlassFish 관리에 사용되는 포트 4848도 열 수 있습니다.

아래 명령어로 firewalld에서 HTTP 및 HTTPS 서비스를 모두 엽니다.

sudo firewall-cmd --add-service={http,https} --permanent

GlassFish 관리에 사용될 TCP 포트 4848을 엽니다.

sudo firewall-cmd --add-port=4848/tcp --permanent

이제 firewalld를 다시 로드하여 변경 사항을 적용합니다. 그런 다음 활성화된 규칙을 확인합니다.

sudo firewall-cmd --reload  
sudo firewall-cmd --list-all

아래에서 HTTP, HTTPS 서비스 및 포트 4848이 firewalld에 추가된 것을 확인할 수 있습니다.

setup firewalld

GlassFish 접근

웹 브라우저를 열고 GlassFish의 도메인 이름인 http://glassfish.howtoforge.local/를 방문합니다. 설치가 성공적이라면 다음과 같은 GlassFish 인덱스 페이지를 볼 수 있습니다.

index

이제 새 탭을 열고 http://glassfish.howtoforge.local:4848/를 방문하여 GlassFish 관리에 접근합니다. 기본 관리자와 비밀번호를 입력한 후 로그인 버튼을 클릭합니다.

login page

비밀번호가 올바르면 GlassFish 대시보드를 볼 수 있습니다.

admin console

결론

축하합니다! 이제 AlmaLinux 9 서버에 GlassFish를 성공적으로 설치했습니다. GlassFish를 설치하고, 관리자 사용자를 구성하고, GlassFish의 관리 보안을 설정했습니다. 마지막으로 Nginx를 설치하고 GlassFish 설치를 위한 리버스 프록시로 구성했습니다.

Share: X/Twitter LinkedIn

새 게시물을 받은 편지함에서 받기

스팸은 없습니다. 언제든지 구독 해지 가능합니다.