Tomcat 관련 포스팅 목록
2021.12.03 - [Linux/Tomcat] - Linux 톰캣 HTTPS 적용 - 키스토어 생성하기(keytool jks)
2021.12.04 - [Linux/Tomcat] - Linux 톰캣 HTTPS 적용 - 키스토어로 P12 파일 생성하기(keytool p12)
2021.12.05 - [Linux/Tomcat] - Linux 톰캣 HTTPS 적용 - P12 파일로 PEM 파일 생성하기(keytool pem)
2021.12.06 - [Linux/Tomcat] - Linux 톰캣 HTTPS 적용하기
2020.07.13 - [Linux/Tomcat] - 리눅스 우분투 tomcat 7 설치(Ubuntu, Tomcat, Install)
Tomcat 포트 변경
안녕하세요. 오늘은 이전 포스팅에서 설치한 Tomcat 7의 기본 포트를 변경하는 방법에 대하여 알아보겠습니다.
만약 리눅스 우분투 환경에 톰캣 서버가 설치되어 있지 않다면 아래 링크를 확인하여 설치한 후 진행해주세요.
2020/07/11 - [Linux/Tomcat] - 리눅스 우분투 tomcat 7 설치(Ubuntu, Tomcat, Install)
톰캣 서버 압축 파일을 해제하면 기본 포트는 8080 입니다.
하지만 HTTP 프로토콜의 기본 TCP 포트는 80 입니다. 왜 다를까요?
80 포트는 예약되어있는 포트이기 때문입니다.
Apache 기본 포트이기 때문이고, 또한 0 ~ 1023번 까지의 TCP 포트는 이미 알려진 포트들이 사용하고 있습니다.
따라서 아무 문제없는 8080 대의 포트가 기본으로 설정되어 있는 것입니다. 포트 충돌을 막기 위해서죠
어떤 의미론 이미 톰캣의 기본 포트가 8080 이므로 대중적인 의미로 예약되어있다고 생각할 수 도 있습니다.
우리는 이 기본 포트를 80으로 바꿔보도록 하겠습니다.
서버 종료
$ cd ~/tomcat_install_example/apache-tomcat-7.0.105/
$ ./bin/shutdown.sh
혹시 이전 포스팅을 따라 진행한 후 서버가 켜져있거나 자신도 모르게 백그라운드에서 실행되고 있을 서버를 우선 종료시키도록 합니다.
server.xml 변경
$ cd ~/tomcat_install_example/apache-tomcat-7.0.105/
$ vim ./conf/server.xml
톰캣 서버의 환경설정 파일이 열리면 아래와 같이 8080 포트로 설정하는 부분을 찾고 80 으로 수정합니다.
(변경전)
(변경후)
톰캣 서버의 포트를 80으로 변경하였으면 이제 실행해보도록 하겠습니다.
서버 재실행
$ cd ~/tomcat_install_example/apache-tomcat-7.0.105/
$ ./bin/startup.sh
자 이제 웹 브라우저에서 "http://localhost" 를 입력하여 접속해봅니다.
굳이 80 포트를 적지 않아도 괜찮은 이유는 HTTP 프로토콜의 기본 포트가 80 이기 때문입니다.
하지만 접속이 "연결을 거부했습니다" 라는 문구와 함께 접속이 불가능합니다.
이유는 0 ~ 1023 번 까지의 TCP 포트는 알려진 포트로서 이미 예약된 포트이기 때문에 시스템이 사용 허용을 안하기 때문입니다.
톰캣 서버가 열릴 때 포트가 같이 열려야 하지만 운영체제가 이 행위를 거부함으로써 서버가 열리지 않은 모습입니다.
서버의 로그를 한번 확인해보겠습니다.
톰캣 서버 구동 실패 로그 확인
$ cd ~/tomcat_install_example/apache-tomcat-7.0.105/
$ vim ./logs/catalina.out
위와 같이 "java.net.BindException: 허가 거부 (Bind failed) <null>:80" 에러가 발생한 것을 알 수 있습니다.
이러한 문제를 해결하기 위해선 관리자 권한으로 서버를 구동하면 됩니다.
관리자 권한으로 서버 실행
$ cd ~/tomcat_install_example/apache-tomcat-7.0.105/
$ sudo ./bin/startup.sh
자 이제 웹브라우저에서 다시 접속해보겠습니다.
잘 접속되는 것을 확인하였습니다.
만약 이렇게 진행해도 접속이 안될경우는 방화벽 정책에서 80포트를 허용해야합니다.
iptables 80 포트 허용 정책 추가
$ sudo iptables -A INPUT -p tcp --dport 80 -j ACCEPT
$ sudo ufw allow 80/tcp
$ cd ~/tomcat_install_example/apache-tomcat-7.0.105/
$ sudo ./bin/startup.sh
Tomcat 관련 포스팅 목록
2021.12.03 - [Linux/Tomcat] - Linux 톰캣 HTTPS 적용 - 키스토어 생성하기(keytool jks)
2021.12.04 - [Linux/Tomcat] - Linux 톰캣 HTTPS 적용 - 키스토어로 P12 파일 생성하기(keytool p12)
2021.12.05 - [Linux/Tomcat] - Linux 톰캣 HTTPS 적용 - P12 파일로 PEM 파일 생성하기(keytool pem)
2021.12.06 - [Linux/Tomcat] - Linux 톰캣 HTTPS 적용하기
2020.07.13 - [Linux/Tomcat] - 리눅스 우분투 tomcat 7 설치(Ubuntu, Tomcat, Install)