[웹서버] 오늘과 내일 리눅스 웹호스팅서버 셋팅법..
오늘과 내일 서버 셋팅법
? 순서
1. 각종 시스템 초기화
2. msql 설치
3. mysql 설치 (DBI / DBD 설정)
4. apache + php 모듈 설치
5. 웹데몬 (httpd.conf) 환경 설정
6. cgiwrap 설정
7. 카운터 설정
8. frontpage Server Extension 설정
9. 리얼 서버(Real Server) 설정
10. 쿼터(Quota) 설정
11. /etc/crontab 설정
1. 시스템 초기화
(1) /etc/inetd.conf에서 telnet / pop3를 제외한 모든 서비스 주석처리.
(2) /etc/rc.d/rc3.d/에서 불필요한 서비스 삭제
(3) nmap(www10 에 설치) 과 ps aux 로 불필요한 서비스 kill
(4) 알려진 데몬/ 버그 patch http://www.redhat.com/support/updates.html
(5) /etc/issue, issue.net 설정후 /etc/rc.d/rc.local 편집
(6) ztelnet , zip , rotatelogs 등 실행 파일 복사.
2.msql 설치
(1) http://www.hughes.com.au/
에서 최신 버전 다운로드
(2) /usr/local/src/ 에 압축 파일(msql-2.0.11.tar.gz) 복사
(3) tar xvfpz msql-2.0.11.tar.gz
(4) cd msql-2.0.11
(5) make target
(6) cd targets/Linux-2.2.10-i686
(6-1) targets/Linux-2.2.10-i686/src/msql/msqld.c 편집 906-919줄 삭제
# ifdef BETA_RELEASE부터
timeRemain = (863060000 + 60*24*60*60) – time(NULL);
# endif 까지..
(7) ./setup
(8) make all (컴파일)
(9) make install (인스톨)
(10) /usr/local/Hughes 에 설치
(11) adduser msql ( 암호 설정은 하지 않음)
(12) chown -R msql.msql /usr/local/Hughes
(13) vi /usr/local/Hughes/msql.acl.sample 편집 –> msql.acl 로 변경
(14) vi /usr/local/Hughes/msql.conf 편집 –> [w3-msql] Footer=False 로 수정
(15) /usr/local/Hughes/bin/msql2d & 실행
(16) cp /usr/local/Hughes/bin/w3* /www/cgi-bin/
에러가 날 경우 /usr/local/ 디렉토리가 755 인지 확인.
3.mysql 설치
(1) http://ww.mysql.com/에서 최신 버전
다운로드
(2) cd /usr/local/src/ 에 둠,
(3) tar zxvfp mysql-3_23_21.tar.gz
(4) cd mysql-3.23.21
(5) ./configure –prefix=/usr/local/mysql –sysconfdir=/usr/local/mysql/conf —
with-charset=euc_kr
(6) make
(7) make install
추가 : adduser mysql
chown -R mysql.mysql /usr/local/mysql/bin
chown -R mysql.mysql /usr/local/mysql/var
이후는 mysql 계정으로 작업
(8) cd /usr/local/mysql/bin
(9) ./mysql_install_db
(10) cp /usr/local/mysql/share/mysql/mysql.server /usr/local/mysql/bin/
(11) chmod 755 /usr/local/mysql/bin/mysql.server
(12) /usr/local/mysql/bin/mysql.server start
(12) /usr/local/mysql/bin/mysqladmin -u root password ‘12345’
root 계정으로 다시 돌아옴
(13) /etc/rc.d/rc.local 에
su mysql -c “/usr/local/mysql/bin/mysql.server start” 추가
(14) http://www.mysql.com/downloads/api-dbi.html 에서 perl Module 다운로드
Data-Dumper (for perl 5.004.X)
DBI 1.13
Msql-Mysql-modules 1.2209 다운로드후 /usr/local/mysql에서 압축해제
(15) tar zxvfp DBI-1.13.tar.gz
tar zxvfp Data-Dumper-2.0.9.tar.gz
tar zxvfp Msql-Mysql-modules-1.2209.tar.gz
(16) cd Data-Dumper-2.0.9
(17) perl Makefile.PL ; make ; make test ; make install
(18) cd DBI-1.13
(19) perl Makefile.PL ; make ; make test ; make install
(20) cd Msql-Mysql-modules-1.2209
(21) perl Makefile.PL
5번 Everything 선택
(22) 이후 계속 Y 와 각각의 설치 경로 설정 (/usr/local/mysql, /usr/local/Hughes)
(23) make
(24) make test
(25) make install
(26) #!/usr/bin/perl
use Msql;
print “Content-type: text/html\\n\\ntest”;
를 test.cgi 로 실행후 에러 메시지 출력여부 확인
4.apache + php 설치
(1) http://www.apache.kr.net/ http://www.php.net/에서 다운
(2) cd /usr/local/src/
(3) tar zxvfp apache_1.3.12.tar.gz
tar zxvfp php-4.0.1.tar.gz
(4) cd apache-1.3.12
(5) ./configure –prefix=/www 설치 디렉토리가 /www 이다.
(6) cd ../php-4.0.1
(7) ./configure –with-mysql=/usr/local/mysql –with-apache=../apache_1.3.12 –
-enable-track-vars –disable-debug
(8) make
(9) make install
(10) system.tt 자료실에서 Zend-Optimizer 을 받은후
/usr/local/src에 Zend Optimizer를 설치.
tar zxvfp ZendOptimizer-RC1-Linux-glibc2[1].1.tar.gz
cd ZendOptimizer-RC1-Linux-glibc2.1
cp ZendOptimizer.so /usr/local/lib/
(10) cd ../apache-1.3.12
(11) ./configure –prefix=/www –activate-module=src/modules/php4/libphp4.a
(12) make
(13) make install
(14) cd ../php-4.0.1
(15) cp php.ini-dist /usr/local/lib/php.ini
php.ini 마지막에 다음줄 추가.
[Zend Optimizer]
zend_optimizer.optimization_level=7
zend_extension=”/usr/local/lib/ZendOptimizer.so”
(16) /www/conf/httpd.conf에서
AddType application/x-httpd-php .php .php4 .php3
AddType application/x-httpd-php-source .phps 설정
(17) /etc/rc.d/rc.loal 에 /www/bin/apachectl start 추가
(18) <? phpinfo(); ?> 로 index.php 로 하여 확인
This program makes use of the Zend scripting language engine:
Zend Engine v1.0.1, Copyright (c) 1998-2000 Zend Technologies
with Zend Optimizer v0.99, Copyright (c) 1998-2000, by Zend Technologies
메시지가 뜨는지 확인.
5. 기존의 설정을 참고로 httpd.conf 환경 설정후 /www/bin/apachectl start
6. cgiwrap 설치
(1)기존 서버에서 cgiwrap-3.6.2.tar.gz 복사
(2) /usr/local/src에서 압축을 푼후 생성된 디렉토리에서
(3) ./configure –with-httpd-user=nobody
(4) make
(5) make install
(6) cp cgiwrap /www/cgi-bin/
(7) cd /www/cgi-bin
(8) chown root.root cgiwrap
(9) chmod 4755 cgiwrao
(10) ln -s cgiwrap cgiwrapd
ln -s cgiwrap nph-cgiwrap
ln -s cgiwrap nph-cgiwrapd
7, 카운터 설정
(1) http://www.muquit.com/muquit/software/Count/Count_download.html
에서 최신 버 전 다운로드후 /usr/local/src/wwwcount-2.5 로 이동
(2) tar zxvfp wwwcount.tar.gz
(3) cd wwwcount-2.5
(4) make config.h /www/cgi-bin/Counter 에 설치.(Log,conf,data,digits 생성)
(5) make all
(6) make cfg
(7) make install
count.cfg 에 각종 설정옵션 변경가능
8. Frontpage Server Extension 2000 설정
(1) 기존 서버에서 /usr/local/fp40.linux.tar.gz 와 fp_install.sh를 복사
(2) /usr/local/fp_install.sh* 실행 (chmod 755 fp_install.sh)
(3) /usr/local/frontpage 에 설치
/bin/zcat 로 압축 해제
서버 익스텍션(http://frontpage.town.cc/ 참조) 은 프런트 페이지를 이용하여 게시판 /
방명록 / 카운터 / 온라인 주문서등 서버에서 보다 확장된 기능을 이용할 수 있으나 유닉
스 계열에서는 온라인 주문서나 게시판등 몇가지 제한적인 기능들이 많이 있다.
NT 서버에서는 위의 기능을 이용할 수 있다.
9.Real 서버 셋팅
(1)http://proforma.real.com/rn/servers/eval/index.html?program=basic에서
다운
또는 기존 root에서 g2p3-linux-c6.bin , 7615-03-23-010102002219281.lic 복사
(2) ./g2p3-linux-c6.bin 실행 /usr/local/real 에 설치
동시 접속 20명.
리얼 서버는 Real Encoder 등으로 제작한 ra / rm 파일을 PC 로 다운로드 받지 않고 서
버상에서 직접 Play 되면서 다운이 되도록 서버상에 데몬으로 상주하는 서비스.
Real Server 에서 특정 디렉토리이하에 대해 Real Service 가 가능하도록 설정을 하고
사용자는 Real 데이터를 메타화일( Real 화일이 있는 경로만을 나타내는 화일) 로 구성
을 하여 불특정 다수가 해당 디렉토리 이하에 있는 리얼 화일에 대해 접근을 시도할 때
Real 서버가 작동을 하게 되는 것.
데이터 : real.rm
메타화일 : real.ram (( pnm://tt.co.kr/real.rm ))
HTML : real.ram 을 링크(<a href=”real.ram”>real 화일</a>
10. 쿼터 설정
(1) /etc/fstab 편집
/dev/hda5 /home2 ext2 defaults,usrquota=/home2/.quota 1 2 와 같이 설치
touch /home2/.quota ( size 가 0 인 .quota 파일 생성)
chmod 600 /home2/.quota (권한 설정)
(2) /sbin/quotacheck -a (쿼터 체크를 하면 .quota 에 쿼터에 대한 정보가
파일에 저장된다.)
edquota -p abc xyz
를 하면 abc 의 쿼터 설정을 xyz 에게 똑같이 복사할수 있다. 단 이때 같은
파티션에 있는 계정일 경우에만 유효하다.
11. /etc/crontab
02 2 * * * root run-parts /etc/cron.daily –> backup, weblog
32 1 * * * root run-parts /etc/cron.weblog –> log
10 4 * * 2,4 root run-parts /etc/cron.backup –> backup
0 0 * * 1 root rdate -s time.bora.net && clock -w
/etc/crontab 은 7개의 필드로 구성(6번째는 생략 무방)되어 있다.
분 / 시간 / 날짜 / 달 / 요일 / 사용자 / 명령
사용자는 생략 가능
12. /bin/Popsh 를 설정(chmod 755 Popsh)
Pop3 용 shell 설치.
13. /etc/skel/을 타서버에서 복사.
.bashrc .bash_profile 편집.
14. proftpd.conf 화일 설정
/etc/proftpd.con에서
LsDefaultOptions “-a” 추가
/etc/hosts에서
127.0.0.1 localhost localhost.localdomain
210.121.176.235 www10.tt.co.kr www10 와 같이 재설정.
15. Tcp Wrapper 셋팅
/etc/hosts.deny /etc/hosts.allow
/etc/hosts.denyck 파일을 기존 서버에서 복사.
권한은 반드시 755.