//압축하기
tar -cvzf [생성파일이름] [압출폴더이름]
//압축해제
tar -zxvf [압출파일이름]
'Linux > 명령어' 카테고리의 다른 글
Linux : User관리, 권한 명령어 정리 (0) | 2022.04.09 |
---|---|
리눅스 기본 명령어 정리 (0) | 2022.04.05 |
//압축하기
tar -cvzf [생성파일이름] [압출폴더이름]
//압축해제
tar -zxvf [압출파일이름]
Linux : User관리, 권한 명령어 정리 (0) | 2022.04.09 |
---|---|
리눅스 기본 명령어 정리 (0) | 2022.04.05 |
Node, React 개발 시 npm start를 매번 할때마다 3000번 포트가 살아있어
3000번포트를 찾고 죽이는방법을 계속 까먹어서 기록한다.
lsof -i tcp:[3000] //3000포트의 PID 검색
kill -9 [PID] //PID 프로세스 죽이기
작성자의 개인 Study 후 오류 없는 셋팅을 위해 정리 용도로 작성됨을 안내드립니다.
이번 Step에서는 ssl 적용하는 하는 방법을 작성하겠습니다.
환경
Naver Cloud Platform centos-7.8-64
OpenJDK 1.8
Apache 2.4.6
Tomcat 8.5.78
인증서 설치 전 확인사항
인증서 설치 시 SSL관련 설정은 기존 apache 1.x에서는 httpd.conf에서 해주었으나,
Apache 2.x 에서는 ssl.conf, apache 2.2x에서는 httpd-ssl.conf 파일에서 설정해주시면 됩니다.
참고1. Apache의 경우 기본적으로 mod_ssl 모듈이 설치되어 있어야 합니다.
저는 Apache 2.x기준으로 작성하도록 하겠습니다.
mod_ssl 설치
yum -y install mod_ssl
mod_ssl 설치 후 443포트와 https서비스를 오픈합니다.
firewall-cmd --permanent --add-port=443/tcp
firewall-cmd --permanent --add-service=https
certbot 설치
yum install epel-release //저장소 활성화
yum install certbot python2-certbot-apache //인증서설치
ssl 인증서 발급
인증서 발급을 위해서는 httpd서비스를 정지 후 진행해야 한다.
systemctl stop httpd
certbot certonly --standalone -d sample.bigdragon.com //도메인 샘플
인증서 발급 시 이메일 입력, yes를 입력하고 하면 입력해주면 된다.
인증서 적용
인증서 발급이 완료되면 /etc/letsencrypt/live/도메인/ 으로 이동하면 인증서가 생성되어 있다. 이 인증서를
/etc/httpd/conf.d/ssl.conf에 각각의 pem에 맞춰 입력해주면 된다.
또한 톰캣을 이용한다면 server.xml에도 필수로 입력해줘야한다
ssl.conf
1. 이전 스탭에서는 mod_jk.conf로 JKmount를 해줬다면, ssl.conf에 설정을 해주거나 Include해주면 된다.
2.생성된 인증서를 ssl.conf에 각각에 맞에 입력해준다.
server.xml
톰캣의 server.xml 부분에도 인증서 경로에 맞게 작성을 해주면 된다.
이러면 https로 정상적으로 접근 되실 거에요 ㅎㅎ
안되시는부분 댓글로 남겨주시면 확인 해드리겠습니다
감사합니다.
※개인 참고용 사용코드
yum update ==> 하고 버전업되서 에러 날 수 있음
yum clean all
yum -y install mod_ssl
yum install epel-release
firewall-cmd --permanent --zone=public --add-port=443/tcp
certbot certonly --standalone -d data.bigdragon.shop
vi /etc/httpd/conf.d/ssl.conf
vi /usr/local/instance/apache3/conf/server.xml
리눅스 서버 셋팅 Step7 - 아파치 + 톰캣 연동 (0) | 2022.04.18 |
---|---|
리눅스 서버 셋팅 Step6 - Tomcat Instance 여러개 띄우기 (0) | 2022.04.16 |
리눅스 서버 셋팅 Step5 - Tomcat 설치 (0) | 2022.04.12 |
리눅스 서버 셋팅 Step4 - FTP 설치 (0) | 2022.04.10 |
리눅스 서버 셋팅 Step3 - Apache 설치 (1) | 2022.04.10 |
작성자의 개인 Study 후 오류 없는 셋팅을 위해 정리 용도로 작성됨을 안내드립니다.
이번 Step에서는 아파치와 톰캣을 연동하는 방법을 작성하겠습니다.
Apache
정적인 데이터를 처리하는 웹서버로 흔히 클라이언트가 HTML, JPG, Resource 파일 같은 변하지 않는 파일을 요청하면 Apache는 해당 파일을 클라이언트에게 응답을 하는 소프트웨어.
Tomcat
Tomcat은 WAS(Web Application Server)로 불리며 동적인 데이터 즉 어떠한 요청에 따른 DB를 조회하고 계산하여 제공하는 등 다양한 역할을 수행하는 소프트웨어.
흔히 웹을 구성할 때 Apache + Tomcat을 결합하여 사용합니다. 그 이유는 Tomcat은 주로 동적인 데이터를 처리 하기 때문에 많은 리소스를 필요로 하여 많은 요청이 들어오면 부하가 걸릴 수 있는 반면 Apache는 정적인 데이터를 전달함으로써, 상대적으로 적은 리소스를 잡아 먹기 때문입니다. 이둘을 연동함으로써 정적인데이터를 요청했을 경우 Apache가 처리한 후 클라이언트에게 전달하고, 동적인 데이터를 요구하는 경우에는 Apache가 Tomcat에게 클라이언트의 요청을 전달하고 Tomcat이 요청에 따른 동적인 데이터를 만든 후 그것을 Apache에게 전달 Apache는다시 클라이언트에게 전달함으로써 좀 더 효율적으로 서버를 운영할 수 있습니다.
Apache, Tomcat설치는 이전 Step에서 다뤘으므로 생략 하도록 하겠습니다.
먼저, mod_jk를 설치하기 전에 gcc, gcc-c++, httpd-devel 3가지의 패키지를 설치해야 합니다.
yum -y install gcc gcc-c++ httpd-devel
이제 톰캣 사이트에 들어가서 tomcat connector를 다운받아 줍니다
Download -> Tomcat Connecotrs -> JK ~~~~~~.tar.gz 우클릭 -> 링크 주소복사
다운받을 디렉토리 위치로 이동 후 파일을 아래 명령어로 다운로드 합니다
wget -c [복사한 링크주소]
다운로드 받은 파일을 압축해제 합니다
tar -zxvf [다운받은파일명]
해당 파일을 관리하기 편한곳으로 이동
cd [파일명] /usr/local/lib
native 경로로 이동
cd /usr/local/lib/[Connector디렉토리]/native
apxs 경로 찾기
apxs : Apache 확장기능 설치를 도와주는 유틸리티의 경로
find / -name apxs
make파일 생성
# native 경로에서 해야함
./configure --with-apxs=[apxs경로]
make 명령어로 컴파일 완료 후 make install을 실행
make && make install
mod_jk 설치확인
ll /etc/httpd/modules/ | grep mod_jk
selinux 보안관련 설정
chcon -u system_u -r object_r httpd_modules_t /etc/httpd/modules/mod_jk.so
# vi /etc/httpd/conf/httpd.conf
# 맨 아래 추가
LoadModule jk_module modules/mod_jk.so
<VirtualHost *:80>
ServerName localhost
JkMount /* tomcat
</VirtualHost>
VirtualHost *:80, ServerName 두 가지 정보를 통해 들어온 요청을 어떤 톰캣에서 처리할지 결정합니다.. 지금 설정은 80 포트로 들어오는 모든 요청을 tomcat으로 보내고 있습니다.
#EX) 아래 설명을 위한 코드 입니다.
LoadModule jk_module modules/mod_jk.so
<VirtualHost *:80>
ServerName example.com
JkMount /*.do tomcat2
</VirtualHost>
만약 위와 같이 설정하게 되면 80포트로 들어오면서 요청 URL이 example.com이고, .do로 끝나는 것들만 tomcat2에서 처리하게 됩니다. (이건 안 하셔도 됩니다. 설명을 위한 예제입니다.)
그 다음 worker를 관리하는 worker.properties의 위치와 로그파일 및 level을 관리하는 코드를 맨아래에 또 추가합니다.
해당 코드를 mod_jk.conf 파일로 따로 설정하는 방법도 있지만 간혹 연동이 안되는 경우가 있어 httpd.conf 파일에 같이 넣는 편입니다.
<IfModule mod_jk.c>
JkWorkersFile conf/workers.properties
JkShmFile run/mod_jk.shm
JkLogFile logs/mod_jk.log
JkLogLevel info
JkLogStampFormat "[%y %m %d %H:%M:%S] "
</IfModule>
이제 httpd.conf에서 할 작업은 끝났습니다. :wq로 나가주시면 됩니다.
# vi /etc/httpd/conf/workers.properties
worker.list=tomcat
worker.tomcat.port=8009
worker.tomcat.host=localhost
worker.tomcat.type=ajp13
worker.tomcat.lbfactor=1
# vi /usr/local/apache-tomcat-8.5.69/conf/server.xml
<Connector protocol="AJP/1.3"
address="0.0.0.0"
secretRequired="false"
port="8009"
redirectPort="8443" />
AJP Connector 관련부분 주석을 해제하고 위와 같이 코드를 변경합니다.
위와 같이 포트를 입력하지 않아도 호출이 되면 정상적으로 셋팅 된 것 입니다.
막히는 부분은 댓글로 문의주시면 답변 드리겠습니다.
감사합니다.
출처
https://it-serial.tistory.com/72
리눅스 서버 셋팅 Step8 - 웹사이트 Let's Encrypt + SSL 적용 (0) | 2022.06.06 |
---|---|
리눅스 서버 셋팅 Step6 - Tomcat Instance 여러개 띄우기 (0) | 2022.04.16 |
리눅스 서버 셋팅 Step5 - Tomcat 설치 (0) | 2022.04.12 |
리눅스 서버 셋팅 Step4 - FTP 설치 (0) | 2022.04.10 |
리눅스 서버 셋팅 Step3 - Apache 설치 (1) | 2022.04.10 |
작성자의 개인 Study 후 오류 없는 셋팅을 위해 정리 용도로 작성됨을 안내드립니다.
Step6은 간단한 작업이라 Shell 위주의 코드만 작성합니다.
환경
Naver Cloud Platform centos-7.8-64
OpenJDK 1.8
Apache 2.4.6
Tomcat 8.5.78
톰캣에서 인스턴스를 여러개 관리하는 방법이 있습니다.
1. 하나의 server.xml에 여러 호스트를 관리하는 방법 ( 서버 재구동 시 모든서비스가 재시작 되는 단점이 있음)
2. tomcat의 instance 디렉토리들을 복사하여 사용(서버 재구동 시 해당 디렉토리에 있는 서비스만 재구동)
[CATALINA_HOME]
위 내용들 중 Instance 디렉토리를 아래의 절차를 거쳐 별도로 구성해 주면 된다.(Tomcat 설치 생략)
instance를 설치할 위치에서 해당 bash 실행
mkdir -p /instance/tomcat1
chown -R root:admGroup /instance/tomcat1
cp -a /usr/local/tomcat8/conf /usr/local/instance/tomcat1
cp -a /usr/local/webapps /usr/local/instance/tomcat1
cp -a /usr/local/logs /usr/local/instance/tomcat1
cp -a /usr/local/work /usr/local/instance/tomcat1
<Server port="8005" shutdown="SHUTDOWN">
<Connector port="8080" protocol="HTTP/1.1"
connectionTimeout="20000"
redirectPort="8443" />
vi instance1/conf/server.xml 명령어 실행 후
Shotdown, http,https,ajp 서비스 포트를 사용할 포트로 변경 해준다.
vi tomcat1/startup.sh
#!/bin/sh
export CATALINA_HOME=/usr/local/tomcat
export CATALINA_BASE=/usr/local/instance/tomcat1
$CATALINA_HOME/bin/startup.sh
vi tomcat1/shutdown.sh
#!/bin/sh
export CATALINA_HOME=/usr/local/tomcat
export CATALINA_BASE=/usr/local/instance/tomcat1
$CATALINA_HOME/bin/shutdown.sh
이렇게 설정하면 Tomcat 설치 디렉토리에서는 구동 스크립트만 빌려 각각의 인스턴스를 구동할 수 있게 된다. 구성된 instance1 디렉토리를 필요한 만큼 복제한다.
cp -a tomcat1 tomcat2
cp -a tomcat1 tomcat3
복제 후에는 이미 진행했던 3,4 번 단계의 각 인스턴스 설정(server.xml, startup.sh, shutdown.sh)을 변경해 준다.
server.xml에 설정한 포트들을 방화벽에 추가해준다
/usr/local/instance/tomcat1/startup.sh
/usr/local/instance/tomcat2/startup.sh
/usr/local/instance/tomcat3/startup.sh
감사합니다.
출처
https://oops4u.tistory.com/2547
리눅스 서버 셋팅 Step8 - 웹사이트 Let's Encrypt + SSL 적용 (0) | 2022.06.06 |
---|---|
리눅스 서버 셋팅 Step7 - 아파치 + 톰캣 연동 (0) | 2022.04.18 |
리눅스 서버 셋팅 Step5 - Tomcat 설치 (0) | 2022.04.12 |
리눅스 서버 셋팅 Step4 - FTP 설치 (0) | 2022.04.10 |
리눅스 서버 셋팅 Step3 - Apache 설치 (1) | 2022.04.10 |
작성자의 개인 Study 후 오류 없는 셋팅을 위해 정리 용도로 작성됨을 안내드립니다.
Step1은 간단한 작업이라 Shell 위주의 코드만 작성합니다.
환경
Naver Cloud Platform centos-7.8-64
OpenJDK 1.8
Apache 2.4.6
Tomcat을 설치하기 위해서는 톰캣 사이트에 들어가 직접 다운로드받고 FTP로 올려도 되지만
터미널에서 다운 받을 수 있습니다. 해당 이미지처럼 톰캣홈페이지에서 다운받을 버전의 tar.gz마우스 오른쪽 클릭 후 링크를 복사한 후 터미널에 해당 명령어를 입력합니다.
wget [복사한링크]
설치 작업은 다운받은 파일을 tar 명령을 이용하여 다운로드 받은 파일의 압축을 풀어줍니다.
tar -zxvf [파일명]
본인이 관리할 디렉토리로 이동해줍니다. 압축 푼 파일의 이름을 편하게 수정하셔도 됩니다.
mv [압출파일명] /usr/local/apache # /usr/local 경로에 apache로 파일명 변경
chown -R root:admGroup /usr/local/apache # 소유자, 그룹 변경
## 환경변수 파일 수정
##vi /etc/profile
##수정 후 source /etc/profile로 반영
CATALINA_HOME=/usr/local/apache
CLASSPATH=$CATALINA_HOME/lib/jsp-api.jar:$CATALINA_HOME/lib/servlet-api.jar
PATH=$CATALINE_HOME/bin
export CATALINA_HOME 추가
firewall-cmd --zone=public --permanent --add-port=8080/tcp
firewall-cmd --reload
/usr/local/apache/bin/startup.sh ##톰캣 실행
/usr/local/apache/bin/shutdown.sh ## 톰캣 중지
감사합니다.
리눅스 서버 셋팅 Step7 - 아파치 + 톰캣 연동 (0) | 2022.04.18 |
---|---|
리눅스 서버 셋팅 Step6 - Tomcat Instance 여러개 띄우기 (0) | 2022.04.16 |
리눅스 서버 셋팅 Step4 - FTP 설치 (0) | 2022.04.10 |
리눅스 서버 셋팅 Step3 - Apache 설치 (1) | 2022.04.10 |
리눅스 서버 셋팅 Step2 - Open JDK 1.8 설치 (0) | 2022.04.10 |