ESC sẽ triển khai Công nghệ DNSSEC trong năm 2016
Giới thiệu công nghệ DNSSEC
Công nghệ DNSSEC là công nghệ an toàn mở rộng cho hệ thống DNS. Sự ra đời của công nghệ DNSSEC giúp xác thực các dữ liệu giữa các máy chủ DNS với nhau và giữa các zone dữ liệu để các dữ liệu được bảo vệ một cách toàn vẹn.
1. Giới thiệu công nghệ DNSSEC
Trong khi giao thức DNS thông thường không có công cụ để xác thực nguồn dữ liệu. Trước nguy cơ dữ liệu DNS bị giả mạo và bị làm sai lệch trong các tương tác giữa máy chủ DNS với các máy trạm (resolver) hoặc máy chủ chuyển tiếp (forwarder), công nghệ bảo mật mới DNSSEC đã được nghiên cứu, triển khai áp dụng để hỗ trợ cho DNS bảo vệ chống lại các nguy cơ giả mạo làm sai lệch nguồn dữ liệu. Trong đó DNSSEC sẽ cung cấp một cơ chế xác thực giữa các máy chủ DNS với nhau và xác thực cho từng zone dữ liệu để đảm bảo toàn vẹn dữ liệu.
DNSSEC là công nghệ an toàn mở rộng của DNS, về bản chất DNSSEC cung cấp các cơ chế có khả năng chứng thực và đảm bảo toàn vẹn dữ liệu cho hệ thống DNS, theo đó DNSSEC đưa ra 4 loại bản ghi mới:
Bản ghi khóa công cộng DNS (DNSKEY – DNS Public Key): sử dụng để chứng thực zone dữ liệu.
Bản ghi chữ ký tài nguyên (RRSIG – Resource Record Signature): sử dụng để chứng thực cho các bản ghi tài nguyên trong zone dữ liệu.
Bản ghi bảo mật kế tiếp (NSEC – Next Secure): sử dụng trong quá trình xác thực đối với các bản ghi có cùng sở hữu tập các bản ghi tài nguyên hoặc bản ghi CNAME. Kết hợp với bản ghi RRSIG để xác thực cho zone dữ liệu.
Bản ghi ký ủy quyền (DS – Delegation Signer): thiết lập chứng thực giữa các zone dữ liệu, sử dụng trong việc ký xác thực trong quá trình chuyển giao DNS.
Mục tiêu đặt ra là DNSSEC không làm thay đổi tiến trình truyền dữ liệu DNS và quá trình chuyển giao từ các DNS cấp cao xuống các DNS cấp thấp hơn, mặt khác đối với các máy trạm (resolver) cần yêu cầu đáp ứng hỗ trợ các cơ chế mở rộng này. Một zone dữ liệu được ký xác thực sẽ chứa đựng một trong các bản ghi RRSIG, DNSKEY, NSEC và DS.
Như vậy bằng cách thức tổ chức thêm những bản ghi mới và những giao thức đã được chỉnh sửa nhằm chứng thực nguồn gốc và tính toàn vẹn dữ liệu cho hệ thống, với DNSSEC, hệ thống DNS đã được mở rộng thêm các tính năng bảo mật và được tăng cường độ an toàn, tin cậy, khắc phục được những nhược điểm của thiết kế sơ khai ban đầu. Vừa đáp ứng được các yêu cầu thông tin định tuyến về tên miền, giao thức làm việc giữa các máy chủ DNS với nhau, vừa đáp ứng được các yêu cầu bảo mật, tăng cường khả năng dự phòng cho hệ thống.
2. Ứng dụng DNSSEC để bảo mật cho hệ thống DNS
Các bản ghi trong DNSSEC được khai báo trong các zone dữ liệu để chứng thực thông tin trong zone dữ liệu đó, đảm bảo độ tin cậy trong quá trình trao đổi thông tin cũng như truy vấn tìm kiếm DNS. Trong khi vẫn đảm bảo hoạt động bình thường của các bản ghi tài nguyên DNS thông thường thì các bản ghi DNSSEC cần khai báo chính xác và thông tin xác thực phải đồng bộ.
DNSSEC đưa ra khái niệm ký zone (Zone Signing): một zone được ký bao gồm khóa công cộng DNS (DNS Public Key), chữ ký bản ghi tài nguyên (RRSIG), bảo mật tiếp theo (NSEC), và ký chuyển giao (Delegation Signer). Một zone mà không thêm những bản ghi này vào là một zone chưa được ký. Đồng thời DNSSEC đòi hỏi thay đổi định nghĩa của bản ghi tài nguyên CNAME bằng 2 bản ghi chứng thực là bản ghi RRSIG và bản ghi NSEC.
Thêm bản ghi DNSKEY vào một zone
Để ký một zone, người quản trị zone sẽ tạo một hay nhiều cặp khóa công cộng/dành riêng (public/private), cặp khóa công cộng dùng cho zone chính và khóa riêng để ký cho những bản ghi cần xác thực trong zone. Mỗi zone phải thêm một bản ghi DNSKEY (zone DNSKEY RR) chứa đựng khóa công cộng tương ứng, và mỗi khóa riêng được dùng để tạo bản ghi RRSIG trong zone.
Bản ghi chứng thực DNSKEY cho zone phải có bit Zone Key của trường dữ liệu cờ đặt giá trị là 1. Nếu quản trị zone có ý định ký một zone để chứng thực thì zone chính phải chứa đựng ít nhất một bản ghi DNSKEY để hoạt động như một điểm bảo mật ở trong zone. Điểm bảo mật được dùng cùng với bản ghi DS tương ứng ở zone cha trong hoạt động chuyển giao DNS.
Thêm các bản ghi RRSIG vào một zone
Với một zone đã được ký bởi bản ghi DNSKEY, thì các bản ghi tài nguyên trong zone đó cần có một bản ghi RRSIG ký xác thực. Một bản ghi tài nguyên có thể có nhiều bản ghi RRSIG kết hợp với nó. Các bản ghi RRSIG chứa chữ ký điện tử kết hợp chặt chẽ với các bản ghi tài nguyên để xác thực cho các bản ghi tài nguyên đó. Đặc biệt, giá trị TTL trong các bản ghi RRSIG với một tên miền sở hữu không giống với giá trị TTL của bản ghi tài nguyên.
Trong trường hợp các bản ghi tài nguyên cùng sở hữu một tên miền thì cần kết hợp bản ghi RRSIG với bản ghi NSEC để xác thực, trường hợp này cũng tương tự đối với bản ghi CNAME.
Tập bản ghi tài nguyên NS trong zone phải được ký xác thực, khi bản ghi NS là bản ghi chuyển giao từ máy chủ tên miền cha xuống máy chủ tên miền con thì cần kết hợp bản ghi RRSIG với bản ghi xác thực DS. Bản ghi glue cũng cần xác thực bằng RRSIG.
Thêm bản ghi NSEC vào một zone
Mỗi tên miền sở hữu nhiều hơn 1 bản ghi tài nguyên cùng loại trong một zone hoặc một tập bản ghi NS chuyển giao thì phải có một bản ghi NSEC để xác thực. Trong đó, giá trị TTL nhỏ nhất cho một bản ghi NSEC phải bằng với giá trị TTL trong bản ghi SOA của zone đó.
Một bản ghi NSEC và bản ghi RRSIG kết hợp với nó không nhất thiết là bản ghi duy nhất cho bất cứ tên miền sở hữu bản ghi bảo mật nào. Vì thế, qui trình ký không phải tạo bất cứ bản ghi RRSIG hoặc NSEC nào cho những tên miền sở hữu bản ghi mà không sở hữu bất cứ tập bản ghi nào trước khi vùng được ký. Lý do chính là muốn ổn định giữa không gian đã ký và không gian chưa ký của một zone và mong giảm rủi ro đối với những mâu thuẫn trong phản hồi những máy chủ truy vấn đệ qui không được cấu hình bảo mật.
Các bản ghi RRSIG hiện diện tại tên miền sở hữu các tập bản ghi mà nó nắm giữ. Các bản ghi NSEC hiện diện tại tên miền sở hữu và còn hiện diện tại điểm chuyển giao của các tên miền con của chúng. Vì thế, bất cứ tên miền nào có một tập bản ghi NSEC sẽ có các bản ghi RRSIG trong vùng được ký.
Thêm bản ghi DS vào trong một zone
Bản ghi DS thiết lập chứng thực giữa những zone DNS. Một bản ghi DS được biểu diễn cho bản ghi chuyển giao khi vùng con được ký. Bản ghi DS kết hợp với bản ghi RRSIG để chứng thực cho zone được chuyển giao tại máy chủ tên miền cha. Bản ghi DS được khai báo trước , và bản ghi RRSIG khai báo sau giống như khai báo để xác thực cho một bản ghi tài nguyên thông thường.
Trường TTL của tập bản ghi DS phải ứng với trường TTL của tập bản ghi NS ủy quyền (có nghĩa là tập bản ghi NS trong cùng vùng chứa tập bản ghi DS). Việc xây dựng một bản ghi DS đòi hỏi phải có hiểu biết của bản ghi DNSKEY tương ứng trong vùng con để đưa ra được các giao tiếp giữa vùng con và vùng cha.
Những thay đổi đối với bản ghi CNAME
Nếu một tập bản ghi CNAME hiện diện tại một tên miền trong một vùng được ký, sẽ thay thế bằng tập bản ghi RRSIG và NSEC tương ứng trong tên miền đó. Đây là một phiên bản đã được chỉnh sửa của định nghĩa CNAME nguyên gốc. Định nghĩa nguyên gốc của bản ghi CNAME không cho phép bất cứ kiểu nào khác cùng tồn tại với bản ghi CNAME, nhưng một vùng được ký đòi hỏi những bản ghi NSEC và bản ghi RRSIG cho mọi tên miền. Để giải quyết xung đột này, định nghĩa của bản ghi CNAME của hệ thống DNS đã được chỉnh sửa lại để cho phép nó cùng tồn tại với các bản ghi NSEC và bản ghi RRSIG.
DNSKEY được thiết lập để tạo khóa công cộng nhằm thực hiện xác thực với các máy chủ DNS khác có cùng khóa công cộng này. Các bản ghi chứng thực RRSIG sử dụng để ký xác thực cho các bản ghi tài nguyên SOA, A, MX… Đối với các bản ghi NS khai báo quyền sở hữu tên miền đối với tên miền gốc thì sử dụng bản ghi NSEC kết hợp với bản ghi RRSIG để xác thực. Đối với các bản ghi chuyển giao từ DNS cha xuống các máy chủ tên miền DNS con thì kết hợp với bản ghi DS với bản ghi RRSIG để xác thực.
3. Triển khai DNSSEC
Quá trình triển khai DNSSEC bao gồm: ký chuyển giao tên miền .VN từ DNS Root về máy chủ DNS quốc gia quản lý và ký chuyền giao tên miền từ máy chủ DNS quốc gia cho các đơn vị khác quản lý. Việc triển khai DNSSEC trên hệ thống DNS quốc gia gồm các bước như sau:
Trên máy chủ DNS:
BƯỚC 1: Tạo cặp khóa riêng và khóa công khai
BƯỚC 2: Lưu trữ bảo mật khóa riêng
BƯỚC 3: Phân phối khóa công khai
BƯỚC 4: Ký zone
BƯỚC 5: Thay đổi khóa
BƯỚC 6: Ký lại zone
Trên resolver:
BƯỚC 7: Cấu hình Trust Anchors
BƯỚC 8: Thiết lập chuỗi tin cậy và xác thực chữ ký
4. Lộ trình triển khai DNSSEC tại Việt Nam
Ngày 23/10/2014, Bộ trưởng Bộ Thông tin và Truyền thông đã ký quyết định số 1524/QĐ-BTTTT phê duyệt Đề án triển khai tiêu chuẩn DNSSEC cho hệ thống máy chủ tên miền (DNS) “.VN”, trong đó xác định rõ mục tiêu, phạm vi, nội dung, lộ trình triển khai DNSSEC tại Việt Nam với 03 giai đoạn chính.
Việc áp dụng thống nhất tiêu chuẩn DNSSEC đối với các hệ thống DNS “.VN” tại Việt Nam giúp đảm bảo chính xác và tin cậy trong việc sử dụng, truy vấn tên miền “.VN” trên Internet. Kết nối liên thông theo tiêu chuẩn DNSSEC giữa hệ thống DNS quốc gia “.VN” với hệ thống máy chủ tên miền gốc (DNS ROOT) và các hệ thống DNS quốc tế. Đánh dấu bước chuyển biến quan trọng trong việc phát triển hạ tầng Internet tại Việt Nam, sẵn sàng đẩy mạnh phát triển các dịch vụ thương mại điện tử, chính phủ điện tử tại Việt Nam một cách an toàn nhất.
Việc triển khai DNSSEC tại Việt Nam được thực hiện từng bước. Trước hết cần triển khai DNSSEC trên hệ thống máy chủ tên miền DNS quốc gia .VN, trên cơ sở đó sẽ triển khai DNSSEC ở các máy chủ tên miền cấp dưới như tên miền cấp 2 dùng chung (.gov.vn, .net.vn …); hệ thống DNS của các ISP, các Nhà đăng ký tên miền, doanh nghiệp cung cấp dịch vụ DNS Hosting, cơ quan Đảng, Nhà nước, chủ sở hữu tên miền .VN.
5. Lộ trình triển khai DNSSEC tại ESC
Do tầm quan trọng của DNSSEC, đặc biệt trong việc đảm bảo hệ thống email của các doanh nghiệp chạy ổn định nhất, là nhà đăng ký chính thức tên miền Việt Nam, ESC sẽ phối hợp cùng VNNIC triển khai thử nghiệm kết nối DNSSEC giữa hệ thống DNS Nhà đăng ký với hệ thống tên miền quốc gia ngay trong những tháng đầu năm 2016 và sẽ triển khai chính thức vào cuối năm 2016.
ESC Group