9. 도메인 셋팅 쉘스크립트(domainsetup)
작성자 정보
- 관리자 작성
- 작성일
컨텐츠 정보
- 2,179 조회
- 0 추천
- 목록
본문
9. 도메인 셋팅 쉘스크립트(domainsetup)
다음은 DNS서버에서 사용하는 도메인 셋팅하는 쉘 스크립트입니다. 이름은 “도메인생성기”입니다. 좀 허접하긴 하지만 나름대로 유용하게 사용하실 수 있을 것입니다. 필자가 이 스크립트를 만들어 사용했던 목적은 딱 한가지 였습니다. 하루에도 몇 개씩 셋팅하는 DNS셋팅작업을 매번 모두 수작업을 하다보니 많은 시간이 필요하고 과다한 작업시간이 들게 되었습니다. 따라서 필자는 DNS에서 도메인 셋팅을 좀 간편하게 할 수 없을까라고 생각한 끝에 이 스크립트를 만들었습니다.
이 스크립트의 파일이름은 “domainsetup”이며 도메인 셋팅을 한줄의 명령만으로 할 수 있도록 만들어져 있습니다. 만약 “abc.co.kr”이라는 도메인을 셋팅하려고 할 경우에는 다음과 같이 셋팅을 하시면 됩니다.
# domainsetup abc.co.kr 192.168.5.12
위의 예처럼 domainsetup은 이 스크립트의 이름이며 뒤에는 도메인과 이 도메인이
들어갈 서버의 IP주소를 입력하시면 됩니다. 그리고 이 명령어는
당연히 root권한으로 실행하셔야합니다. 이 스크립트의 소스는 다음과 같습니다.
#!/bin/bash
#### 프로그램
명 : 도메인생성기 V1.0 #### 이 프로그램의 사용은 허용되나 재배포는 금지합니다. #### 제작자 : 박성수 (헐렁고수) : papa@superuser.co.kr #### 주배포사이트 : www.superuser.co.kr
# $1 : 도메인 # $2 : 고객이 사용할 서버 Ip Address
rm -f /tmp/named.conf_tempfile rm -f /tmp/zone_tempfile
touch /tmp/named.conf_tempfile touch /tmp/zone_tempfile
# /etc/named.conf 파일수정 echo "zone \"$1\" {" >> /tmp/named.conf_tempfile echo " type master;" >> /tmp/named.conf_tempfile echo " file \"$1.zone\";" >> /tmp/named.conf_tempfile echo "};" >> /tmp/named.conf_tempfile cat /tmp/named.conf_tempfile >> /etc/named.conf
# ZONE FILE 설정 echo "@ IN SOA ns.kebia.net. root.kebia.net. (" >> /tmp/zone_tempfile echo " 20000402 ; Serial" >> /tmp/zone_tempfile echo " 21600 ; Refresh(6h)" >> /tmp/zone_tempfile echo " 900 ; Retry(15min)" >> /tmp/zone_tempfile echo " 604800 ; Expire(7d)" >> /tmp/zone_tempfile echo " 43200) ; Minimum(12h);" >> /tmp/zone_tempfile echo " IN NS ns.kebia.net." >> /tmp/zone_tempfile echo ";" >> /tmp/zone_tempfile echo " IN A $2" >> /tmp/zone_tempfile echo " IN MX 0 $1." >> /tmp/zone_tempfile echo "www IN A $2" >> /tmp/zone_tempfile echo " IN MX 0 $1." >> /tmp/zone_tempfile cp /tmp/zone_tempfile /var/named/$1.zone
rm -f /tmp/named.conf_tempfile rm -f /tmp/zone_tempfile |
소스를 보신 바와 같이 이 스크립트에서 작업되는 내용들은 다음과 같습니다.
- /etc/named.conf파일에 도메인 설정
- /var/named/도메인.zone 파일 생성
그리고 설정한 도메인의 서비스를 위해서는 named 데몬을 재시작해주셔야 합니다. 재시작하는 방법에 대해서는 충분히 배웠으므로 그 설명을 여기서는 생략합니다. 참고로 이 쉘스크립트의 다운은 ftp.superuser.co.kr에서 받으실 수 있습니다 .
관련자료
-
이전
-
다음