Classic 환경에서 이용 가능합니다.

사용하기 전에

Q. Tomcat 상품은 무엇인가요?

  • Tomcat 상품은 "Linux + Tomcat" Web Application Server 설치 프로세스를 원클릭으로 시작할 수 있는 설치형 서비스 상품입니다.
  • Tomcat 상품은 리눅스를 운영체제로 사용하면서, Tomcat를 활용한 Web Application Server 및 Servelt Container 서비스 플랫폼입니다.
  • Tomcat 상품은 안정성이 우수한 네이버 클라우드 플랫폼의 Compute 인프라 서비스에 자동으로 구성되며, 몇 단계의 설정을 통해 즉시 서비스에 투입할 수 있습니다.

Q. Tomcat 상품을 사용하면 어떤 이점이 있나요?

  • 네이버 클라우드 플랫폼의 인프라를 활용하여 안정적으로 Tomcat Application Server 서비스를 제공할 수 있습니다.
  • 서버 이미지와 스펙을 선택하여 Tomcat 서버를 자동으로 설치하고, Tomcat 서비스를 시작할 수 있습니다.

Q. Tomcat 서버는 어떻게 생성하나요?

  • 콘솔의 Compute > Server 메뉴에서 Tomcat 서버 이미지를 선택하여 생성할 수 있습니다.
  • 원하는 사양의 서버를 생성하고 필요에 따라 스토리지를 추가합니다.
  • 월 요금제와 시간 요금제로 청구되며, 서버를 생성한 후 접속 환경을 설정하여 이용할 수 있습니다.
  • Tomcat 웹 서비스를 이용하기 위해서 공인 IP 주소를 신청하고 ACG 설정에서 Web Application Server Port 포트를 추가해야 합니다.(Port는 변경 가능합니다.)
  • 콘솔에 접속한 후 다음의 단계를 통해 쉽게 서버를 생성할 수 있습니다.

Q. Tomcat 상품에 설치되는 오픈소스는 어떤것이 있나요?

  • Tomcat 상품의 오픈소스는 아래와 같이 제공됩니다.
    • Open JDK(Java Development Kit)
    • Apache Tomcat

Q. Tomcat Web 서비스에 접속할 수 없습니다.

  • Tomcat Web 서비스를 사용하기 위해서는 공인 IP 주소를 신청하여 서버에 할당해야 하며, ACG에 Web Application Server Port 포트가 추가되어 있어야 합니다.
  • 공인 IP 주소와 ACG를 확인한 후에도 접속되지 않는 경우 웹 서버 프로세스가 정지된 상태일 수 있으니, 터미널에서 재시작 명령어를 실행하여 프로세스를 다시 시작하십시오.

Q. Tomcat 상품은 어느 디렉터리에 설치되나요?

  • Tomcat 상품의 설치 위치는 /opt/tomcat입니다.
  • 데이터 유실을 방지하기 위해 설치 경로를 백업해 두는 것을 권장합니다.

Tomcat 서버 생성

Tomcat 서버 생성 및 서비스 접속 과정은 네이버 클라우드 플랫폼의 Application 설치형 상품과 동일합니다. 설치형 상품의 서버 생성 과정을 참고하여 Tomcat 서버를 생성하고 서비스에 접속할 수 있습니다.

Step 1. 콘솔 접속

콘솔에 접속해서 Compute > Server 메뉴를 선택합니다.

① 서버를 생성하려면 서버 생성 버튼을 클릭합니다.

Step 2. 서버 이미지 선택

Tomcat 서버 이미지를 선택해서 서버를 생성합니다.

① Tomcat 이미지를 선택합니다.

② 팝업 창의 안내(공인 IP 주소 확인, ACG 신청, 초기 비밀번호 확인)를 확인합니다.

확인 버튼을 클릭하면 팝업창이 닫히면서 서버 정보 입력 화면으로 이동합니다.

Step 3. 서버 설정

스토리지 종류, 서버 타입, 요금제, Zone을 선택하고 서버 이름을 입력합니다.

① Zone을 선택합니다.

  • Tomcat 서비스는 모든 Region에서 지원되고 있습니다.

② 부팅 스토리지로 사용할 스토리지 종류를 선택합니다.

③ 원하는 서버 타입을 선택합니다.

  • 일부 서버 스펙은 부팅 디스크 타입에 따라 지원되지 않을 수 있습니다.
  • 사용 용량에 따라 서버 타입 중 하나를 선택하세요.

④ 요금제는 월요금제 또는 시간 요금제 중 선택할 수 있습니다.

⑤ 서버 이름을 입력합니다.

  • 고객이 서버를 구별하기 위한 명칭으로, 중복해서 사용할 수 없습니다.

다음 버튼을 클릭합니다.

Step 4. 인증키 설정

보유하고 있는 인증키가 있는 경우 보유하고 있는 인증키 이용을 선택하고, 없는 경우 아래의 절차대로 새로운 인증키를 생성합니다.

새로운 인증키 생성을 선택합니다.

② 인증키 이름을 입력합니다.

인증키 생성 및 저장 버튼을 클릭하여 로컬 PC에 인증키 파일을 저장합니다.

  • 새로운 인증키를 발급받습니다.
  • 저장 후 인증키는 고객의 PC 안전한 위치에 보관해 주십시오.
  • 인증키는 최초의 관리자 비밀번호를 가져올 때 이용됩니다.

다음 버튼을 클릭합니다.

Step 5. ACG 설정

보유하고 있는 ACG를 이용하거나 신규 ACG를 생성하여 방화벽을 설정할 수 있습니다.

보유하고 있는 ACG 이용

보유하고 있는 ACG를 이용하여 방화벽을 설정하는 방법은 다음과 같습니다.

① ACG는 필수로 선택해야 하며, 기본으로 제공하는 ‘ncloud-default-acg’를 포함하여 보유하고 있는 ACG 중에서 하나를 선택합니다.

  • 보유하고 있는 ACG는 최대 5개까지 선택할 수 있습니다.
  • 필수로 ACG를 선택해야 다음 버튼이 활성화되어 설정을 진행할 수 있습니다.

② 보유하고 있는 ACG 외에 신규 ACG를 생성하여 설정하고 싶다면 신규 ACG 생성을 선택합니다.

다음 버튼을 클릭합니다.

새로 ACG 생성

새로 ACG를 생성하여 방화벽을 설정하는 방법은 다음과 같습니다.

① 신규 ACG 생성에서 ACG 생성 버튼을 클릭합니다.

② ACG 이름을 입력합니다.

③ ACG 설정에서 프로토콜, 접근 소스, 허용 포트를 입력하고 생성합니다.

  • 프로토콜: TCP, UDP, ICMP에서 선택
  • 접근 소스: IP 주소 또는 ACG명 입력
  • 허용 포트: 단일 포트 또는 범위 지정
  • 터미널 접속을 위해서는 접속하려는 서버의 ACG에 SSH 'TCP/22'에 대한 규칙이 설정되어 있어야 합니다. 규칙을 추가하려면 프로토콜, 접근 소스, 허용 포트를 기재하고 추가 버튼을 클릭합니다.
  • Tomcat 상품의 경우 18080을 기본 포트로 사용하고 있어서, 18080 포트를 추가하면 서버 생성 후 즉시 서비스가 가능합니다.
  • 다른 포트로 변경 시에는 ACG 규칙 변경을 통해 원하는 포트를 사용할 수 있습니다.

④ 서비스 포트가 모두 추가된 경우 생성 버튼을 클릭합니다.

Step 6. 최종 확인

설정한 내용을 최종 확인합니다.

① 서버 이미지, 서버, 인증키, ACG가 정상적으로 설정되었는지 확인합니다.

② 최종 확인 후에는 서버 생성 버튼을 클릭합니다.

  • 서버가 생성되기까지는 수 분에서 수십 분이 소요됩니다.

서버 목록에서 확인

생성한 서버를 목록에서 확인합니다.

① 생성한 서버가 목록에 표시됩니다.

② 서버가 생성되고 Tomcat 패키지가 설치 완료되어 서버 상태가 운영중이 될 때까지 대기합니다.

접속 환경 설정

공인 IP 주소 사용 신청

Tomcat 상품을 사용하려면 반드시 공인 IP 주소를 이용해서 접속해야 하며, 공인 IP 주소 사용에 대한 요금이 별도로 부과됩니다.

① 좌측 메뉴에서 PUBLIC IP 메뉴를 선택합니다. 공인 IP 주소를 할당받으려면 공인 IP 신청 버튼을 클릭합니다.

적용 서버 선택에서 공인 IP 주소를 할당할 Tomcat 서버를 선택합니다.

다음 버튼을 클릭합니다. 적용 서버 이름을 확인하고 다시 생성 버튼을 클릭합니다.

포트 포워딩 설정

터미널 프로그램(PuTTY 등)으로 서버에 접속하려면 포트 포워딩을 설정해야 합니다.

① 좌측 메뉴에서 Server 메뉴를 선택합니다. 서버에 접속하려면 포트 포워딩 설정 버튼을 클릭합니다.

② 포트 포워딩 설정 화면에서 외부 포트 번호를 설정합니다. 외부 포트 번호의 입력 범위는 1024~65,534로, 서버 접속을 위한 기능 외에 서비스 용도로 사용할 수 없습니다.
(내부 포트 번호는 22로 정해져 있습니다.)

추가 버튼을 클릭하면 설정 내역이 하단에 추가되며 수정, 삭제 버튼을 클릭하여 설정 내역을 수정, 삭제할 수 있습니다.

적용 버튼을 클릭하면 설정한 외부 포트로 터미널 프로그램을 이용하여 SSH 접속을 할 수 있습니다.

ACG 생성

ACG에 터미널 접속 SSH('TCP/22') 및 Tomcat 서비스('TCP/UDP' 설정) 규칙을 추가합니다. 서버 생성 시 규칙을 이미 추가한 경우는 이 단계의 ACG 설정 작업을 수행할 필요가 없습니다.

① 왼쪽의 메뉴에서 ACG 메뉴를 선택하고 상단의 ACG 생성 버튼을 클릭합니다.

② ACG 이름을 입력합니다.

③ 설정이 완료되면 생성 버튼을 클릭합니다.

ACG 설정

① 생성한 ACG를 선택합니다.

② 상단 ACG 설정 버튼을 클릭합니다.

③ ACG 규칙 설정에서 프로토콜, 접근 소스, 허용 포트를 입력하고 생성합니다.

  • 프로토콜: TCP, UDP, ICMP에서 선택
  • 접근 소스: IP 주소 또는 ACG명 입력
  • 허용 포트: 단일 포트 또는 범위 지정

터미널 접속을 위해서는 접속하려는 서버의 ACG에 SSH 'TCP/22'에 대한 규칙이 설정되어 있어야 합니다. 규칙을 추가하려면 프로토콜, 접근 소스, 허용 포트를 기재하고 추가 버튼을 클릭합니다.

④ 설정이 완료되면 적용 버튼을 클릭합니다.

서버 관리자 비밀번호 확인

터미널 프로그램(PuTTY 등)으로 서버에 접속하려면 관리자 비밀번호를 알아야 합니다.

① 좌측 메뉴에서 Server 메뉴를 선택합니다.

② 해당 서버를 선택하고, 서버 관리 및 설정 변경에서 관리자 비밀번호 확인을 선택합니다.

Drop files here or click to upload 버튼을 클릭해 서버 생성 시 개인 PC에 저장한 인증키 파일(.pem)을 첨부합니다.

④ 첨부 후 비밀번호 확인 버튼을 클릭하면 터미널 프로그램으로 최초 서버 접속 시 사용할 비밀번호를 얻을 수 있습니다.

  • 서버에 접속 후 관리자가 기억할 수 있는 비밀번호로 변경하여 사용하는 것을 권장합니다.

터미널 접속

터미널 프로그램(PuTTY 등)으로 서버에 접속해서 서비스 프로세스를 관리할 수 있습니다.

터미널 프로그램으로 서버 접속

① 터미널 프로그램(PuTTY 등)을 실행합니다.

② 서버 리스트 또는 내용 보기에서 확인한 '서버 접속용 공인 IP'와 '외부 포트'의 값을 입력하고 Open 버튼을 클릭하면 서버에 접속됩니다.

  • 서버 접속용 공인 IP 확인: 콘솔의 Server > Server 메뉴에서 서버 선택 후 상세정보에서 포트 포워딩 정보서버 접속용 공인 IP 값 확인
  • 외부 포트 번호 확인: 콘솔의 Server > Server 메뉴에서 서버 선택 후 상세정보에서 포트 포워딩 정보외부 포트 값 확인

③ 사용자 정보 및 암호를 입력하고 로그인합니다.

  • login as: root
  • password: 위에서 확인한 관리자 비밀번호

④ 로그인 후에는 root 계정의 비밀번호를 기억할 수 있는 비밀번호로 변경할 것을 권장합니다. passwd root 명령어를 입력한 후 새 비밀번호를 입력합니다.

Tomcat 서버 사용하기

Tomcat 서버 이미지 생성 시 Tomcat Web Application Server가 설치되어 쉽게 사용할 수 있습니다.
아래와 같이 Tomcat Server를 쉽게 제어할 수 있습니다.

  • Tomcat 서비스 정지하기
 systemctl stop tomcat
  • Tomcat 서비스 시작하기
 systemctl start tomcat
  • Tomcat 서비스 확인하기
 systemctl status tomcat
● tomcat.service - Apache Tomcat Web Application Container
   Loaded: loaded (/etc/systemd/system/tomcat.service; disabled; vendor preset: disabled)
   Active: active (running) since 금 2020-05-08 16:07:48 KST; 7min ago
  Process: 2206 ExecStart=/opt/tomcat/bin/startup.sh (code=exited, status=0/SUCCESS)
 Main PID: 2213 (java)
   CGroup: /system.slice/tomcat.service
           └─2213 java -Djava.util.logging.config.file=/opt/tomcat/conf/logging.properties -Djava.util.logging.ma...

 5월 08 16:07:48 tomcat-cent systemd[1]: Starting Apache Tomcat Web Application Container...
 5월 08 16:07:48 tomcat-cent systemd[1]: Started Apache Tomcat Web Application Container.
  • Tomcat 서비스 포트 확인하기
 netstat -na | grep 18080

아래와 같이 최초 설정된 18080 포트가 실행된 것을 확인할 수 있다.

tcp        0      0 0.0.0.0:18080           0.0.0.0:*               LISTEN
  • Tomcat 버전 정보 확인하기
 /opt/tomcat/bin/version.sh

아래와 같이 현재 설치된 Tomcat 버전 정보를 확인할 수 있다.

Using CATALINA_BASE:   /opt/tomcat
Using CATALINA_HOME:   /opt/tomcat
Using CATALINA_TMPDIR: /opt/tomcat/temp
Using JRE_HOME:        /usr
Using CLASSPATH:       /opt/tomcat/bin/bootstrap.jar:/opt/tomcat/bin/tomcat-juli.jar
Server version: Apache Tomcat/8.5.54
Server built:   Apr 3 2020 14:06:10 UTC
Server number:  8.5.54.0
OS Name:        Linux
OS Version:     3.10.0-514.2.2.el7.x86_64
Architecture:   amd64
JVM Version:    1.7.0_141-mockbuild_2017_05_09_15_35-b00
JVM Vendor:     Oracle Corporation
  • 실행된 Tomcat을 브라우저에서 확인하기

위와 같이 해당 IP에 포트가 정상적으로 동작한다면, 아래와 같이 브라우저에서 실행하면 Tomcat 기본 페이지를 실행할 수 있다.

 http(s)://{YOUR_PUBLIC_IP}:{TOMAT_PORT}

(Optional) Tomcat Manager 활용하기 예제

Tomcat Manager 모듈에 접근할 수 있도록 아래와 같이 설정하면, 설정된 계정 정보를 통해 웹에서 실행할 수 있다.
기본 설정은 disable 되어 있으며, 운영 시에는 보안 강화를 위해 설정을 하지 않는 것을 권고합니다.

아래와 같이 Tomcat Manager 정보를 확인할 수 있는 계정을 설정할 수 있다.

 vi /opt/tomcat/conf/tomcat-users.xml
<?xml version="1.0" encoding="UTF-8"?>
<!--
  Licensed to the Apache Software Foundation (ASF) under one or more
  contributor license agreements.  See the NOTICE file distributed with
  this work for additional information regarding copyright ownership.
  The ASF licenses this file to You under the Apache License, Version 2.0
  (the "License"); you may not use this file except in compliance with
  the License.  You may obtain a copy of the License at

      http://www.apache.org/licenses/LICENSE-2.0

  Unless required by applicable law or agreed to in writing, software
  distributed under the License is distributed on an "AS IS" BASIS,
  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
  See the License for the specific language governing permissions and
  limitations under the License.
-->
<tomcat-users xmlns="http://tomcat.apache.org/xml"
              xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
              xsi:schemaLocation="http://tomcat.apache.org/xml tomcat-users.xsd"
              version="1.0">
<!--
  NOTE:  By default, no user is included in the "manager-gui" role required
  to operate the "/manager/html" web application.  If you wish to use this app,
  you must define such a user - the username and password are arbitrary. It is
  strongly recommended that you do NOT use one of the users in the commented out
  section below since they are intended for use with the examples web
  application.
-->
<!--
  NOTE:  The sample user and role entries below are intended for use with the
  examples web application. They are wrapped in a comment and thus are ignored
  when reading this file. If you wish to configure these users for use with the
  examples web application, do not forget to remove the <!.. ..> that surrounds
  them. You will also need to set the passwords to something appropriate.
-->
<!--
  <role rolename="tomcat"/>
  <role rolename="role1"/>
  <user username="tomcat" password="<must-be-changed>" roles="tomcat"/>
  <user username="both" password="<must-be-changed>" roles="tomcat,role1"/>
  <user username="role1" password="<must-be-changed>" roles="role1"/>
-->

  <user username="admin" password="password" roles="manager-gui,admin-gui"/>
</tomcat-users>

예제에서는 useradmin으로 설정하고, passwordpassword로 설정하고 있다.
다음으로 Tomcat Manager 페이지에 접근할 수 있도록 IP Range를 설정할 수 있다.

 vi /opt/tomcat/webapps/manager/META-INF/context.xml
<?xml version="1.0" encoding="UTF-8"?>
<!--
  Licensed to the Apache Software Foundation (ASF) under one or more
  contributor license agreements.  See the NOTICE file distributed with
  this work for additional information regarding copyright ownership.
  The ASF licenses this file to You under the Apache License, Version 2.0
  (the "License"); you may not use this file except in compliance with
  the License.  You may obtain a copy of the License at

      http://www.apache.org/licenses/LICENSE-2.0

  Unless required by applicable law or agreed to in writing, software
  distributed under the License is distributed on an "AS IS" BASIS,
  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
  See the License for the specific language governing permissions and
  limitations under the License.
-->
<Context antiResourceLocking="false" privileged="true" >
<!--
  <Valve className="org.apache.catalina.valves.RemoteAddrValve"
         allow="127\.\d+\.\d+\.\d+|::1|0:0:0:0:0:0:0:1" />
-->
  <Manager sessionAttributeValueClassNameFilter="java\.lang\.(?:Boolean|Integer|Long|Number|String)|org\.apache\.catalina\.filters\.CsrfPreventionFilter\$LruCache(?:\$1)?|java\.util\.(?:Linked)?HashMap"/>
</Context>

위의 내용에서 아래와 같이 Remote IP 설정을 주석처리하면, 모든 IP 대역에서 Tomcat Manager 접근이 가능하다.

...
<!--
  <Valve className="org.apache.catalina.valves.RemoteAddrValve"
         allow="127\.\d+\.\d+\.\d+|::1|0:0:0:0:0:0:0:1" />
-->
...

위와 같이 설정한 후 Tomcat Restart를 실행하면, Tomcat Manager Page를 실행할 수 있다.

 systemctl restart tomcat

아래와 같이 브라우저에서 접근하면, Tomcat Manager Page를 확인할 수 있다.

 http(s)://{YOUR_PUBLIC_IP}:{TOMAT_PORT}/manager/html

위와 동일한 방법으로 Tomcat Host Manager 페이지에 접근할 수 있도록 IP Range를 설정할 수 있다.

 vi /opt/tomcat/webapps/host-manager/META-INF/context.xml
<?xml version="1.0" encoding="UTF-8"?>
<!--
  Licensed to the Apache Software Foundation (ASF) under one or more
  contributor license agreements.  See the NOTICE file distributed with
  this work for additional information regarding copyright ownership.
  The ASF licenses this file to You under the Apache License, Version 2.0
  (the "License"); you may not use this file except in compliance with
  the License.  You may obtain a copy of the License at

      http://www.apache.org/licenses/LICENSE-2.0

  Unless required by applicable law or agreed to in writing, software
  distributed under the License is distributed on an "AS IS" BASIS,
  WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
  See the License for the specific language governing permissions and
  limitations under the License.
-->
<Context antiResourceLocking="false" privileged="true" >
  <!--
  <Valve className="org.apache.catalina.valves.RemoteAddrValve"
         allow="127\.\d+\.\d+\.\d+|::1|0:0:0:0:0:0:0:1" />
  -->
  <Manager sessionAttributeValueClassNameFilter="java\.lang\.(?:Boolean|Integer|Long|Number|String)|org\.apache\.catalina\.filters\.CsrfPreventionFilter\$LruCache(?:\$1)?|java\.util\.(?:Linked)?HashMap"/>
</Context>

위의 내용에서 아래와 같이 Remote IP 설정을 주석처리하면, 모든 IP 대역에서 Tomcat Host Manager 접근이 가능하다.

...
  <!--
  <Valve className="org.apache.catalina.valves.RemoteAddrValve"
         allow="127\.\d+\.\d+\.\d+|::1|0:0:0:0:0:0:0:1" />
  -->
...

위와 같이 설정한 후 Tomcat Restart를 실행하면, Tomcat Host Manager Page를 실행할 수 있다.

 systemctl restart tomcat

아래와 같이 브라우저에서 접근하면, Tomcat Host Manager Page를 확인할 수 있다.

 http(s)://{YOUR_PUBLIC_IP}:{TOMAT_PORT}/host-manager/html

Tomcat Server 보안 환경을 강화하기 위해서 위의 Tomcat Manager, Tomcat Host Manager 설정은 disable 하거나, 접근 가능한 IP 대역을 설정하여 특정 운영자 및 대역에서만 접근할 수 있게 해야합니다.

연관 정보 바로가기

네이버 클라우드 플랫폼 Tomcat 상품에서 사용되는 소프트웨어에 대한 자세한 내용은 다음 웹페이지를 확인하십시오.

아래 설명서(구, 사용자 가이드)에서 연관 정보를 확인할 수 있습니다.

""에 대한 건이 검색되었습니다.

    ""에 대한 검색 결과가 없습니다.

    처리중...