웹 서버 · 3 min read · Oct 28, 2025

CentOS 5에서 BIND 및 Apache로 나만의 웹 서버 만들기 (간소화)

CentOS 5에서 BIND 및 Apache로 나만의 웹 서버 만들기 (간소화)

이 튜토리얼에서는 Apache와 BIND 이름 서버의 도움으로 CentOS 5에서 나만의 웹 서버를 실행하는 방법을 설명합니다.

필요한 패키지 설치

yum install bind bind-chroot bind-libs bind-utils caching-nameserver -y

필요한 패키지를 설치한 후, named.conf를 구성할 준비가 되었습니다. CentOS 5의 /etc/ 디렉토리에서 named.conf가 없음을 확인할 수 있습니다. 걱정하지 마세요, 샘플 named.conf 파일을 볼 수 있습니다. 이제 /etc/named.conf 파일을 생성하고 샘플 구성 파일의 내용을 복사/붙여넣기 하세요 - 단, website.com을 자신의 도메인 이름으로 바꾸는 것을 잊지 마세요.

존 항목 추가

bind-chroot를 설치했다면, /var/named/chroot/var/named/에 도메인 존 파일을 생성한 후 /var/named/ 디렉토리에 링크를 생성할 것입니다. chroot가 없다면 /var/named/ 안에 존을 생성하세요.

chroot가 있다고 가정하고 존 파일을 생성해 보겠습니다:

nano /var/named/chroot/var/named/website.com.db

그리고 방금 생성한 파일에 다음 내용을 복사/붙여넣기 하세요:

$TTL 14400
@      86400    IN      SOA     ns1.website.com. [email protected]. (
                2008021501      ; serial, todays date+todays
                86400           ; refresh, seconds
                7200            ; retry, seconds
                3600000         ; expire, seconds
                86400 )         ; minimum, seconds
website.com. 86400 IN NS ns1.website.com.
website.com. 86400 IN NS ns2.website.com.
ns1                     IN A 77.77.197.69
ns2                     IN A 77.77.197.70
website.com. IN A 77.77.197.69
localhost.website.com. IN A 127.0.0.1
website.com. IN MX 0 website.com.
mail IN CNAME website.com.
www IN CNAME website.com.
ftp IN A 77.77.197.69

저는 예시로 제 집 IP를 사용하고 있습니다. ns1.website.com을 77.77.197.69에, ns2.website.com을 77.77.197.70에 할당했습니다. 이제 첫 번째 존과 두 개의 네임서버를 성공적으로 생성했습니다. 존 파일을 링크하기 위해 다음을 수행합시다:

ln -s /var/named/chroot/var/named/website.com.db /var/named/website.com.db

이제 IP를 모른다면, 다음을 시도해 보세요:

awk 'NR==3 {print substr($0,1,14)}' /etc/hosts

이 명령은 IP를 출력해야 합니다. 또는 ifconfig “inet addr:”를 사용할 수 있습니다. 이제 named를 시작할 시간입니다:

service named start

[OK]가 표시되면 named가 작동하고 있는 것입니다. 이제 도메인 등록 기관에 연락하여 네임서버를 ns1.website.com 및 ns2.website.com으로 업데이트하도록 요청하세요 (website.com을 자신의 도메인 이름으로 바꾸세요). 이제 외부에서 website.com을 핑할 수 있다면 모든 구성이 제대로 이루어진 것입니다 (그렇지 않다면 언제든지 저에게 연락하세요).

Apache 설치, 구성 및 실행

먼저,

which httpd

“/usr/sbin/httpd”와 같은 결과가 나오면 Apache가 이미 설치된 것입니다 - 아래 명령을 실행할 필요가 없습니다. 그렇지 않다면 아래 명령을 실행하세요.

yum install httpd -y

SSL(Secure Sockets Layer) 지원으로 웹사이트를 호스팅하려면 mod_ssl을 설치할 수도 있습니다.

yum install mod_ssl -y

이것이 무엇인지 모른다면 이 단계를 건너뛸 수 있습니다. PHP 스크립팅 언어를 설치하고 싶다면 다음 명령으로 설치할 수 있습니다.

yum install php*

모든 설치가 완료된 후, 시스템 부팅 시 httpd를 시작하고 싶다면 chkconfig를 사용하여 설정할 수 있습니다:

chkconfig --level 235 httpd on

또한 부팅 시 named를 시작하려면 아래 명령을 실행하세요:

chkconfig named on

언제든지 다음 명령을 실행하여 named와 httpd의 상태를 확인할 수 있습니다:

service named status && service httpd status

Apache의 주요 구성 파일은 httpd.conf라고 하며 /etc/httpd/conf/에 위치합니다. 구성 파일의 복사본을 만들어 두는 것이 중요하므로 문제가 발생할 경우 다시 시작할 수 있습니다. 다음 명령으로 복사할 수 있습니다:

cd /etc/httpd/conf && cp /etc/httpd/conf/httpd.conf httpd.conf.temp

좋습니다. 백업 구성 파일이 안전하니 httpd.conf 구성을 시작합시다. 좋아하는 텍스트 편집기(vi, nano 등)로 httpd.conf를 열고 133행으로 스크롤합니다 (nano를 사용하는 경우 CRTL+W를 누른 다음 CTRL+T를 눌러 행 번호를 입력하면 133행으로 이동합니다. nano를 사용하는 경우 CTRL+C를 눌러 현재 행 번호를 확인할 수 있으며, vi를 사용하는 경우 :133을 눌러 이동할 수 있습니다. vi에서 CTRL+G를 눌러 행 번호를 확인할 수도 있습니다). 편집으로 돌아가서 133행에서 다음을 확인해야 합니다:

#Listen 12.34.56.78:80

그리고 134행에서 다음을 확인해야 합니다:

Listen 80

서버가 하나의 IP만 수신하도록 하려면 133행의 주석을 제거하고 다음으로 교체해야 합니다:

Listen yourip:80

그리고 134행을 삭제합니다 (제 서버의 경우 아무것도 수정하지 않고 그대로 두겠습니다). 이제 235행으로 이동하면 다음을 확인해야 합니다:

#ServerAdmin root@localhost

이 줄의 주석을 제거하고 자신의 이메일로 수정해야 합니다. 사용자가 웹사이트에서 오류를 발견하면 서버 관리자에게 연락할 수 있도록 하여 문제를 해결하거나 존재를 알릴 수 있습니다. 다음으로 266행으로 이동해야 합니다; 거기서 다음을 확인해야 합니다:

#ServerName new.host.name:80

이 줄의 주석을 제거하고 원하는 호스트 이름으로 교체해야 합니다. 이 호스트 이름이 제대로 작동하려면 호스트 이름에 대한 존 레코드를 추가해야 합니다 (예: host.website.com). 이 파일 구성을 마친 후에 이를 수행할 것입니다.

Share: X/Twitter LinkedIn

새 게시물을 받은 편지함에서 받기

스팸은 없습니다. 언제든지 구독 해지 가능합니다.