• 워드프레스 블로그 방문자 분석도구 만들기 (Apache access log 분석)

    이 블로그는 오라클 클라우드에서 제공하는 평생 무료 서비스에 구축하여 운영중이다. 우분투 리눅스 가상머신 2대를 생성하여 하나의 가상서버에는 아파치 웹서버와 PHP를 설치하였고 다른 하나의 가상머신에 MariaDB DBMS를 설치하였다. 그리고 웹 어플리케이션은 워드프레스(Wordpress)를 설치하여 블로그를 구성하였다. www가 웹서버이고 mariadb가 DB서버다. 그리고 ap-svr-01 서버가 바로 오늘의 주제인 워드프레스 블로그의 방문자 분석, 즉 Apache 웹서버의 access log를 분석하고 DB에 업로드하는 웹 …

  • [https 적용하기] 웹서버에 도메인 네임 주소와 SSL 인증서 설치하기

    직접 구축한 홈페이지 또는 블로그에 https를 적용하기 위해서는 웹서버 또는 블로그에 직접 구입한 도메인 네임 주소를 연결하고 SSL 인증서를 발급받아 설치해야 한다. 이 과정은 관련 지식이 부족한 사람에게는 매우 어려운 작업이지만 하나 하나 차근차근 공부해나간다면 충분히 할 수 있는 작업이기도 한다. 일단 도메인 네임 주소의 구입과 워드프레스 등을 설치할 수 있는 웹서버를 이미 구축했다 가정하고 구입한 도메인 네임 주소의 연결과 SSL 인증서 발급을 통해 https를 적용하는 과정에 대해 설명한다. 만약 워드프레스 등의 설치를 …

  • Apache 웹서버에 MPM 설정으로 성능 개선하기 (prefork , worker, event)

    아파치 웹서버의 다중처리모듈(MPM)이란 ? Apache 웹서버를 설치하면 기본적으로 다중처리모듈은 전통적인 다중요청 처리방식인 prefork 방식으로 동작하도록 설치된다. 다중처리모듈(Multi-Processing-Module) 이란, 여러 이용자(웹브라우저)가 동시에 웹서버에 접속하여 웹페이지를 요청하였을 때 이 요청들을 동시에 처리할 수 있도록 해주는 아파치 웹서버의 모듈이다.  MPM 모듈은 아파치 서버의 다른 모듈들과 마찬가지로 Shared Object 파일 (.so)로 만들어져 아파치 웹서버에 Load 된다. …

  • CentOS에 Docker 설치 – Apache 이미지 설치 – 파일 복사하기

    IT 인프라에서 가상화의 꽃은 뭐니 뭐니해도 지금까지는 응용프로그램 가상화다. 하드웨어의 성능의 발전하면서 하나의 서버 하드웨어에 여러개의 운영체제를 구동하는 "Server Virtualization (서버 가상화)"가 대세인 듯 했으나 하나의 머신에서 실행되는 가상화 된 서버의 개수가 늘어날 수록 운영체제(OS)가 중복 실행되어 리소스가 낭비되는 현상이 심해진다. 이런 문제를 해결함과 동시에 서버에서 실행되는 응용프로그램 개발 및 응용프로그램의 버전관리와 배포 등 관리 편의성을 높이기 위해 등장한 것이 바로 "Application …

  • Apache2 웹서버에 https 적용하기 (Let’s Encrypt SSL Certificate)

    가장 즐겨 사용하는 장난감(?) 중 하나는 미니PC에 구축해놓은 VMWare ESXi 6.5다. 인텔 i5 CPU와 SSD 256G x 2 ea, 32G 램이 달려 있는 이 미니PC에는 리눅스, Windows Server와 Windows Pro 등 여러개의 가상머신을 구성해두었다. 물론 스펙이 딸리니 동시에 4개 이상은 조금 무리이긴 하다. 하지만 이것저것 테스트를 하는데는 전혀 문제가 없다. 그런데 요즘은 조금만 돈을 들이면 그다지 부담되지 않는 저렴한 요금만으로도 가상서버를 구축할 수 있는 클라우드 서비스도 있다. 예를 들자면 …

  • 웹 로그 수집을 위한 access.log 증분 수집 스크립트

    로그 수집 이슈 서버 HW, 운영체제 그리고 서버에서 실행되는 웹 서버 등의 애플리케이션의 상태와 해킹 시도 등을 탐지하기 위해 각종 로그를 수집하는 것은 서비스 상태의 모니터링과 보안관제 등의 업무에서 필수적인 요소다. 그래서 ESM(Enterprise Security Management) 솔루션은 물론이고 SIEM과 보안관제 등의 솔루션에서 서버에 쌓이는 로그파일을 수집하는 기능을 제공하며 로그를 수집하기 위해 Syslog 를 이용하는 등 다양한 방법을 사용할 수 있다. 하지만 syslog나 snmp 등을 지원하지 않는 웹서버 …

  • SSL인증서 적용하여 HTTPS 구현하기 (그누보드 로그인에 https 적용하기)

    웹서버는 기본적으로 HTTP 프로토콜을 사용합니다. 그리고 그누보드와 같은 게시판 소스를 이용하든 직접 개발한 웹 소스의 로그인 폼을 사용하든 로그인페이지에서 입력한 ID와 비밀번호는 스니핑과 같은 기본적인 해킹기법에도 유출됩니다. 로그인 시 입력한 ID와 비밀번호를 네트워크 상에서 가로채는 것을 차단하기 위해서는 http 프로토콜 대신 보안성이 강화된 https 프로토콜을 사용해야 합니다. https는 http 프로토콜의 암호화 버전이라고 생각하면 됩니다. https 의 s는 SSL을 의미합니다. 그런데 https 를 적용하기 위 …

  • 그누보드 5의 이메일 발송 기능 사용하기

    게시판을 모아둔 웹사이트를 구축할 때 많이 사용되는 무료게시판 중에 그누보드(GNUBOARD)라는 게시판 솔루션이 있습니다. 저도 애용하는 게시판 소스 중 하나인데요. 이 그누보드는 메일발송 기능까지 포함고 있습니다. 내부적으로는 PHPMailer라는 메일발송 라이브러리를 연동하여 제공하는 기능이죠. 그누보드의 이메일 사용 설정 이 그누보드의 메일발송기능은 다음과 같이 그누보드의 관리자 페이지에서 설정할 수 있습니다. 위 설정화면에서 처럼 회원가입한 사람이 있으면 등급설정을 위해 관리자에게 회원가입 신청이 있음을 알려주는 설정을 비 …

  • 302 리다이렉트 공격기법에 대하여

    최근 "302 리다이렉션 공격"이라는 해킹이 유행하고 있는 듯 합니다. 마치 새로운 대단한 공격 기법인 것처럼 호들갑을 떨지만 이것은 새로운 공격 기법은 아닙니다. 홈페이지를 변조하거나 웹 브라우저가 요청한 웹페이지에 대해 특정 자바스크립트 코드를 삽입하여 클라이언트 PC의 웹 브라우저가 악성코드를 다운로드 받게 하는 하는 수많은 공격 기법과 전혀 다를 바가 없는 일반적인..흔하디 흔한 공격 기법 입니다. 다만 302 리다이렉션은 수많은 네트워크 보안솔루션들을 우회하기 위해 등장한 변종 기법이라는 점에서 주의해야 합니다.  홈페이지 …

  • 톰캣 2개 설치 후 세션 정보 (JSESSIONID)가 꼬이는(?) 문제

    윈도 서버의 IIS와는 달리 Java 가상머신 위에서 구동되는 톰캣은 하나의 머신에 여러개가 설치되어 각각 구동될 수 있다. 특히 윈도서버에 설치되는 이런 저런 솔루션들은 톰캣과 JDK를 내장하고 웹서비스를 제공하는 경우가 있다. 이런 경우 JDK와 톰캣이 2개 이상 동시에 구동된다. 톰캣은 기본적으로 TCP/8080 포트로 웹서비스를 제공한다. 두개를 설치하였다면 둘중 하나의 서비스 포트를 8080 이외의 다른 포트번호로 변경하여 주면 두개의 톰캣이 각기 다른 JDK를 이용해 구동되는 것이 가능하다. 하지만 여기에서 문제가 발생하 …