Synology Nas – Wildcard certs

Table of Contents

Nếu bạn từng muốn sử dụng wildcard certificate với NAS Synology của mình, có thể bạn đã thấy rằng điều đó là không thể. Trong hướng dẫn này, bạn có thể tìm thấy các bước cần thiết để nhận wildcard certificate Let’s Encrypt bằng Docker.

Note: Bài viết này tập trung vào việc tạo wildcard cert cho tên miền phụ nên nó dành có các bạn đã có kiến thức cơ bản về docker và đã mua tên miền riêng.

Wildcard SSL là một chứng chỉ SSL có thể dùng cho tên miền chính và các tên miền phụ. “Wildcard certificate” là ký tự đại diện (thường là dấu hoa thị) thay cho các ký tự khác. Nó là chứng chỉ SSL / TLS certificate bao gồm một ký tự đại diện cho phép nó được sử dụng để bảo vệ một số subdomain của một domain.

Bước 1: Install Docker

Cài Đặt Docker qua Synology “Package Center”.

Bước 2: Đăng ký một tên miền riêng và account trên Cloudflare

Bước 3: Add a TXT record in your Cloudflare DNS.

Trong Cloudflare DNS, Click “Add record” và điền các thông tin bên dưới:
TXT record là cần thiết để việc tạo cert bằng docker thành công.

Bước 4: Tạo Folder

Đến File Station và mở docker folder. Ở trong docker folder, Tạo new folder có tên letsencrypt/config như hình:
Note: Cận thận chữ hoa và chữ thường.

Bước 5: Tạo User-defined script

Chuyển đến Control Panel / Task Scheduler / Create / Scheduled Task / User-defined script. Thực hiện theo các hướng dẫn trong hình ảnh dưới đây.

Cấu hình User-defined script

Khi bạn nhấp vào User-defined script một cửa sổ mới sẽ mở ra. Làm theo hướng dẫn dưới đây:

  1. General: Trong trường Task field hãy nhập “Install letsencryp“. Uncheck “Enabled” option. Select root User.
  2. Schedule: Select Run on the following date sau đó select “Do not repeat“.
  3. Task Settings: Check “Send run details by email“, add email của bạn sau đó copy paste code phía dưới ở trong Run command area. Sau đó click OK.
docker create \
  --name=letsencrypt \
  --cap-add=NET_ADMIN \
  -e PUID=1024 \
  -e PGID=100 \
  -e VN=Asia/Ho_Chi_Minh \
  -e URL=luannt.io.vn \
  -e SUBDOMAINS=wildcard \
  -e VALIDATION=dns \
  -e DNSPLUGIN=cloudflare \
  -e EMAIL=abc@gmail.com \
  -e DHLEVEL=2048 \
  -v /volume1/docker/letsencrypt/config:/config \
  --restart unless-stopped \
  linuxserver/swag

Note: Nhớ sửa lại PUIDPGID với đúng giá trị của máy bạn.
Note: Nhớ sửa lại VN=Asia/Ho_Chi_Minh.
Note: Nhớ sửa lại URL= domain của bạn.
Note: Nhớ sửa lại EMAIL=email của bạn.

Sau khi click “OK” sẽ hiện lên cảnh báo -> bấm “OK” tiếp.

Sau đó chạy Task Scheduler vừa tạo và đợi một vài phút cho hệ thống cài đặt thành công.

Bước 6: Cloudflare API key

Sau khi chạy Task Scheduler xong -> tiến hành chạy container vừa tạo
Sau khi chạy container sẽ tạo các file trong folder đã tạo ở trên. Vào dns-conf folder và chỉnh sữa file cloudflare.ini

dns_cloudflare_email = mail cloudflare bạn đã tạo ở trên.
dns_cloudflare_api_key = Global API Key trên cloudflare . (Xem bước 2 hướng dẫn lấy API Key )

Bước 7: Rerun the LE container

Chạy lại LE container một lần nữa và đợi một vài phút.

Cert sẽ được tạo ở folder etc > letsencrypt > live > your_domain_name hoặc /docker/letsencrypt/config/etc/letsencrypt/archive/your_domain_name folder

Sau đó Import certificate trên nas như bình thường.

The private key là nơi bạn để privkey.pemCertificate là nơi để fullchain.pem
Intermediate không cần để gì hết.

NOTE: Sau mỗi 3 tháng bạn phải chạy lại LE container và import lại cert trên DSM một lần.

Bình luận