프로그래밍 노트/인프라

웹서버의 ssl(https)설정은 무척 복잡하다. ssl_module관련된 directive들이 자세히 나와있는 글들이 별로 없는데, 아주 좋은 블로그를 발견하여서 참고해서 작성하였다. (사실 거의 똑같다..) 존경합니다. (출처 : https://golmong.tistory.com/170) 설정 지시자(configuration directive) SSLPassPhraseDialog Apache가 시동될 때 SSL이 적용된 각 virtualhost에 대한 Certificate와 Private Key를 읽어온다. 보안을 위해서 Private Key들은 암호화되어 있으며, 따라서 mod_ssl은 관리자에게 암호화된 PrivateKey를 복호화하기 위해서 Pass Phrase를 요구한다. Builtin exe..
... ... 디렉토리 제어문의 시작은 로 시작해서 로 끝난다. Options FollowSymLinks : 실볼릭 링크를 허용한다. Includes : SSI를 허용한다. MultiViews : 클라이언트의 요청에 따라 적절하게 페이지를 보여준다. 쉽게 생각하면 HTTP 헤드 정보가 Accept-Language:ko 라면 Korea 언어에 맞게 데이터를 클라이언트에 전송한다. Indexes : 웹 서버의 디렉토리에 접근 했을 때 DirectoryIndex 지시자로 설정한 파일이 없을 경우 디렉토리안의 파일 목록을 보여준다. None : 모든 설정을 부정한다. AllowOverride AllowOverride는 클라이언트의 디렉토리 접근 제어에 관한 설정이다. AllowOverride 는 AccessFi..
Timeout [300 : default] 클라이언트 요청에 의해 서버와 연결이 될 때, 서로간에 아무런 메시지가 발생하지 않을 때 연결을 끊는 시간. (Rest API 경우에는 낮을 수록, 웹서비스에 경우 높을 수록 좋음) KeepAlive [On : default / Off] Apache의 한 프로세스가 사용자의 지속적인 요청작업을 계속 처리할 것인지 대한 여부 KeepAliveTimeout[5 : default] KeepAlive가 On인 경우 유효한 값으로, 설정 시간(초)동안 요청이 없으면 타임아웃 시킨다. (낮을수록 동접자를 늘릴 수 있음) MaxKeepAliveRquests [100 : default] KeepAlive가 On인 경우 유효한 값으로, 하나의 프로세스가 방문자들의 요청을 처리할..
apache 2.2와 비교하여 apache2.4에서 access control 문법이 변경되었다. mode_access_compat.so apache 모듈이 설치되어 있으면, 2.2 문법도 사용할 수 있다. // 2.2 의 문법 SetHandler server-status Order deny,allow Deny from all Allow from 127.0.0.1 Order allow,deny Deny from all Satisfy All // 2.4의 문법 SetHandler server-status Require all denied Require ip 127.0.0.1 Require all denied Satisfy All
이름기반 VirtualHost 설정 하나의 서버가 여러개의 도메인을 가지고 있고, 각각의 도메인마다 다른 서비스를 하고 싶을 때 아파치의 VirtualHost를 사용하면 하나의 서버로 각기 다른 도메인을 서비스할 수 있다. 만약의 서버의 아이피가 192.168.0.5이고, 쇼핑몰 사이트와 책구매 사이트를 운영하고 싶다고 생각해보자. 우리는 두 개의 사이트를 운영해야하기 때문에 도메인을 2개 구입했다. (shopping.com, book.com) 이렇게되면 두개의 도메인은 둘다 192.168.0.5서버를 바라보게 된다. 하지만 우리는 shopping.com 으로 접속했을 때는 쇼핑몰 사이트를, book.com에 접속했을 때는 책 구매 사이트를 보여주고 싶다. 이럴 때 가상호스트(VirtualHost)를 사..
$CATALINA_BASE/conf 내에는 여러 종류의 설정 파일이 존재한다. server.xml을 포함한 주요 설정 파일 및 Tomcat 구성 요소, 그리고 가상 호스트 구성에 대해 알아보자. server.xml , , , , 등의 구성 요소들을 확인할 수 있음 Server(org.apache.catalina.Server) 최상위 element로써, shutdown 요청 처리를 위한 address와 port속성을 가지고 있다. 각각 shutdown 요청을 받기 위해 listen하는 IP address와 포트를 설정하며 기본 값은 localhost 8005이다. port속성을 -1로 설정하면 shutdown 포트 기능을 사용하지 않는다. shutdown 속성은 Shutdown 명령어(패스워드)를 설정한다..
YUM(Yellowdog Update Manager) RPM의 단점인 의존성 문제를 해결하기위해 제공 옵션 h : 도움말 출력 y : 설치 과정의 모든 질문을 yes로 답함 v : 자세한 메시지 출력 명령 install : 패키지 설치 update : 패키지 업데이트(패키지명 없을시 전체 업데이트) check-update : 현재 시스템에 설치된 패키지를 기준으로 업데이트 목록 출력 remove : 설치된 패키지 삭제 list : 패키지 목록 확인 info : 패키지 정보 확인 $yum list installed | grep tomcat // 설치된 패키지리스트중에 tomcat이 들어가는 패키지를 출력
젠킨스(Jenkins) 설치하기 1. 젠킨스가 설치되어있는지 확인하기 $yum list installed | grep jenkins2. 젠킨스 설치하기 2-1. url에 해당하는 파일을 /etc/yum.repos.d/jenkins/repo 경로에 다운 wget -O /etc/yum.repos.d/jenkins.repo https://pkg.jenkins.io/redhat-stable/jenkins.repo2-2. key import rpm --import https://pkg.jenkins.io/redhat-stable/jenkins.io.key2-3. jenkins 설치 yum install jenkins3. 젠킨스 설정하기 vi /etc/sysconfig/jenkins위의 파일을 열먼, jenkins..
Tomcat 설치하기 1. Tomcat 설치여부 확인 $yum list installed | grep tomcat2. Tomcat 설치하기 $yum install -y tomcat* /usr/share/tomcat에서 Tomcat파일 확인 가능 Error:tomcatjss conflicts with tomcat-native 에러시, $yum install --skip-broken tomcat* 실행 3. Tomcat 실행하기 $service tomcat start $service tomcat stop4. 버전확인 $tomcat version
Apache설치 1. Apache가 설치되어있는지 확인 $yum list installed | grep httpd2. Apache 설치 $yum install -y httpd 설치 후 apache 경로 : /etc/httpd 디렉토리 설명 conf : 웹 서버의 주요 설정파일인 httpd.conf, MIME형식을 지정하기 위한 파일이 있는 곳 conf.d : 아파치 주요설정을 분리해서 저장하는 곳. (httpd.conf 설정내용을 분리하여 이곳에 저장하면, httpd.conf파일에서 불러서 사용하게됨). httpd.conf파일에 보면 include 하는 부분이 있음 logs : 로그파일이 저장되는 디렉토리 modules : 아파치 모듈 설치디렉토리 3. 방화벽(http) 해제 클라우드를 사용하였으므로, ..
깡냉쓰
'프로그래밍 노트/인프라' 카테고리의 글 목록 (3 Page)