Synology NAS – Cấu hình DDNS tên miền bất kỳ

Phần 4/15 trong loạt bài: Xây dựng Web server với Synology DSM

Dịch vụ DDNS của Synology.

DDNS rất là quan trọng đối với ai chới NAS hoặc Server mini tại gia… như mình chẳng hạn. Với các nhà cung cấp mạng Internet của Việt Nam hiện nay gói cá nhân thường không có IP tĩnh mà đa phần là IP động. Chỉ các gói đắt tiền và cung cấp cho doanh nghiệp mới đc bổ sung thêm cái IP tĩnh :D. Nếu có IP tĩnh thì đơn giản rồi, bạn có thể bỏ qua Note này :).
Đối với NAS Synology thì hệ điều hành DSM hỗ trợ rất nhiều dịch vụ DDNS để bạn dùng, Synology còn tặng cho khách hàng của mình một tên miền miễn phí để dùng DDNS của hãng (cái này các bạn dùng hàng fake Xpenology thì không có nhé).

Ở Note này mình sẽ không nói đến cách dùng các dịch vụ có sẵn trong DDNS của Nas Synology vì các tên miền free hỗ trợ DDNS thường có đuôi rất khó nhớ nên mình không dùng. Còn những nhà cung cấp miền tenmien.acb… nếu có thêm dịch vụ DDNS thì thường có phí rất cao. Hoặc bạn có thể mua tên miền của Google Domain có giá cả hợp lý lại hỗ trợ DDNS được cấu hình sẵn trong NAS Synology (mỗi tội anh Google không hay có khuyến mại :D). Bạn có thể vào canhme.com để săn những khuyến mại cực kỳ hấp dẫn của các nhà cung cấp tên miền (tầm 2-3$ là có ngay tên miền .com…) và cũng để tìm hiểu cách quản lý và sử dụng của các nhà cung cấp khác nhau.

Quay lại với chủ đề chính, vậy đối với nhà cung cấp không hỗ trợ DDNS cho tên miền thì là thể nào để trỏ IP động của bạn về tên miền để dùng. Mình có tìm hiểu rất nhiều cách và kết luận lại có 2 cách mà mình thấy dễ dùng nhất. Ở đây mình sẽ lấy tên miền vinhnguyen.info của mình để ví dụ minh họa.

Cách 1: Dùng CNAME và 1 dịch vụ DDNS có sẵn trong NAS Synology.

Cách này rất đơn giản như sau.

Bước 1: Bạn dùng một dịch vụ DDNS được NAS Synology hỗ trợ.

  • Ở đây mình dùng luôn dịch vụ DDNS của Synology là: vinhguyen.myds.me

Bước 2: Cấu hình CNAME của tên miền.

  • Bạn vào phần quản lý DNS của nhà cung cấp dịch vụ tên miền (ở đây mình dùng CloudFlare).

  • Dùng Type: CNAME.

Name = @ hoặc để chống (tùy từng nhà cung cấp). Target = vinhnguyen.myds.me

  • Thêm tiếp nếu cần. Dùng Type: CNAME.

Name = tên Subdomain hoặc để * để nhận tất Subdomain đỡ phải làm nhiều. Target = vinhnguyen.myds.me

Oke xong. Đơn giản vậy thôi. Giờ bạn có thể truy cập vào tên miền miền của mình để hưởng thụ thành quả :D.

Trước kia mình cũng dùng cách này nhưng cảm thấy không ngon bằng việc dùng Type A trỏ trực tiếp về IP của mình vì cảm giác dùng CNAME thì phải thông qua một tên miền cảm thấy nó không được nhanh vì phải thông qua một tên miền khác. Hoặc giả dụ cái tên miền DDNS kia nó chết thì tên miền của mình cũng tèo.

Cách 2: Tự động cập nhật địa chỉ IP cho tên miền với CloudFlare và Docker.

Bước 1: Thiết lập tên miền về CloudFlare.

Bạn cần vào trang quản lý nhà cung cấp tên miền và thay đổi Nameserver về CloudFlare để quản lý. Có nhiều nhà cung cấp vì vậy cách dùng cũng khác nhau, ở Note này mình sẽ không đề cập đến. Bạn có thể vào canhme.com để tìm hiểu thêm hoặc liên hệ nhà cung cấp để được hỗ trợ.

Bước 2: Cài đặt Docker và cấu hình.

  • Bạn cài đặt Docker thông qua Packcage Center.

  • Bạn vào Docker tìm kiếm với từ khóa: oznu cloudflare-ddns và tải oznu/cloudflare-ddns về.

  • Tiếp theo bạn chạy oznu/cloudflare-ddns vừa mới tải về.

  • Trong Advanced Settings.

  • Trong Environment Settings.

  • EMAIL = Email đăng ký CloudFlare của bạn.
  • API_KEY = Mã API của bạn.
  • ZONE = Tên miền của bạn.
  • SUBDOMAIN = Để chống hoặc điền nếu bạn dùng để lấy IP cho tên miền cấp 2 (ví dụ blog.vinhnguyen.info thì bạn chỉ cần điền là blog).
  • PROXIED = false (khồng dùng dịch vụ Proxied của CloudFlare) hoặc true (dùng dịch vụ Proxied của CloudFlare).

  • Apply – Next – Apply – Oke xong. Bây giờ bạn vào lại phần quản lý DNS tên miền của CloudFlare sẽ thấy DNS kiểu A đã trỏ về IP của bạn.
  • Để tạo nhiều các Subdomain hoặc tên miền bạn chỉ việc clone thêm Container vừa tạo trong thẻ Container và chình sửa chứ không cần phải làm nhiều thao tác như trên nữa. Để cho nhanh thì bạn clone thêm một Container nữa và để: SUBDOMAIN = *
  • Để sau này bạn dùng các Subdomain cho các ứng dụng của DSM hoặc làm máy chủ Web trên NAS Synology không cần bận tâm đến việc phải trỏ IP của mình về Subdomain. Bạn có thể làm như sau.

  • Sau khi clone thêm container thì bạn edit lại như sau.

  • Sau khi sửa xong bạn cho chạy container là xong. Vào lại phần quản lý DNS tên miền của CloudFlare để nhận thành quả 😀

Cách 3: Thêm Cloudflare vào dịch vụ DDNS của Synology NAS.

Tương tự như cách 2, bạn cũng phải thiết lập tên miền về CloudFlare để quản lý DNS. Cách này không cần đến Docker nữa 😀 .

Bước 1. Tạo API Tockens trên CloudFlare.

Không như cách 2 là lấy luôn Global API Key, đối với cách này bạn phải tạo API Tokens.

Chọn Create Custom TokenGet started

Thiết lập như hình – Continue to summary

  • Token name: Tên của tocken – DDNS for Synology NAS (đặt sao cũng đc 😀 )
  • Permissions – Thêm 3 trường sau:
    • Zone > Zone Settings > Read
    • Zone > Zone > Read
    • Zone > DNS > Edit
  • Zone Resources – Thêm 1 trường sau:
    • Include > All zones

Copy API Tocken lại…

Bước 2. Thiết lập trên Synlogy NAS.

Đầu tiên bạn cần phải bật SSH Service và PuTTY để đăng nhập vào Terminal (của sổ dòng lệnh).

Xem thêm hướng dẫn tại Synology NAS – Cài đặt, Update ứng dụng nguồn ngoài.

  • Để vào được tài khoản root bạn dùng câu lệnh sau: sudo -i
    • Password: chính là pass tài khoản quản trị của bạn.

  • Dùng lệnh sau:
wget https://raw.githubusercontent.com/mrikirill/SynologyDDNSCloudflareMultidomain/master/cloudflare.php -O /usr/syno/bin/ddns/cloudflare.php && sudo chmod 755 /usr/syno/bin/ddns/cloudflare.php

  • Tiếp theo bạn cần thêm đoạn mã sau vào file ddns_provider.conf (chèn vào cuối) trong thư mục etc.defaults (đây là một thư mục hệ thống…).
[Cloudflare]
  modulepath=/usr/syno/bin/ddns/cloudflare.php
  queryurl=https://www.cloudflare.com/

  • Hoặc dùng lệnh trực tiếp trên Terminal (của sổ dòng lệnh)…
cd /etc.defaults
vim ddns_provider.conf

Sau khi paste đoạn mã trên vào… bạn gõ :wq↵ để lưu file…

:wq
  • Như vậy là xong phần khó nhất :D. Tiếp theo bạn chỉ việc vào Control Panel => External Access => DDNS chọn Add để thiết lập…

  • Service provider: chọn Cloudflare
  • Hostname: nhập domain của bạn VD: abcd.xzy (có thểm nhập được sudomain sud.abcd.xzy). Để dùng nhiêu tên miền thì mỗi tên miền cách nhau bằng 3 dấu – (gạch ngang), VD: abcd.xyz—nas.abcd.xyz—efgh.xyz
  • Username/Email: Nhập email tài khoản CloudFlare.
  • Password/Key: Nhập API Tocken bạn đã lưu ở bước trên.

  • Lưu ý: Cách này bạn cần phải tạo trước các DNS kiểu A trên CloudFlare cho tên miền cần dùng. Không như cách 2 là nó tự động tạo…

Chúc các bạn thành công.

Vinh Nguyễn

Vinh Nguyễn

Mình thì không học về chuyên môn IT, chính vì vậy mình hiểu thế nào thì viết thế, và viết cũng toát hết được. Bạn nào có đọc các bài viết cần hỏi thêm hoặc đóng góp gì thêm thì có thể để lại comment ở dưới hoặc qua phần liên hệ.

guest

21 Bình luận
Mới nhất
Cũ nhất Bình chọn nhiều
Inline Feedbacks
Xem toàn bộ bình luận
Thuận

Hello bạn ơi, Mình dùng cách 1 của bạn, dùng CNAME và DDNS của Synology. Mình đã thêm record CNAME như hình, mà lcus truy cập vào http://www.nespower.vn thì nó vẫn đang trỏ về host mà ko dẫn đến cái NAS của mình bạn ạ.
Bạn xem giúp nhé, xin cảm ơn
https://prnt.sc/esMAzQK-bxBc

Thuận

Mình xóa bản ghi A đi thì cái bản ghi CNAME nó tự biến mất luôn bạn ạ, Thêm bản ghi A thì nó mới hiện lên, này là lỗi gì ta? Mình sủ dụng tên miền bên ESC

thelanb

có cần mở port NAT trên router ko bạn

thelanb

cảm ơn b.
mình muốn chặn index từ các bộ tìm kiếm các link share từ nas, ko biết trên nas có thể chỉnh sửa được không nhỉ?

WPFast

hi ad ơi,
nguyenvinh.net anh đang dùng synology phải ko ạ. e thấy tốc độ tốt quá

Đăng

Chào bác.
Em làm theo và thấy cách dùng cho 1 website với domain trỏ về folder gốc là web/ thì được. Em dùng DDNS của Synology.
Khi em muốn làm 2 website thì không biết trỏ domain về thư mục con như thế nào cả:

  • E tạo 2 folder chứa trang web: web/web-1 và web/web-2.
  • E có 2 domain: web-1.com và web-2.com
  • Vậy làm sao để kết nối web-1.com về đúng thư mục web/web-1? Vì dùng DDNS của Synology thì liên kết với 1 domain thôi ạ.

Em cám ơn anh

Đăng

Em dùng Virtual host để tạo thư mục chứa web-1 và web-2 giống như bài viết anh hướng dẫn đó ạ. Nhưng em chưa biết cách trỏ domain về NAS cụ thể như thế nào để từng domain nhận ra sub folder anh ạ. Em dùng CNAME thì chỉ trỏ được 1 domain tương ứng với hostname myds.me và nhận thư mục gốc web thôi ạ (không phải web-1, web-2). Thanks anh nhiều

Anh

Em dùng tên miền freenom. Thử cách 2 thì không được

Dũng

Nhà cung cấp tên miền của mình bắt nhập. Mình nhập tên record. Mình nhập @ không tạo được, nhập * thì tạo được nhưng không truy cập được vào website bằng tên miền. có cách nào khác không bạn

Dung

Ok, thank bạn. Cho mình hỏi thêm sao mình cài được wordpress với MariaDB 10 được bạn nhỉ. Cài 5 thì ok. Mình đang dùng XPENOLOGY DS3617 6.2.3 Thank. Chỉ mình cách chuyển wordpress đang dùng phpmyadmin của MariaDB 5 sang dùng MariaDB 10 được không

Duy Tran

Sau khi dùng qua thử 2 cách trên, thì mình phát hiện là nếu dùng DDNS của Synology cung cấp, tốc độ upload/ download qua giao thức WebDAV khi trong mạng nội bộ cực kỳ nhanh (50-70MBps). Nhưng cũng trong mạng nội bộ mà dùng DDNS qua Cloudflare thì khá chậm (rớt xuống còn 5-7MBps).
Chắc DDNS của Synology cung cấp có khả năng nhập biết mạng local hay Internet như QuickConnect.
Vì vậy đành quay lại dùng cách 1 🙁

nguyên

b học về gì vậy sao giỏi thế. Mình muốn làm 1 cái web cá nhân đơn giản lưu trên nas, b hướng dẫn chi tiết dc ko, mình cũng không phải dân IT ko rõ làm thế nào

Có thể bạn quan tâm...

21
0
Viết bình luận...x