NAS Synology hỗ trợ danh sách các nhà cung cấp tên miền có hỗ trợ tính năng DDNS, rất tiếc là chưa có Cloudflare, mặc dù thương hiệu này hỗ trợ cập nhật cho tên miền dùng IP động.
Bài viết này sẽ hướng dẫn cách thêm Cloudflare vào danh sách DDNS trên NAS Synology, sử dụng đoạn mã của lập trình viên mrikirill .
Vì sao cần add Cloudflare vào DDNS trên NAS? Ví dụ như bạn sử dụng <tên bạn chọn>.synology.me, đây là tên miền do Synology hỗ trợ, nó có lại dính phần synology.me không mang tính cá nhân hóa. Cloudflare cho phép bạn sử dụng tên miền của riêng bạn và hỗ trợ cập nhật IP nếu tên miền này sử dụng IP động.
Ví dụ như mình có tên miền danhgiane.xyz, dùng IP động, mình muốn dùng cho NAS, để chạy các dịch vụ cơ bản như lưu trữ, chia sẻ tài nguyên, VPN ….
Các bước để thực hiện việc này như sau:
- Tạo record A trên Cloudflare, trỏ tên miền đến địa chỉ IP động
- Tạo token Cloudflare
- Thêm Clouflare vào danh sách DDNS thông qua SSH
- Thêm tên miền trên Cloudflare vào NAS
Nào cùng bắt đầu.
1. Tạo record A trên Cloudflare, trỏ tên miền đến địa chỉ IP động
Record A cho thấy là bạn đang trỏ tên miền tới địa chỉ IP nào đó, sẽ có dạng
- Record ở dạng: A
- Name: @ (hoặc danhgiane.xyz)
- Content: <địa chỉ IP WAN của bạn>
Địa chỉ IP WAN này chính là địa chỉ nhà mạng nơi bạn đặt con NAS làm mail server. Bạn cũng có thể dùng subdomain cũng được. Như trường hợp bạn dùng subdomain làm mail server, có thể record dạng này:
- Record ở dạng: A
- Name: mails
- Content: <địa chỉ IP WAN của bạn>
2. Tạo token Cloudflare
Token cho phép bạn thêm Cloudflare vào hệ thống của NAS Synology với tài khoản đã đăng ký trên dịch vụ này. Việc tạo token chỉ cần API Key, không cần Global API Key. Các bước như sau:
Truy cập vào giao diện điều khiển Cloudflare, click vào tên miền bạn đã thêm vào dịch vụ này.
Click vào tab Overview
Kéo xuống cuối và click vào Get your API token
Trong màn hình hiện ra, click nút Create Token
Trong màn hình hiện ra, kéo xuống dưới, click vào nút Get started trong phần Create Custom Token
Trong màn hình tiếp theo, điền một số thông tin vào như này:
- Token name: ThemCloudflareVaoNAS (hoặc tên gì cũng được)
- Permissions: Click nút add more 2 cái để có tổng cộng 3 Permission như sau
- Ô 1: Zone > Ô 2: Zone Settings > Ô 3: Read
- Ô 1: Zone > Ô 2: Zone > Ô 3: Read
- Ô 1: Zone > Ô 2: DNS > Ô 3: Edit
- Zone Resources (để mặc định)
- Ô 1: Include > Ô 2: All zone
Click nút Continue to summary. Trong màn hình hiện ra, click vào nút Create Token.
Màn hình tiếp theo hiển thị mã Token, click vào nút Copy, dán nó ra Notepad để dùng trong bước tiếp theo.
3. Thêm Clouflare vào danh sách DDNS thông qua SSH
Đăng nhập vào NAS, vào Control Panel, tìm đến Terminal & SNMP
Trong màn hình này, bật tùy chọn Enable SSH services, phần Port bạn nên đổi nếu sau này còn dùng cho việc khác, không thì cứ để mặc định 22 nha. SSH này đang bị lợi dụng để cài virus vào các hệ thống rất nhiều, các bạn nên cẩn thận, không dùng nữa thì dùng xong nhớ tắt đi nha.
Nhớ click Apply sau khi enable.
Cài đặt ứng dụng PuTTY, mở nó lên, điền các thông tin cần truy cập vào con NAS
Click nút Open để mở ra giao diện command prompt truy cập vào NAS qua SSH. Click Accept khi gặp màn hình này
Trong màn hình hiện ra với chữ Login as, điền username admin của NAS, xong enter, điền tiếp password của NAS, xong enter phát nữa.
Màn hình hiện ra như này:
Bạn phải sử dụng quyền root của DSM mới được. Gõ vào câu lệnh
Sẽ hiện ra
Nhập lại mật khẩu một lần nữa rồi enter, giờ thì bạn đã là user root
Copy 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
Dán vào (sau khi cóp xong thì click phải chuột, dòng lệnh sẽ được dán vào) sau đó Enter, bạn sẽ thấy nó tải xuống một số thứ, đại khái thấy ghi 100% sau dấu mũi tên là OK
Bây giờ, bắt đầu công đoạn chỉnh sửa cái file có các dịch vụ DDNS của NAS, để thêm Cloudflare vào. File này có tên là ddns_provider.conf nằm trong thư mục etc.defaults. Di chuyển tới thư mục này bằng lệnh cd.
sẽ vào thư mục này
Để chỉnh sửa file ddns_provider.conf bạn gõ lệnh sau:
sẽ hiện ra thế này
Bấm dấu mũi tên hướng xuống, di chuyển đến cuối file sẽ thấy như thế này, đó chính là các dịch vụ hỗ trợ cập nhật IP động. các bạn có thể thấy Synology, Oray, Strato, Ru Center…
Bây giờ dán đoạn dưới này vào
-
[Cloudflare]
modulepath=/usr/syno/bin/ddns/cloudflare.php
queryurl=https://www.cloudflare.com/
sẽ được như thế này
Xong, bấm nút ESC để thoát khỏi trình chỉnh sửa file
Sau đó bấm
để lưu và thoát khỏi file này.
4. Thêm tên miền trên Cloudflare vào NAS
Tắt đi cửa sổ SSH, nếu không dùng nữa. Mình đề nghị bạn tắt dịch vụ này đi nha.
Quay trở lại Control Panel của NAS, vào External Access.
Click nút Add để thêm tên miền. Trong danh sách giờ đây đã có Cloudflare rồi.
Click chọn Cloudflare, điền các thông tin của bạn vào. Trong đó, các thông tin như sau:
- Hostname: mails.danhgiane.xyz (domain của bạn khai với record A)
- Username/Email: Email đăng ký Cloudflare
- Password/Key: Điền API Token key đã tạo ở bước đầu tiên
Bạn để ý chỗ External Address (IPv4), nếu thấy để Manual thì bạn click vào nút Automatic Setup để sử dụng IP WAN tự động khi IP của bạn thay đổi – do restart lại router hay sự cố hay nhà mạng tự động thay đổi IP của bạn.
Click nút Test Connection để kiểm tra, khi thấy Status là Normal thì click OK để hoàn tất. Bây giờ, để kiểm tra xem IP có được cập nhật khi thay đổi không, bạn có thể restart lại router / modem, xong vào coi IP của bạn có được cập nhật trên Cloudflare không.
Lưu ý: Nếu bạn cài lại DSM, nâng cấp DSM thì phải làm lại các bước trên để cập nhật lại Cloudflare vào danh sách các dịch vụ DDNS, vì nó không được Synology hỗ trợ chính thức.
Chúc bạn thành công.