Wednesday, October 5, 2011

set DNS บน CentOS ไม่ได้ทำไงดีครับ ช่วยผมหน่อย

ผมขอความกรุณาช่วยดู DNS ให้ผมหน่อยคับไม่ทราบว่าผมทำอะไรผิดตรงไหนหรือเปล่า
คือ ผมมี เครื่อง คอม อยู่ 2 เครื่อง ทำเป้น Linux CentOS 1 เครื่องจะทำเป็น web server(เอาไว้ทดสอบ web)
และอีกเครื่องเป็น notbook
และต้องการเขียนอับ web ชื่อว่า thaimake.com ขึ้นไว้บน Linux  น่ะคับ
เครื่อง linux ไอพี 192.168.1.1 
         notbook ip 192.168.1.2
ผมลองทำตามที่ http://www2.cvc.ac.th/tawatchai/download/DNS_for_Linux_Server.pdf

[root@test~]# cat /etc/hosts
192.168.1.1    nslinux.thaimake.com    nslinux
127.0.0.1    nslinux.thaimake.com    nslinux


[root@test~]# cat /etc/resolv.conf
nameserver  192.168.1.1
search       thaimake.com

แล้วผมทดสอบการทำงาน
แต่[root@test ~]# host thaimake.com
thaimake.com mail is handled by 5 nslinux.thaimake.com
[root@test ~]# host 192.168.1.1
Host 1.1.168.192.in-addr.arpa not found: 5(REFUSED)
[root@test ~]# host nslinux
nslinux.test.ex has address 192.168.1.1
[root@test ~]#

[root@test~]# nslookup thaimake.com
Server:         192.168.1.1
Address:        192.168.1.1#53

*** Can't find thaimakes.com: No answer

ผมตั้งค่าตรงไหนผิดหรือเปล่าครับ ขอความกรุณาช่วยผมด้วยครับ
      ขอบคุณครั
======================================
การที่จะสร้าง dns ขึ้นมาโดยใช้ /etc/hosts มันเหมือนกับเราหลอกแค่เครื่อง server คับ ถ้าจะหลอกลูกข่าย ลูกข่ายก็ต้องใช้ server ตัวนี้เป็น gateway คับ
ผมอ่านๆแล้วเข้าใจประมาณนี้นะคับ
คุณต้องการแบบว่า ให้สมมติชื่อ nslinux.thaimake.com ขึ้นมาแทนไอพี 192.168.1.1 ทั้งที่เป็น dns ปลอม ใช่หรือเปล่าคับ หรือ thaimake.com เป็นโดเมนของคุณที่มีการใช้งานจริง? แล้วเวลาเรียกเครื่อง server จาก notebook ก็เรียกจาก nslinux.thaimake.com ใช่หรือเปล่าคับ ต้องแตกประเด็นให้เข้าใจก่อนนะคับ ถึงจะตอบได้คับ
=========================================
ใน resolv.conf ไม่ต้องใส่ชื่อเว็บเลยครับใส่แค่นี้พอ

nameserver 127.0.0.1

ส่วนชื่อเว็บไปทำที่ named เอาไปใส่ไว้ใน zone ที่เราจะทำ
========================================
ลองทำตามแบบนี้ อีกครั้งครับ

หลังจากติดตั้งเสร็จทำตามขั้นตอนดังนี้

1. chmod 755 /var/named/
2. chmod 775 /var/named/chroot/
3. chmod 775 /var/named/chroot/var/
4. chmod 775 /var/named/chroot/var/named/
5. chmod 775 /var/named/chroot/var/run/
6. chmod 777 /var/named/chroot/var/run/named/
7. cd /var/named/chroot/var/named/
8. ln -s ../../ chroot
9. cp /usr/share/doc/bind-9.3.4/sample/var/named/named.local /var/named/chroot/var/named/named.local
10. cp /usr/share/doc/bind-9.3.4/sample/var/named/named.root /var/named/chroot/var/named/named.root
11. touch /var/named/chroot/etc/named.conf
12. chkconfig --levels 235 named on
13. /etc/init.d/named start

// ทำการแก้ไขไฟล์ named.conf
อยู่ใน  /var/named/chroot/etc/named.conf


zone "thaimake.com" {
type master;
file "/var/named/chroot/var/named/thaimake.com.zone";

};

zone "1.168.192.in-addr.arpa" {
type master;
file "/var/named/chroot/var/named/192.168.1.zone";

};

//ทำการทดสอบ  named.conf โดยใช้คำสั่ง

named-checkconf /var/named/chroot/etc/named.conf

//สร้างไฟล์ที่จะเปลี่ยนชื่อเป็น IP Address (thaimake.com.zone)อยู่ที่ /var/named/chroot/var/named

$TTL 86400
@    IN    SOA    thaimake.com. root.thaimake.com. (
            1997022700 ; Serial
            28800 ; Refresh
            14400 ; Retry
            3600000 ; Expire
            86400 ) ; Minimum

@          IN    NS    ns1
         IN    MX    10 mail
         IN    A    192.168.1.1
ns1          IN    A    192.168.1.1
www          IN    A    192.168.1.1
phpmyadmin   IN    A    192.168.1.1

//ทำการสร้างไฟล์ที่จะเปลี่ยน IP Address เป็นชื่อ (192.168.1.zone)อยู่ที่ /var/named/chroot/var/named

$TTL 86400
@    IN    SOA    thaimake.com. root.thaimake.com. (
            1997022700 ; Serial
            28800 ; Refresh
            14400 ; Retry
            3600000 ; Expire
            86400 ) ; Minimum

   NS    ns1.thaimake.com.
1   PTR    ns1.thaimake.com.
1    PTR    www.thaimake.com.
1   PTR    phpmyadmin.thaimake.com. 

* หมายเหตุ 1 คือ หมายเลขไอพีตัวสุดท้ายไม่ใช่ลำดับนะครับ

//ทำการ รีสตาร์ท service

/etc/init.d/named restart หรือ service named restart

//แก้ไขไฟล์ /etc/resolv.conf
เพิ่ม
nameserver 192.168.1.1


//ทำการ restart network

/etc/init.d/network restart หรือ service network restart

//ทำ Virtual Host แก้ไขไฟล์ /etc/httpd/conf/httpd.conf โดยการเพิ่มข้อความข้างล่างต่อท้าย

NameVirtualHost 192.168.1.1:80
<VirtualHost 192.168.1.1:80>
   ServerAdmin webmaster@thaimake.com
   DocumentRoot /var/www/html/
   ServerName thaimake.com
   ErrorLog logs/www.thaimake.com-error_log
   CustomLog logs/www.thaimake.com-access_log common
</VirtualHost>



<VirtualHost 192.168.1.1:80>
   ServerAdmin webmaster@thaimake.com
   DocumentRoot /var/www/html/phpmyadmin/
   ServerName phpmyadmin.thaimake.com
   ErrorLog logs/phpmyadmin.thaimake.com-error_log
   CustomLog logs/dummy-host.thaimake.com-access_log common
</VirtualHost>

//สร้างไดเรกทอรีตามที่กำาหนดใน httpd.conf
cd /var/www/html/

mkdir phpMyAdmin

//เมื่อแก้เสร็จก็ให้ใช้คำาสั่ง รีสตาร์ท service

/etc/init.d/httpd restart หรือ service httpd restart


แค่นี้ก็สามารถใช้งานได้และก็ได้ server ที่เป็น webserver แล้วครับ 

ผิดพลาดประการใดขออภัยด้วย
====================================
ผมทำตามแบบข้างบนแล้วครับแล้ว error แบบนี้อ่ะคับ

[root@example ~]# /etc/init.d/named restart
Stopping named:                                            [  OK  ]
Starting named:
Error in named configuration:
zone example.com/IN: loading master file /var/named/chroot/var/named/example.com.zone: file not found
_default/example.com/IN: file not found
zone 103.168.192.in-addr.arpa/IN: loading master file /var/named/chroot/var/named/192.168.103.zone: file not found
_default/103.168.192.in-addr.arpa/IN: file not found
                                                           [FAILED]
[root@example ~]#
[root@example ~]#
===================================

0 comments:

Post a Comment

 
Design by GURU