리눅스 호스팅서버 관리

홈 > 서버 > 리눅스 > centos7
리눅스

리눅스 호스팅서버 관리

사랑으로 0 462

리눅스 호스팅서버 관리

***********************************************************

* 호스팅서비스에 필요한 것들
- 리눅스 운영체제
- 아파치 웹서버
- MySQL 데이터베이스
- PHP, Perl 등과 같은 웹프로그래밍언어
- 메일서비스 지원을 위한 Sendmail, Qmail, POP, IMAP
- Webalizeraccesswatch 등을 이용한 웹로그분석 제공
- Proftpd, vsftpd를 이용한 FTP서비스
- BIND를 이용한 DNS서비스
- 여러가지 라이브러리 및 어플리케이션들
- 백업서버 구축

* 신규 호스팅가입자 서버셋팅
1. 사용자 ID, 패스워드 생성
# useradd gnit
# passwd gnit
2. 사용자 호스팅용 홈디렉토리 구성하기
# mkdir /home/gnit/www
# mkdir /home/gnit/www_log
# mkdir /home/gnit/www/weblog
# mkdir /home/gnit/ftp
# mkdir /home/gnit/ftp_log
# cp index.html /home/gnit/www
# chmod 701 /home/gnit
# chown -R gnit:gnit /home/gnit

3. DNS에 사용자 도메인 설정하기
# vi /etc/named.conf
zone “gnit.com” {
type master;
file “gnit.com.zone”;
};

# vi /var/named/gnit.com.zone

$TTL 86400
@ IN SOA ns.gnit.com. root.gnit.com. (
2006040101 ; serial number
28800 ; secondaries refresh every 8 hours
14400 ; if refresh fails, retry every 4 hours
2419200 ; if cannot refresh, expire IN 30 days
86400 ; default ttl
)
IN NS 112.222.134.101
IN MX 10 gnit.com.
IN A 112.222.134.101
www IN A 112.222.134.101
ftp IN A 112.222.134.101

4. 아파치에 가상호스트 설정하기

# vi /usr/local/apache2/conf/httpd.conf

#<VirtualHost *:80>
<VirtualHost 112.222.xxx.xxx>
ServerAdmin webmaster@test.kr
DocumentRoot /home/test/www
ServerName test.kr
ServerAlias www.test.kr
ErrorLog /home/test/www_log/error_log
CustomLog /home/test/www_log/access_log common
Alias /bible/ “/home/test/www/”
<Directory /home/test/www>
Options ExecCGI
AllowOverride AuthConfig
</Directory>
</VirtualHost>

5. hit수와 일트랙픽량 제한 설정하기

# vi /etc/httpd/conf/httpd.conf

#<VirtualHost *:80>
<VirtualHost 112.222.xxx.XX>
ServerAdmin webmaster@test.kr
DocumentRoot
/home/test/www
ServerName test.kr
ServerAlias www.test.kr
ErrorLog
/home/test/www_log/error_log
CustomLog /home/test/www_log/access_log common
Alias /bible/ “/home/test/www/”
ThrottlePolicy Volume 2048M 1d
ThrottlePolicy Request 20000 1d

<Directory /home/test/www>
Options ExecCGI
AllowOverride AuthConfig
</Directory>
</VirtualHost>

6. 메일사용을 위한 메일설정하기

# vi /etc/mail/access

gnit.com RELAY

# makemap hash /etc/mail/access.db < /etc/mail/access

# vi /etc/mail/local-host-names
gnit.com

# vi /etc/mail/virtusertable
webmaster@test.kr test
# makemap hash /etc/mail/virtusertable.db < /etc/mail/virtusertable

7. 데이터베이스 사용을 위한 MySQL 설정하기
# /usr/local/mysql/bin/mysql -u root -p mysql
Enter password: ********
mysql> create database test.kr;
mysql> grant all on gnit.* to test@’localhost’ identified by ’1234;

8. 웹로그분석서비스를 위한 webalizer 설정하기
# cp /etc/webalizer.conf.sample test.kr.conf
# test.kr.conf
LogFile /home/gnit/www_log/access_log
OutputDir /home/test/www/blog
HistoryName test.kr
ReportTilte test.kr WebSite
HostName www.test.kr

9
. 디스크사용량 제한을 위한 Quota 설정하기
# edquota -u bible
Disk quotas for user gnit(uid 600):
Filesytem blocks soft hard inodes soft hard
/dev/sda2 1200 307200 358400 34 0 0

10. 가상 FTP호스팅을 위한 proftpd의 가상호스트 설정하기
# vi /usr/local/proftpd/etc/proftpd.conf

<VirtualHost ftp.test.kr>
ServerName “ftp.test.kr FTP Server”
ServerAdmin webmaster@test.kr
Port 40001
TranferLog /home/test/ftp_log/xferlog
MaxClients 10
MaxClientPerHost 3

11. 아파치, FTP, MySQL, DNS, 메일서비스 재시작하기
# /usr/local/apache2/bin/apachectl restart
# /usr/local/mysql/bin/mysqladmin -u root -p reload
# killall -9 proftpd
# /usr/local/proftpd/sbin/proftpd
# service sendmail restart
# service named restart

* 메일포워딩 서비스 설정
.forwar 파일에 포워딩할 이메일주소를 등록한다.
* 도메인포워딩 설정
<meta http-equiv=”Refresh” content=”0; url=http://www.test.kr/~test”

0 Comments
Service
등록된 이벤트가 없습니다.
글이 없습니다.
글이 없습니다.
Comment
글이 없습니다.
Banner
등록된 배너가 없습니다.
000.0000.0000
월-금 : 9:30 ~ 17:30, 토/일/공휴일 휴무
런치타임 : 12:30 ~ 13:30

Bank Info

국민은행 000000-00-000000
기업은행 000-000000-00-000
예금주 홍길동
Facebook Twitter GooglePlus KakaoStory KakaoTalk NaverBand