
Centos9에 tomcat설치하기
jdk 설치




ftp로 다운로드 받은 파일을 centos 서버로 옮긴다.
파일을 /usr/local/로 옮긴다.

압축을 해제합니다.
tar -xvf jdk-8u381-linux-aarch64.tar.gz
압축파일은 삭제합니다.
환경변수를 설정해줍니다.
JAVA_HOME=/usr/local/jdk1.8.0_381
PATH=$PATH:$JAVA_HOME/bin
CLASSPATH=$JAVA_HOME/jre/lib:$JAVA_HOME/lib/tools.jar

환경변수를 등록했다면 다음 명령어를 실행해줍니다.
source /etc/profile
jdk 설치확인
java -version

apache 서비스 사용자 추가
톰캣 서비스를 root 계정으로 실행하면 보안상 취약하므로, 서비스 계정으로 사용할 tomcat 계정을 생성합니다.
톰캣이 설치 될 /usr/local/tomcat 디렉토리를 홈 디렉토리로 설정하고 -M 옵션으로 디렉토리 생성은 하지 않습니다. -s /sbin/nologin 옵션으로 ssh shell 로그인을 차단합니다.
useradd -d /usr/local/tomcat -M -s /sbin/nologin tomcat
tomcat 설치
다운로드 페이지로 이동


톰캣을 /usr/local/ 경로에 설치하기 위해 wget -P 옵션을 사용해서 저장 경로를 지정합니다.
yum install -y wget
wget https://dlcdn.apache.org/tomcat/tomcat-8/v8.5.98/bin/apache-tomcat-8.5.98.tar.gz -P /usr/local/
압축해제
tar -xvf apache-tomcat-8.5.93.tar.gz

심볼릭 링크 만들기
톰캣 디렉토리의 버전 정보를 제외하고 간략하게 tomcat으로 사용하기 위해 /usr/local/tomcat 심볼릭 링크를 생성합니다.
tomcat 심볼릭 링크가 생성되었는지 확인합니다. 심볼릭 링크를 통해 /usr/local/apache-tomcat-8.5.79 원본 디렉토리를 /usr/local/tomcat 에서 동일하게 사용할 수 있습니다.
ln -s apache-tomcat-8.5.93 tomcat

apache tomcat 디렉터리와 실행파일 권한주기
tomcat 계정으로 서비스를 실행하기 위해 톰캣 패키지 디렉토리 권한을 변경합니다.
chown -R tomcat:tomcat /usr/local/apache-tomcat-8.5.93
톰캣의 bin 디렉토리 내 스크립트 파일에 실행 권한을 추가합니다.
chmod +x /usr/local/apache-tomcat-8.5.93/bin/*.sh
systemd에 tomcat 서비스 등록
vi /etc/systemd/system/tomcat.service
[Unit]
Description=Apache Tomcat Service
After=syslog.target network.target
[Service]
Type=forking
Environment="JAVA_HOME=/usr/local/java"
Environment="CATALINA_HOME=/usr/local/tomcat"
Environment="CATALINA_BASE=/usr/local/tomcat"
Environment="CATALINA_OPTS=-Xms512M -Xmx1024M -server -XX:+UseParallelGC"
Environment="JAVA_OPTS=-Djava.security.egd=file:///dev/urandom"
ExecStart=/usr/local/tomcat/bin/startup.sh
ExecStop=/usr/local/tomcat/bin/shutdown.sh
User=tomcat
Group=tomcat
[Install]
WantedBy=multi-user.target
systemd에 tomcat 서비스를 활성화하여 서버 시작 시 자동으로 tomcat 서비스를 시작하게 합니다.


톰캣의 기본 포트는 8080입니다. 외부 접속을 위해 8080 포트를 열어 줍니다.
firewall-cmd --permanent --zone=public --add-port=8080/tcp
firewall-cmd --reload
firewall-cmd --permanent --list-all

