'리눅스 자료'에 해당되는 글 10건
- 2009/04/29
- 2009/04/28
- 2009/04/27
- 2009/04/27
- 2009/04/27
- 2009/04/26
- 2009/04/26
- 2009/04/24
- 2009/01/11
- 2007/03/26
| RAID에 대한 소개 및 RAID를 이용한 시스템의 복구 (0) | 2009/04/29 |
|---|---|
| SSH의 Brute Force Attak을 막기 (0) | 2009/04/28 |
| DoS 공격 방어 모듈 mod_evasive 설치기 (1) | 2009/04/27 |
| CentOS 5.3 + Kernel 2.6.29.1 + iptables 의 connlimit 모듈 설치하기 (2) | 2009/04/27 |
| 공개 웹방화벽 ModSecurity 모듈 설치기 (0) | 2009/04/27 |
| iptables에 대한 이모저모 (0) | 2009/04/26 |
| RAID에 대한 소개 및 RAID를 이용한 시스템의 복구 (0) | 2009/04/29 |
|---|---|
| SSH의 Brute Force Attak을 막기 (0) | 2009/04/28 |
| DoS 공격 방어 모듈 mod_evasive 설치기 (1) | 2009/04/27 |
| CentOS 5.3 + Kernel 2.6.29.1 + iptables 의 connlimit 모듈 설치하기 (2) | 2009/04/27 |
| 공개 웹방화벽 ModSecurity 모듈 설치기 (0) | 2009/04/27 |
| iptables에 대한 이모저모 (0) | 2009/04/26 |
| RAID에 대한 소개 및 RAID를 이용한 시스템의 복구 (0) | 2009/04/29 |
|---|---|
| SSH의 Brute Force Attak을 막기 (0) | 2009/04/28 |
| DoS 공격 방어 모듈 mod_evasive 설치기 (1) | 2009/04/27 |
| CentOS 5.3 + Kernel 2.6.29.1 + iptables 의 connlimit 모듈 설치하기 (2) | 2009/04/27 |
| 공개 웹방화벽 ModSecurity 모듈 설치기 (0) | 2009/04/27 |
| iptables에 대한 이모저모 (0) | 2009/04/26 |
| SSH의 Brute Force Attak을 막기 (0) | 2009/04/28 |
|---|---|
| DoS 공격 방어 모듈 mod_evasive 설치기 (1) | 2009/04/27 |
| CentOS 5.3 + Kernel 2.6.29.1 + iptables 의 connlimit 모듈 설치하기 (2) | 2009/04/27 |
| 공개 웹방화벽 ModSecurity 모듈 설치기 (0) | 2009/04/27 |
| iptables에 대한 이모저모 (0) | 2009/04/26 |
| SSH포트를 변경하기 (0) | 2009/04/26 |
| DoS 공격 방어 모듈 mod_evasive 설치기 (1) | 2009/04/27 |
|---|---|
| CentOS 5.3 + Kernel 2.6.29.1 + iptables 의 connlimit 모듈 설치하기 (2) | 2009/04/27 |
| 공개 웹방화벽 ModSecurity 모듈 설치기 (0) | 2009/04/27 |
| iptables에 대한 이모저모 (0) | 2009/04/26 |
| SSH포트를 변경하기 (0) | 2009/04/26 |
| Webalizer 설치기 (0) | 2009/04/24 |
| CentOS 5.3 + Kernel 2.6.29.1 + iptables 의 connlimit 모듈 설치하기 (2) | 2009/04/27 |
|---|---|
| 공개 웹방화벽 ModSecurity 모듈 설치기 (0) | 2009/04/27 |
| iptables에 대한 이모저모 (0) | 2009/04/26 |
| SSH포트를 변경하기 (0) | 2009/04/26 |
| Webalizer 설치기 (0) | 2009/04/24 |
| CentOS에 MySQL UTF-8 설치하기 (0) | 2009/01/11 |
| 공개 웹방화벽 ModSecurity 모듈 설치기 (0) | 2009/04/27 |
|---|---|
| iptables에 대한 이모저모 (0) | 2009/04/26 |
| SSH포트를 변경하기 (0) | 2009/04/26 |
| Webalizer 설치기 (0) | 2009/04/24 |
| CentOS에 MySQL UTF-8 설치하기 (0) | 2009/01/11 |
| Linux에서 Apache 2.0.59 와 Tomcat 5.0.28 연동하기 (0) | 2007/03/26 |
| 공개 웹방화벽 ModSecurity 모듈 설치기 (0) | 2009/04/27 |
|---|---|
| iptables에 대한 이모저모 (0) | 2009/04/26 |
| SSH포트를 변경하기 (0) | 2009/04/26 |
| Webalizer 설치기 (0) | 2009/04/24 |
| CentOS에 MySQL UTF-8 설치하기 (0) | 2009/01/11 |
| Linux에서 Apache 2.0.59 와 Tomcat 5.0.28 연동하기 (0) | 2007/03/26 |
소스코드를 다운 받고나서 압축을 풀고 다음과 같은 설정을 해준다.
X64일경우 PHP 컴파일시 에러가 발생하는 것을 막기 위하여 export CFLAGS='-fPIC' 를 먼저 날려준다.
--prefix=/usr/local/mysql
기본적으로 mysql 설치할 폴더를 정해준다. 실행파일이나, 설정파일을 따로 나눠 사용할 경우는 컨피규어 옵션에서 따로 다 설정해주어야 한다. 그런 경우는 모 ... 찾아보자면 ... 각 폴더에 모두 나누어 놓는 것도 사실 참 귀찮다.ㅡㅡ;
--with-charset=utf8
여기서 기본적으로 코드는 euc-kr을 쓴다. utf-8을 쓸 경우는.. 모 charset만 고쳐주면 될 것이다.
--localstatedir=/u01/data/mysql
mysql 데이터 파일 저장은 /u01/data/mysql 폴더에 해줍니다. 이건 없으면 mysql폴더 아래로 위치해지게 되겠다.
--with-innodb
innoDB를 사용하려면 이 옵션을 꼭 넣어 주어야 한다.
--with-mysqld-user=mysql
mysql실행 유저를 결정한다.
--with-unix-socket-path=/var/lib/mysql/mysql.sock
요건 소켓파일의 위치를 알려준다. data쪽에 넣어 두지 말고 var폴더에 잘 넣어 주도록 하자. tcp/ip대신 유닉스 소켓을 사용하여 최적의 성능을 끌어 낸다.
--with-client-ldflags=-all-static --with-mysqld-ldflags=-all-static
컴파일 옵션으로 'CXX=gcc'를 사용할 때 오류를 피하기 위해 공유 라이브러리를 사용하지 않음
실행 성능을 높일 수 있다.
--without-debug
질의시 디버깅 코드를 사용하지 않기 때문에 빠른 속도를 얻어낼 수 있다.
configure을 실행한 후.. 모.. 컴파일을 해야 겠지.. 컴파일을 하자.
그다음에는.. make
make install을 해주자..(요놈은 root권한으로 해야 한다)
그럼 mysql은 설치가 다 되었다.
그 다음 할일은 무엇인가? 바로 mysql 사용자를 만드는 것이다.
이유는 mysql동작을 root가 아닌 mysql유저가 하도록 하는 것이다. 보안상의 문제~
그룹명은 mysql로 하는 것이 일반적이다. 근데 난 걍 dba로 할란다.
그 다음은 설치된 폴더에 대해 권한을 부여하자.
그 다음에 mysql data가 저장될 폴더를 생성한다.
다음은 초기 데이터를 생성해야 한다.
그 이후 퍼미션도 조정해 준다.
mysql을 실행한다.
다음은 root권한을 설정해 준다.
그 다음은.. 라이브러리에 등록한다. 물론 루트 권한으로..
mysqld 자동 시작을 위해 다음과 같이 스크립트를 복사해 준다.
다음은 자동 시작 등록을 해주자.
마지막으로 익명접근권한을 삭제하자.. mysql 콘솔에 그냥 접근을 못하게 해야 한다.
root 권한으로 접근하여.. mysql 데이터베이스를 선택한 후 다음 쿼리문을 실행한다.
delete from user where password = "";
그 후에 mysql을 재시작 한다 일단은 콘솔을 종료하고... 쉘에서..
mysqladmin -u root -p reload
다음은 설치파일의 support-files폴더에 있는 my.cnf파일을 복사한다.
cp my-large.cnf /etc/my.cnf // 메모리에 따라서 파일이 달라진다.
| 공개 웹방화벽 ModSecurity 모듈 설치기 (0) | 2009/04/27 |
|---|---|
| iptables에 대한 이모저모 (0) | 2009/04/26 |
| SSH포트를 변경하기 (0) | 2009/04/26 |
| Webalizer 설치기 (0) | 2009/04/24 |
| CentOS에 MySQL UTF-8 설치하기 (0) | 2009/01/11 |
| Linux에서 Apache 2.0.59 와 Tomcat 5.0.28 연동하기 (0) | 2007/03/26 |
Apache 2.0.59 및 Tomcat 5.0.28을 연동하기 위해서 먼저 서버에 Apache 및 Tomcat이 깔린 상태여야 한다.
Tomcat은 java기반의 web server로서 Tomcat을 설치하기 위해서는 우선 먼저 JDK가 서버에 깔려있어야 한다.
http://java.sun.com 에 가서 최신 j2sdk 1.5버젼을 다운로드 받는다.
(참고로 톰캣 5.0에는 필히 jdk 1.5 버젼대 여야만 제대로 동작한다.)
다운로드 받은 소스를 적당히 위치에 저장하고서 압축을 해제하고 필요한 환경변수만 적어주면 Java설치는 끝이난다.
적당한 위치로 배포파일을 옮겨서 파일을 실행시킨다
실행 전 배포파일의 퍼미션을 확인하여 실행가능한 퍼미션을 갖도록 설정을 한다.
사용권 계약이 화면에 출력되면 y 또는 yes를 입력하여 동의한다.
이 후 설치가 계속 진행되어 jdk1.5.0_08 폴더가 생긴다.
다음 디렉토리를 /usr/local/java에 옮긴다.
/etc/profile을 편집하여 PATH 설정을 해준다.
profile 첫부분에 다음을 추가해준다.
변경된 설정을 시스템에 적용시킨다.
임의의 위치에서 java를 실행시킨다.
JAVA option들이 화면에 출력되면 성공적으로 설치가 이루어진 것이다.
현재 Apache 웹데몬이 실행되고 있다면 실행을 중지시킨다.
http://httpd.apache.org/download.cgi 에서 Apache 2.0.59를 다운로드 받는다.
리눅스에서 설치할 Apache의 배포본은 모두 소스 형식으로 제공된다.
배포파일 httpd-2.0.59.tar.gz
적당한 위치에서 다운로드 받은 배포파일의 압축을 푼다.
생성된 디렉토리 httpd-2.0.59로 이동한다.
다음과 같은 옵션을 사용하여 configure를 진행한다.
옵션, 모듈 및 DSO에 대한 자세한 사항은 이후 추가적으로 설명할 것이다.
이어서 컴파일과 인스톨을 실행한다.
* configure 옵션 (autoconf 출력옵션)
--prefix=/usr/local/apache2
--prefix는 말그대로 apache를 지정된 폴더에 일괄로 설치하겠다는 뜻이다. 여기서는 컴파일된 아파치 파일들이 /usr/local/apache2 폴더에 설치가 되여진다.
--enable-modules=so
mod_so(so_module)를 Apache에 컴파일하여 포함시킨다.(모듈의 정적 컴파일)
기본형은 --enable-modules=[MODULE-LIST]로 공백으로 구분한 [MODULE-LIST]에 나와있는 모듈들을 컴파일하여 포함한다.
--enable-so
Apache가 실행시 특별한 옵션없이 자동으로 동적공유객체(DSO-Dynamic Shared Objects)를 읽어들일 수 있도록 하기 위한 설정옵션이다.
* 모듈
Apache는 모듈화된 설계로 이루어진 프로그램이다.
모듈은 특별한 기능을 수행하기 위한 작은 프로그램으로 이해할 수 있다.
즉, 모듈마다 각각의 역할이 다르기 때문에 핵심 구현부 또는 실행부에 추가적으로 포함시켜 원하는 기능을 선택적으로 사용할 수 있다.
Apache의 핵심 기능을 구현하는 모듈은 core이고 core를 기반으로 모듈을 추가하여 확장된 기능을 사용할 수 있다.
모듈은 Apache 컴파일시 정적으로 포함시킬 수 있고, 또는 DSO mechanism에 의해 Apache 컴파일 이후 추가적으로 포함하여 사용할 수 있다.
DSO(Dynamic Shared Objects)를 지원하기 위해서는 컴파일시 configure 옵션으로 --enable-rule=SHARED_CORE를 추가하여 DSO 지원 형식으로 Apache를 컴파일하여야 하며, mod_so 모듈을 컴파일시 포함시켜야 한다.
mod_so 모듈은 core를 제외하고 DSO가 될 수 없는 유일한 모듈로서 Apache 핵심에 정적으로 컴파일해야 하며, DSO로 컴파일된 모듈을 Apache에서 읽어들이기 위한 기능을 제공한다.
따라서 configure 진행시 일반적으로 mod_so를 포함하도록 한다.
* 동적공유객체(DSO-Dynamic Shared Objects)
Apache가 동적으로 load할 수 있는 객체이다.
core와 mod_so를 제외한 다른 모든 아파치 모듈 소스를 DSO 형식의 모듈로 컴파일하여 Apache에서 load하여 사용할 수 있다.
DSO로 사용할 아파치 모듈을 쉽게 만들기 위해서 apxs(Apache Extension Tool)라는 지원프로그램이 있다.
이 프로그램으로 아파치 배포본 소스 트리 없이, DSO 지원을 위한 플랫폼 특유의 컴파일러 옵션과 링커 옵션을 고려하지 않고 모듈 소스를 DSO 모듈로 쉽게 컴파일할 수 있다.
PHP와 Tomcat 등 외부 프로그램에서 제공하는 DSO 모듈은 프로그램 configure시 apxs를 사용한 옵션을 통해 프로그램과 함께 컴파일되어 생성된다.
* Servlet Container의 종류
1) Sun Microsystems 제공 Servlet Container
JSDK(Java Servlet Development Kit)
JSWDK(JavaServer Web Development Kit)
J2EE(Java2 SDK, Enterprise Edition)
Java Web Server(iPlanet Web Server)
2) Apache 제공 Servlet Container
Apache JServ, Tomcat
3) 기타 Servlet Container
JRun/JRun Pro, Resin, WebLogic, Web Sphere, IAS
* Tomcat
Tomcat은 Apache Software Foundation의 Jakarta 프로젝트의 일환으로 개발중인 소프트웨어이다.
Tomcat은 Java Servlet과 Java Server Page를 사용할 수 있도록 하는 Servlet Container이며 독립적으로 웹서버의 기능을 수행한다. 그러나 일반 html 문서도 Servlet Container를 통해 번역되므로 수행속도가 느리고 웹서버로서의 기능에 제한이 있으므로 보통 다양한 모듈과 막강한 기능을 가지고 있는 Apache 웹서버와 연동하여 사용한다.
배포본은 binary와 source 형식으로 제공된다. 여기서는 바이너리 배포본의 설치만 설명하련다. The Apache Jakarta Project 홈페이지의 Downloads 부분에 있는 CVS repositories는 현재 개발중인 소스들을 확인하고 다운로드 받을 수 있는 페이지이다.
http://tomcat.apache.org/download-55.cgi에서 Tomcat 5.0.28의 tarball 형식의 배포본을 다운로드 받는다.
배포파일 jakarta-tomcat-5.0.28.tar.gz
적당한 위치(설치하고자 하는 경로)에서 압축을 풀어준다.
바이너리 배포본은 압축을 풀어줌으로 기본적인 설치가 완료된 것이다.
Jakarta-tomcat-5.0.28 디렉토리가 생성되고 압축이 풀린다.
실행파일이 들어있는 디렉토리로 이동해서 Tomcat을 실행시켜본다.
Using CATALINA_BASE: /usr/local/tomcat
Using CATALINA_HOME: /usr/local/tomcat
Using CATALINA_TMPDIR: /usr/local/tomcat/temp
Using JAVA_HOME: /usr/local/java
위의 메시지가 나오면 Tomcat이 정상적으로 작동하는 것이다.
클라이언트에서 웹브라우저를 통해 다음의 주소로 접속한다.
http://localhost:8080 또는 http://설치한서버의주소:8080
정상적으로 Tomcat이 작동하고 있다면 브라우저에 Tomcat 관련 문서가 나타날 것이다.
만일, 정상적으로 작동하지 않는다면 J2SE의 설치가 제대로 이루어지지 않았거나 PATH 설정이 올바르게 이루어지지 않아서이다.
/etc/profile을 에디터로 열어서 J2SE 설치 시 PATH 설정한 부분을 확인해 보자.
마지막으로 PATH를 설정해준다.
PATH 설정은 /etc/profile을 편집하여 이루어진다.
/etc/profile을 에디터로 열어서 J2SE 설치 시 PATH 설정한 부분에 다음을 추가한다.
변경된 설정을 시스템에 적용시킨다.
shell> source /etc/profile
PATH를 설정해주었으므로 임의의 위치에서 Tomcat을 실행시킬 수 있다.
The Apache Jakarta Project 사이트에서 JK2 connector를 다운로드 받는다.
JK2의 binary 배포본은 Solaris와 WIN32용 만이 배포되고 있으므로 소스 형태의 배포본을 다운로드 받아야 한다.
http://jakarta.apache.org/site/sourceindex.cgi 에서 JK 2.0.4 Source Release tar.gz를 다운로드 받는다.
배포파일 jakarta-tomcat-connectors-jk2-src-current.tar.gz
JK2 connector 소스를 컴파일 하면 얻을 수 있는 것이 mod_jk2.so 모듈이다.
Apache 웹서버와 Tomcat을 연동할 mod_jk2.so 모듈을 얻는 것이 컴파일의 목적이다.
적당한 위치에서 압축을 풀어준다.
소스들을 컴파일하고 필요한 파일들을 이동시키면 더 이상 사용하지 않기 때문에 /usr/local/src에서 압축을 풀어주겠다.
압축이 풀리면 해당 디렉토리로 이동한다.
configure 옵션(autoconf 출력옵션) --with-apxs2[=FILE]
Apache 2.0 에서 공유할 DSO 모듈을 build하기 위해 사용한다.
FILE은 Apache apxs tool이 있는 경로를 나타낸다.
1) Apache의 환경파일 수정한다.
233번째 줄정도에 추가한다. 이것은 외부에 있는 jk2모듈을 끌어들임으로서 apache와 tomcat을 정확인 연동하기 위해서 이다.
2) workers2.properties 생성한다.
아래 부분들을 그대로 복사하여 workers2.properties파일에 넣고 저장한다.
재시작할때는 먼저 톰캣을 시동하고 다시 아파치를 시동한다.
자동시작하려면 /etc/rc.d/rc.local속에 아래 스크립트를 추가해야 한다.
여기서 주의할점은 톰캣이 시동시 JAVA_HOME이 꼭 PATH에 잡혀있어야함으로 필히 위에서와 같이 설정해주어야 한다.^^
| 공개 웹방화벽 ModSecurity 모듈 설치기 (0) | 2009/04/27 |
|---|---|
| iptables에 대한 이모저모 (0) | 2009/04/26 |
| SSH포트를 변경하기 (0) | 2009/04/26 |
| Webalizer 설치기 (0) | 2009/04/24 |
| CentOS에 MySQL UTF-8 설치하기 (0) | 2009/01/11 |
| Linux에서 Apache 2.0.59 와 Tomcat 5.0.28 연동하기 (0) | 2007/03/26 |