리눅스 서버 셋팅 From kc
Linux 세팅시
root 로긴후
cd /
cd etc/xinetd.d <- /etc/xinet.d로 디렉토리 이동
vi telnet 파일을 안에
disable = no로 설정을 변경한다
cd /
cd sbin
service xtinetd stop <- /sbin 디렉토리에 있다
service xtinetd start(데몬 재시작)
Local 텔렛을 실행하기 위한 설정이다
===================================================================================================
* 서버셋팅
보통 IDC에서 기본적인 셋팅을 해서 mysql이란 계정으로 준다
기본적인 설정을 위해 새로운 계정과 서버네임 세팅을 해야한다
1. 신규 계정을 만드는 명령어는
usr/sbin/adduser 계정이름
설정된 계정의 패스워드를 설정해야한다.
passwd 계정이름
그리고 패스워드를 묻는데 설정할 패스워드를 적으면 된다
2. 서버명 설정 및 ip 설정
vi /etc/sysconfig/network 파일 열어 hostname과 gateway를 설정한다
예]
파일
NETWORKING=yes
HOSTNAME=seektime <- 보통 도메인 네임으로 설정
GATEWAY=210.127.68.1
vi /etc/sysconfig/i18n 파일을 열어 언어를 설정
LANG="ko_KR" <- 맨 윗줄을 수정
vi /etc/hosts 파일 열어 ip와 hostname을 설정한다
예]
파일
127.0.0.1 localhost
210.127.68.11 seektime
=> 새롭게 한줄 추가
(이렇게 안하면 도메인이 등록되어 있지 않는 경우 특정소프트(아파치, Mysql)등이 실행이 안된다
vi /etc/sysconfig/network-scripts/ifcfg-eth0 파일 열어 ip와 hostname을 설정한다
예]
파일
DEVICE=eth0
BOOTPROTO=static
BROADCAST=210.127.68.255 <- 해당 ip와 모두 같고 맨뒤만 255로 설정
IPADDR=210.127.68.16 <- 부여 받은 ip 설정
NETMASK=255.255.255.128 <- 부여 받은 서브넷 마스크 설정
NETWORK=210.127.68.0 <- 해당 ip와 모두 같고 맨뒤만 0로 설정
ONBOOT=yes
=> 서버가 외부 인터넷망과 연결되기 위한 필수 조건이다
3. 편집을 마치고 시스템을 재시동한다.
/usr/sbin/ntsysv를 실행시켜 pop3, imap등을 설정, proftpd를 해제 한다음 재시동한다
sync -> 기존의 데몬 프로그램들의 연결 포인트 해제
/sbin/init 6 -> 재부팅하면 외부에서도 텔렛으로 접속이 가능하다
=> 여기까지가 계정(사용자)설정, hostname 설정, ip설정, 데몬의 설정이 끝났다.
====================================================================================================
이제부터 소프트웨어 설치이다.
cd /usr/local/src에 가서
linuxXXXX.tar.gz파일을 확인한다 => 없으면 다운로드 받아야한다. 여기선 linux0801.tar.gz이다
우선, 압축파일을 푼다
tar zvxf linux0801.tar.gz <- 압축 해제
압축이 풀리면서 많은 파일 생긴다
(ZendOptimizer,Fp_install, httpd-2.0.43.tar.gz, jakarta, mysql, php, resin 등)
javainstall이란 파일을 실행하면 자동 설치가 되지만 꼼꼼히 살펴보겠다
먼저 리눅스 설치시 깔려 있는 아파치 버젼은 1.3.27정도이지만 우리는 2.0.43을 사용하는 관계로 삭제하고
다시 설치를 한다.
/usr/local/apache/bin/apachectl stop <- 아파치 종료
rm -rf /usr/local/apache <- 아파치 파일 삭제
cd /usr/local/lib
rm -rf * <- php 삭제
cd ..
rm -rf Zend <- php 관련 설정부 삭제
=> 기존의 이전 버젼의 프로그램을 삭제후 새로운 프로그램을 설치한다
cd /usr/local/src <- 프로그램 설치를 위한 디렉토리 이동
tar zvxf httpd-2.0.43.tar.gz <- 아파치 압축해제 및 폴더 생성
tar zvxf php-4.3.0.tar.gz <- php 압축해제 및 폴더 생성
tar zvxf ZendOptimizer-2[1].1.0-Linux_glibc21-i386.tar.gz <- 옵티마이져(php관련) 압축해제 및 폴더 생성
tar xvzf jakarta-tomcat-connectors-4.1.18-src.tar.gz <- 톰켓, 아파치 컨넥트 프로그램 압축해제
tar xvzf jakarta-tomcat-4.1.18.tar.gz <- 톰켓 압축해제 및 폴더 생성
mv jakarta-tomcat-4.1.18 /usr/local/tomcat <- 압축해제된 파일 이동(/usr/local/tomcat)
rpm -Uvh compat-libstdc++-6.2-2.9.0.16.i386.rpm <- liunx C++ 시스템 라이브러리 설치(프론트페이지 서버 실행관계로 필요)
rpm -Uvh j2sdk-1_4_1_01-fcs-linux-i586.rpm <- 자바 프로그램 설치
cp mm.mysql-2.0.2-bin.jar /usr/java/j2sdk1.4.1_01/lib <- mysql 자바 drive 복사
cp java.sh /etc/profile.d <- 클래스 설정 파일을 /etc/profile.d로 복사
source /etc/profile <- linux설정을 시스템에 반영
=> 프로그램 설치를 위한 프로그램 준비완료, 이제 개별적으로 세부 설정
=======================================================================================================
지금 부터 하나씩 프로그램을 설치해보자
1. Mysql 설치
/usr/local/src에서 mysql 압축을 풀고 풀린 파일을 /usr/local/mysql로 이동시켜야함
tar zvxf mysql-standard-4.0.12-pc-linux-i686.tar.gz <- mysql-standard-4.0.12-pc-linux-i686 폴더생성
mv mysql-standard-4.0.12-pc-linux-i686 /usr/local/mysql <- /usr/local/mysql로 파일 이동
cd ..
cd mysql <- /usr/local/mysql로 이동
/usr/local/mysql에서
script/mysql_install_db <- mysql 설치
mkdir libexec
cp bin/mysqld libexec <- msyqld 파일을 libexec에 복사
mv data var <- data폴더를 var폴더로 이동
make <- 설치에 따른 구성
make install <- 설치
chown -R root:mysql *
chown -R mysql:mysql var
bin/safe_mysqld --user=mysql & <- mysql 실행
[참고]
./mysql
show databases;
use mysql;
show tables;
select * from user;
2. Apache 설치
cd /usr/local/src/httpd-2.0.43 <- 압축 풀어놓은 디렉토리로 이동
=> 설치에 필요한 설정
./configure --prefix=/usr/local/apache --enable-modules=all --enable-mods-shared=all --enable-so
make <- 설치에 따른 구성
make install <- 설치
/usr/local/apache/bin/apachectl start <- apache 실행후 익스플로러 종료후 재실행
3. PHP 설치
cd .. <- /usr/local/src 디렉토리
cd php-4.3.0
./configure --with-apxs2=/usr/local/apache/bin/apxs --with-apache-install=/usr/local/apache --with-mysql=/usr/local/mysql --with-jpeg-dir --with-zlib-dir --enable-modules=so --disable-debug
=>설치에 필요한 설정
make <- 설치에 따른 구성
make install <- 설치
cp php.ini-dist /usr/local/lib/php.ini <- php.ini-dist를 /usr/local/lib/php.ini라는 위치로 복사
cd .. <- /usr/local/src 디렉토리
cd ZendOptimizer-2.1.0-Linux_glibc21-i386 <- php 젠드 옵티마이져로 이동
./install.sh <- php 젠드 옵티마이져 설치
4. Tomat 및 jsp 설치
cd .. <- /usr/local/src 디렉토리
rm -rf /usr/local/tomcat/conf/server.xml <- 기존의 tomcat 설정 화일을 삭제
cp server.xml /usr/local/tomcat/conf <- /usr/local/src에 미리 백업된 tomcat설정 화일을 복사
cd jakarta-tomcat-connectors-4.1.18-src/jk/native <- tomcat, apache 커넥터 디렉토리로 이동
./buildconf.sh <- 설치 예비작업
./configure --with-apxs=/usr/local/apache/bin/apxs <- 설치에 필요한 설정
make <- 설치에 따른 구성
make install <- 설치
cd /usr/local/tomcat/conf/jk
cp /usr/local/src/workers.properties . <- tomcat설정에 필요한 파일 복사
cd /usr/local/src
mkdir /usr/local/tomcat/common/classes/filters <- tomcat class를 위한 디렉토리 생성
=> 클랙스를 위한 파일 복사(/usr/local/src)
cp SetCharacterEncodingFilter.class /usr/local/tomcat/common/classes/filters
여기까지가 각종 프로그램 설정에 필요한 파일을 설치하는 명령들이다.
========================================================================================================
이제부터는 세부 서버 셋팅을 시작하자
1. tomcat실행을 위한 server.xml 파일편집(/usr/local/tomcat/conf/server.xml)
vi /usr/local/tomcat/conf/server.xml
(1) 주석 삭제 및 수정
<- search할때 대소문자 구별할것, 주석을 제거
docBase=" " <- 루트로 작성
(2) 내용 추가
debug="0"/>
debug="0"/>
<- 이 내용을 추가함
(3) 내용 추가
unpackWARs="true" autoDeploy="true">
<- 이 내용을 추가함
(4) tomcat 실행(jsp 실행 가능)
/usr/local/tomcat/bin/catalina.sh start
tomcat 실행후 ps -ax로 실행 되었는지 확인
2. 아파치 실행을 위한 파일 편집(/usr/local/apache/conf/httpd.conf)
vi /usr/local/apache/conf/httpd.conf
(1) 옵션 변경
# KeepAlive: Whether or not to allow persistent connections (more than
# one request per connection). Set to "Off" to deactivate.
KeepAlive Off <- On을 Off으로 변경
(2) 옵션 추가
# Listen: Allows you to bind Apache to specific IP addresses and/or
# ports, in addition to the default. See also the
# directive.
# Change this to Listen on specific IP addresses as shown below to
# prevent Apache from glomming onto all bound IP addresses (0.0.0.0)
#Listen 12.34.56.78:80
Listen 80 <- Listen 80 으로 변경
(3) 모듈추가
LoadModule rewrite_module modules/mod_rewrite.so <- 기존 모듈
LoadModule php4_module modules/libphp4.so <- 모듈 추가
LoadModule jk_module modules/mod_jk.so <- 모듈 추가
<- 모듈추가에 이어서
JkWorkersFile /usr/local/tomcat/conf/jk/workers.properties <- 내용 추가
JkMount /*.jsp ajp13 <- 내용 추가
JkMount /servlet/* ajp13 <- 내용 추가
(4) 실행 계정 설정
<- 기존 내용
<- 기존 내용
User seektime <- 계정 삽입(ex. seektime 계정)
Group seektime <- 계정 삽입(ex. seektime 계정)
<- 기존 내용
<- 기존 내용
(5) Web 접속시 최초 index 루트 디렉토리 설정(여기 설정된 디렉토리의 index.html이 접속시 나타남)
# DocumentRoot: The directory out of which you will serve your
# documents. By default, all requests are taken from this directory, but
# symbolic links and aliases may be used to point to other locations.
DocumentRoot "/home/seektime" <- (ex. /home/계정)
(6) 디렉토리 설정
# This should be changed to whatever you set DocumentRoot to.
<- (ex. /home/계정)
(7) 설정 변경
# The Options directive is both complicated and important. Please see
# http://httpd.apache.org/docs-2.0/mod/core.html#options
# for more information.
Options Indexes FollowSymLinks <- Options Includes FollowSymLinks ExecCGI로 수정
# AllowOverride controls what directives may be placed in .htaccess files.
# It can be "All", "None", or any combination of the keywords:
# Options FileInfo AuthConfig Limit
AllowOverride None <- AllowOverride All로 수정
(8) Log파일에 주석달기(#)
#ErrorLog logs/error_log <- 주석으로 처리
#LogLevel warn <- 주석으로 처리
#LogFormat "%h %l %u %t "%r" %>s %b "%{Referer}i" "%{User-Agent}i"" combined <- 주석으로 처리
#LogFormat "%h %l %u %t "%r" %>s %b" common <- 주석으로 처리
#LogFormat "%{Referer}i -> %U" referer <- 주석으로 처리
#LogFormat "%{User-agent}i" agen <- 주석으로 처리
#CustomLog logs/access_log common <- 주석으로 처리
(9) 설정 변경
AddDefaultCharset ISO-XXXX <- AddDefaultCharset EUC-KR 변경
AddType application/x-tar .tgz
AddType application/x-httpd-php .php .html <- 추가 수정
AddType image/x-icon .ico
AddHandler cgi-script .cgi <- AddHandler cgi-script .cgi 주석 제거
Include /usr/local/tomcat/conf/auto/mod_jk.conf <- 파일의 맨 끝에 추가
설정 끝
Apache 실행후 익스플러로 죽이고 새로 띄워야 함
3. FrontPage 설치 및 셋팅
(1) apache와 셋팅
설치전 cd /usr/local/apache/conf
> access.conf <- 공란의 파일 생성
> srm.conf <- 공란의 파일 생성
두개의 파일 생성
/usr/local/src/fp_install4.sh <- 설치 및 셋팅
/usr/local/apache/conf/httpd.conf <- 파일 위치 지정
설치시 설명을 잘 읽어 보고 대답한다 (사용 ID 및 Password 설정)
cd /usr/local/apache/conf/ <- 디렉토리 이동
cat srm.conf <- 파일의 내용을 읽어본다
# -FrontPage- version=4.0 <- 내용을 httpd.conf에 붙여넣는다
ScriptAlias /_vti_bin/_vti_adm/ /home/seektime/_vti_bin/_vti_adm/ <- 내용을 httpd.conf에 붙여넣는다
ScriptAlias /_vti_bin/_vti_aut/ /home/seektime/_vti_bin/_vti_aut/ <- 내용을 httpd.conf에 붙여넣는다
ScriptAlias /_vti_bin/ /home/seektime/_vti_bin/ <- 내용을 httpd.conf에 붙여넣는다
위에 4줄을 복사한다
vi httpd.conf <- 파일을 열어 복사한 4줄을 아래와 같이 붙여 넣는다.
ScriptAlias /cgi-bin/ "/usr/local/apache/cgi-bin/" <- 기존 내용
ScriptAlias /_vti_bin/_vti_adm/ /home/seektime/_vti_bin/_vti_adm/ <- 복사하여 붙인 내용
ScriptAlias /_vti_bin/_vti_aut/ /home/seektime/_vti_bin/_vti_aut/ <- 복사하여 붙인 내용
ScriptAlias /_vti_bin/ /home/seektime/_vti_bin/ <- 복사하여 붙인 내용
(2) tomcat과 셋팅
cd /usr/local/tomcat/bin <- tomcat 셋팅을 위한 디렉토리 이동
vi setclasspath.sh <- tomcat과 java 클랙스를 위한 옵션 설정
파일 안에 내용을 추가
# Set standard CLASSPATH
CLASSPATH="$JAVA_HOME"/lib/tools.jar
CLASSPATH="$CLASSPATH":.
CLASSPATH="$CLASSPATH":/usr/java/j2sdk1.4.1_01/jre/lib/ext/mm.mysql-2.0.2-bin.jar <- 내용 추가
CLASSPATH="$CLASSPATH":/home/seektime/WEB-INF/classes <- 내용 추가
CLASSPATH="$CLASSPATH":/usr/local/tomcat/common/lib/servlet.jar <- 내용 추가
CLASSPATH="$CLASSPATH":/usr/local/tomcat/common/lib/jasper-runtime.jar <- 내용 추가
vi /usr/local/tomcat/conf/web.xml
파일 안의 내용중 invoker servlet 주석을 풀어줌
<- 주석 해제
invoker <- 주석 해제
/servlet/* <- 주석 해제
<- 주석 해제
(3) 아파치 restart 후 Frontpage 테스트
4. ProFTP 설치
proftpd-1.2.8-2.i386.rmp 파일을 구해서
rpm -Uvh proftpd-1.2.8-2.i386.rpm <- /usr/sbin 안에 설치된다
/usr/sbin/ntsysv <- 실행해서 Proftp * 체크후 확인을 설정한다
vi /etc/proftpd.conf 환경 설정
파일을 열어 내용 수정
ServerName "탐색시간의 FTP 0.9" <- FTP 서버 이름 설정
ServerType standalone <- standalone 모드로 변경
# Set the user and group under which the server will run.
User nobody
Group nogroup <- nobody로 고쳐야 Group에러가 나지 않음
저장하여 세팅
/etc/rc.d/init.d/proftpd start 하여 ftp 실행
from::
http://php.chol.com/~zmnjkc/renewal/tt/index.php?pl=204
http://blog.naver.com/rosekingdom.do
가지고 있음 좋을 것 같아..퍼왔습니다.. 특히 전 proftpd는 잘 몰랐었는데..