Lab 3: Cài đặt DNS trên CentOS 6.5

root

Leader IT/Architect
Dec 31, 2012
1,153
72
48
Các file cấu hình DNS :
- Những file quan trọng để cấu hình DNS trên Centos 6.5 gồm có
  • /etc/named.conf: file cấu hình DNS
  • /var/named/named.ca: danh sách root server
  • /var/named/named.localhost: localhost zone file
  • /var/named/named.loopback: localhost reverse zone file
- Các bạn có thể download các file đó tại đây http://www.mediafire.com/download/p50es458m1a9812/config_dns_centos_6.3.zip

I. File named.conf :


- khi dich vụ named được khởi động nó sẽ đọc file “named.conf” đầu tiên, rồi sau đó nó mới xác định các file khác để gọi lên.
- nội dung file "named.conf"
options {
listen-on port 53 { 127.0.0.1; };
listen-on-v6 port 53 { ::1; };
directory "/var/named";
dump-file "/var/named/data/cache_dump.db";
statistics-file "/var/named/data/named_stats.txt";
memstatistics-file "/var/named/data/named_mem_stats.txt";
allow-query { localhost; };
recursion yes;

dnssec-enable yes;
dnssec-validation yes;
dnssec-lookaside auto;

/* Path to ISC DLV key */
bindkeys-file "/etc/named.iscdlv.key";
managed-keys-directory "/var/named/dynamic";
};

logging {
channel default_debug {
file "data/named.run";
severity dynamic;
};
};

zone "." IN {
type hint;
file "named.ca";
};

//================== zone svuit.com =================//
zone "svuit.com" IN {
type master;
file "svuit.db";
};

zone "2.2.10.in-addr.arpa" {
type master;
file "2.2.10.in-addr.arpa.db";
};

include "/etc/named.rfc1912.zones";
include "/etc/named.root.key";
1. Biến Mynet :
- Biến “mynet” chứa các lớp mạng trong mạng của chúng ta
acl mynet {
10.2.2.0/24;
127.0.0.1;
};
2. Phần Options :
- Khai báo thông tin chung cho DNS
options {
allow-transfer {none;};
directory "/var/named";
query-source port 53;
query-source-v6 port 53;
dump-file "var/named/data/cache_dump.db";
statistics-file "var/named/data/named_stats.txt";
memstatistics-file "var/named/data/named_mem_stats.txt";
notify yes;
};​
- allow-transfer {none;};
  • Khi có 1 máy chủ DNS(primary DNS) thì ta để là “none” để client không lấy được các thông tin trong các zone của DNS để khám phá chúng
  • Khi có 2 máy chủ DNS(1 primary vs 1 second) thì ở đây ta để là “yes” và điền IP của máy chủ DNS secondery để cho phép các thông của zone được transfer qua máy secondary
3. file chứa DNS root
- Định nghĩa DNS root, các DNS root nằm trong file named.root.
  • Khi DNS không phân giải được cái tên nào đó thì nó sẽ đi đến file named.root để nhờ DNS root tra cứu
zone "." IN {
type hint;
file "named.root";
};​
4. zone phân giải thuận
- File phân giải thuận là file quan trọng nhất
- Định nghĩa zone “svuit.com” và zone này được lưu trong file “svuit.db”
- Kiểu là Master, nếu bạn triển khai DNS Slaver thì bạn có thể thay bằng Slaver
zone "svuit.com" IN {
type master;
file "svuit.db";
};​
5. Zone phân giải nghich :
- Zone phân giải nghịch có subnet: 192.168.1.0/24
- File chứa thông tin phân giải nghịch là file "1.168.192.in-addr.arpa.db";
zone "2.2.10.in-addr.arpa" {
type master;
file "2.2.10.in-addr.arpa.db";
};​
 
II. File phân giải thuận (/var/named/svuit.db) :
- Nội dung file phân giải thuận
$TTL 86400
@ IN SOA server2.svuit.com. root (
42 ; serial (d. adams)
3H ; refresh
15M ; retry
1W ; expiry
1D ) ; minimum

IN NS server2.svuit.com.
IN MX 10 server3
1D IN A 10.2.2.3 ; web site

server3 1D IN A 10.2.2.3
server2 1D IN A 10.2.2.2
server1 1D IN A 10.2.2.1
www 1D IN CNAME server3 ; web site
mail 1D IN CNAME server3
ftp 1D IN CNAME server3
1. Record SOA :
- record đầu tiên : record SOA chỉ đến máy chủ primary DNS
  • Dấu “@” : đại diện cho domain của chúng ta là svuit.com
  • 3H : máy primary DNS yêu cầu máy secondary cứ sau 3h quay lại đây để cập nhập thông tin về
@ IN SOA server1.uit.com. root (
42 ; serial (d. adams)
3H ; refresh
15M ; retry
1W ; expiry
1D ) ; minimum​
2 record NS :
- Trỏ đến máy chủ trong miền của chúng ta
IN NS server1.svuit.com.​
3 record MX :
- Trỏ đến máy chủ mail server của chúng ta
- Khi các record này ko có phần name thì nó sẽ lấy name của cá record gần nhất đó là “@”(svuit.com)
IN MX 10 server1​

4. Record A
- Mục đích của record này là để người dùng khi truy cập website không cần gõ www.uit.com mà chỉ cần gõ uit.com cũng được
1D IN A 2.2.2.1 ; web site​

- tương tụ ở đây tạo ra 3 record A
server1 1D IN A 10.2.2.1
server1 1D IN A 10.2.2.1
5. Record CNAME:
- Tạo ra Alias(bí danh) cho server
www 1D IN CNAME server1 ; web site
mail 1D IN CNAME server1
ftp 1D IN CNAME server1​


III. Phân giải nghịch (var/named/2.2.10.in-addr.arpa.db) :
- Nội dung file phân giải nghịch
$TTL 86400
@ IN SOA server2.svuit.com. root. (
3 ; serial
28800 ; refresh
7200 ; retry
604800 ; expire
86400 ; ttk
)

@ IN Ns server2.svuit.com.
1 IN PTR server1.svuit.com.
2 IN PTR server2.svuit.com.
3 IN PTR server3.svuit.com.
- Vùng phân giải nghịch nghĩa là khi nhập vô IP nó sẽ trả về tên tương ứng.
- Chú ý:
  • 1 tương ứng với 10.2.2.1
  • 2 tương ứng với 10.2.2.2
  • 3 tương ứng với 10.2.2.3
1 IN PTR server1.uit.com.
2 IN PTR server2.uit.com.
2 IN PTR server3.uit.com.

IV. Các file khác
1. File DNS root:named.ca
- Chứa 13 máy chủ DNS root giúp phân giải DNS khi DNS của chúng ta ko phân giải được
var/named/named.root
2. named.localhost
- file phân giải thuận trên localhost
var/named/named.localhost
3. named.loopback
- file phân giải nghịch trên localhost
var/named/named.named.loopback​
 
V. Cấu hình DNS :
1. Cài đặt
- Ở đây có 2 cách cài đặt
Cài offline
- Để cài offline bạn cần có DVD chứa các parkage cài đặt của Centos 6.5
- Bước 1: mount CD
[root@server2 ~]# mount /dev/cdrom /media/
- Bước 2: Cài đặt
[root@server2 ~]# cd /media/Packages/
[root@server2 Packages]# rpm -ivh bind-chroot-9.8.2-0.10.rc1.el6.i686.rpm
[root@server2 Packages]# rpm -ivh bind-9.8.2-0.10.rc1.el6.i686.rpm
Cài đặt online bằng yum
- bind: là gói cài dịch vụ named
- Bind-utils: Gói cài thêm các công cụ phân giải tên cho client như: Nslookup
yum -y install bind bind-utils

2. Cấu hình DNS :
- copy các file cấu hình vào
- chép file named.conf vào trong
/etc/
- Copy các file còn lại vào thư mục
/var/named/
- Khởi động dịch vụ DNS
[root@svuit ~]#Service named start
hoặc
[root@svuit ~]# /etc/init.d/named start
Generating /etc/rndc.key: [ OK ]
Starting named: [ OK ]

//Nếu bạn muốn được named khởi động khi reboot

[root@svuit ~]#Chkconfig named on

- Để kiểm tra việc phân giải bạn có thể dùng nslookup trên DNS server và client
- Đối với linux các bạn trỏ DNS về DNS server
[root@svuit named]# vi /etc/resolv.conf
DNS1=10.2.2.2
DNS2=127.0.0.1

- Kết quả
[root@svuit named]# nslookup
> 10.2.2.1
Server: 127.0.0.1
Address: 127.0.0.1#53

1.2.2.10.in-addr.arpa name = server1.svuit.com.

>
> 10.2.2.2
Server: 127.0.0.1
Address: 127.0.0.1#53

2.2.2.10.in-addr.arpa name = server2.svuit.com.

- Đối với windows client
C:\>nslookup
Default Server: server2.svuit.com
Address: 10.2.2.2


> 10.2.2.1
Server: server2.svuit.com
Address: 10.2.2.2

Name: server1.svuit.com
Address: 10.2.2.1
 
  • Like
Reactions: chickenbaby
VI. Các lỗi hay gặp
1. Lỗi phân giải trên client
- Mặc dù trên máy server DNS việc phân giải tên miền xảy ra bình thường- Nhưng trên client thì không thể phân giải được, ví dụ như lỗi dưới đây
C:\>nslookup
*** Can't find server name for address 10.2.2.2: No response from server
*** Default servers are not available
Default Server: UnKnown
Address: 10.2.2.2

- Dùng Ping xem client vs DNS server có thông với nhau không
- Lỗi này có thể do :
  • Client chưa trỏ DNS về DNS server
  • Do Iptables trên DNS server chặn
- Tắt Iptables trên Centos
Service iptables stop

- File named.conf thiếu hoặc cấu hình không đúng 2 dùng sau trong mục options {
listen-on port 53 { 10.2.2.2; };
allow-query { 10.2.2.2/24; };​

- Ngoài ra các bản có thể kiểm tra log xem bị lỗi gì
[root@svuit named]# tail -f 10 /var/log/messages
tail: cannot open `10' for reading: No such file or directory
==> /var/log/messages <==
Jun 13 16:16:46 monitor named[4066]: command channel listening on ::1#953
Jun 13 16:16:46 monitor named[4066]: zone 0.in-addr.arpa/IN: loaded serial 0
Jun 13 16:16:46 monitor named[4066]: zone 2.2.10.in-addr.arpa/IN: loaded serial 3
Jun 13 16:16:46 monitor named[4066]: zone 1.0.0.127.in-addr.arpa/IN: loaded serial 0
Jun 13 16:16:46 monitor named[4066]: zone 1.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.0.ip6.arpa/IN: loaded serial 0
Jun 13 16:16:46 monitor named[4066]: zone svuit.com/IN: loaded serial 42
Jun 13 16:16:46 monitor named[4066]: zone localhost.localdomain/IN: loaded serial 0
Jun 13 16:16:46 monitor named[4066]: zone localhost/IN: loaded serial 0
Jun 13 16:16:46 monitor named[4066]: managed-keys-zone ./IN: loaded serial 11
Jun 13 16:16:46 monitor named[4066]: running

 
  • Like
Reactions: chickenbaby
Mình đã tắt iptables nhưng vẫn không nslookup yahoo.com hay google.com duoc vậy bạn ?
 
Mình đã tắt iptables nhưng vẫn không nslookup yahoo.com hay google.com duoc vậy bạn ?

hi bạn,

Bạn thử lại dùm mình như sau nhé

1. PC ping ra internet thành công không ?
2. máy DNS nslookup yahoo.com và google.com được không ?
3. PC trỏ DNS về DNS server chưa ?

Thanks bạn,
 
  • Like
Reactions: chickenbaby

About us

  • Securityzone.vn là một trang web chuyên về an ninh mạng và công nghệ thông tin. Trang web này cung cấp các bài viết, tin tức, video, diễn đàn và các dịch vụ liên quan đến lĩnh vực này. Securityzone.vn là một trong những cộng đồng IT lớn và uy tín tại Việt Nam, thu hút nhiều người quan tâm và tham gia. Securityzone.vn cũng là nơi để các chuyên gia, nhà nghiên cứu, sinh viên và người yêu thích an ninh mạng có thể trao đổi, học hỏi và chia sẻ kiến thức, kinh nghiệm và giải pháp về các vấn đề bảo mật trong thời đại số.

Quick Navigation

User Menu