Cách tạo chứng chỉ SSL LetsEncrypt bằng Thử thách DNS-01 của CloudFlare và sử dụng nó trên NAS Synology

Cach Tao Chung Chi Ssl Letsencrypt Bang Thu Thach Dns 01 Cua Cloudflare Va Su Dung No Tren Nas Synology



Disk Station Manager v7 (DSM 7) là hệ điều hành của thiết bị NAS Synology. Bạn có thể định cấu hình chứng chỉ SSL Let’s Encrypt cho NAS Synology của mình từ giao diện web DSM 7. Theo mặc định, Synology DSM 7 sử dụng thử thách HTTP-01 để xác minh quyền sở hữu miền (mà bạn muốn sử dụng cho NAS Synology của mình) và cấp chứng chỉ SSL cho miền. Nhưng thử thách HTTP-01 sẽ không hoạt động trừ khi bạn có địa chỉ IP công cộng và máy tính của bạn có thể truy cập được từ internet. Vì vậy, nếu bạn muốn sử dụng chứng chỉ SSL Let’s Encrypt cho mạng gia đình hoặc mạng riêng của mình, thay vào đó, bạn phải sử dụng thử thách DNS-01. Khi thử thách DNS-01 được sử dụng, Let’s Encrypt sẽ xác minh quyền sở hữu miền bằng máy chủ DNS của miền. Vì vậy, nó cũng hoạt động cho các mạng riêng. Đáng buồn thay, giao diện web Synology DSM 7 không cung cấp bất kỳ cách nào để lấy chứng chỉ SSL Let's Encrypt bằng thử thách DNS-01.

May mắn thay, chương trình “acme.sh” có thể được cài đặt trên NAS Synology của bạn và được sử dụng để tạo và gia hạn chứng chỉ SSL Let's Encrypt bằng thử thách DNS-01.







Trong bài viết này, chúng tôi sẽ chỉ cho bạn những điều sau:



  • Cách cài đặt “sh” trên NAS Synology của bạn
  • Cách sử dụng “acme.sh” để tạo chứng chỉ SSL Let's Encrypt (thông qua thử thách DNS-01) cho tên miền bạn đang sử dụng trên NAS Synology của mình
  • Cách cài đặt chứng chỉ SSL Let’s Encrypt SSL được tạo “acme.sh” trên NAS Synology của bạn
  • Cách định cấu hình hệ điều hành DSM 7 của NAS Synology của bạn để sử dụng chứng chỉ SSL Let's Encrypt đã tạo
  • Cách định cấu hình NAS Synology của bạn để tự động gia hạn chứng chỉ SSL Let's Encrypt đã tạo bằng cách sử dụng “acme.sh”

Trong bài viết này, chúng tôi sẽ sử dụng máy chủ DNS CloudFlare để trình diễn. Bạn có thể sử dụng khác Các dịch vụ DNS được acme.sh hỗ trợ cũng. Tất cả những gì bạn phải làm là thực hiện những điều chỉnh cần thiết.



Chủ đề Nội dung:

  1. Tạo người dùng Certadmin trên NAS Synology
  2. Định cấu hình Máy chủ DNS CloudFlare cho Thử thách LetsEncrypt DNS-01
  3. Định cấu hình các dịch vụ DNS khác cho LetsEncrypt Thử thách DNS-01
  4. Truy cập thiết bị đầu cuối NAS Synology thông qua SSH
  5. Tải xuống Acme.sh trên NAS Synology của bạn
  6. Cài đặt Acme.sh trên NAS Synology của bạn
  7. Tạo chứng chỉ SSL Let's Encrypt bằng Acme.sh cho NAS Synology của bạn
  8. Cài đặt Chứng chỉ SSL Let's Encrypt trên NAS Synology của bạn bằng Acme.sh
  9. Đặt chứng chỉ SSL Let's Encrypt làm mặc định trên NAS Synology của bạn
  10. Định cấu hình NAS Synology để tự động gia hạn chứng chỉ SSL Let's Encrypt bằng Acme.sh
  11. Phần kết luận
  12. Người giới thiệu

Tạo người dùng Certadmin trên NAS Synology

Trước tiên, bạn nên tạo người dùng quản trị viên mới trên NAS Synology của mình để tạo và gia hạn chứng chỉ SSL Let's Encrypt.





Để tạo người dùng quản trị mới trên Synology NAS, hãy nhấp vào Bảng điều khiển [1] > Nhóm người dùng [2] từ giao diện web DSM 7.



Nhấp vào “Tạo” từ tab “Người dùng”.

Nhập “certadmin” làm tên người dùng [1] , một mô tả ngắn tùy chọn cho người dùng [2] , mật khẩu đăng nhập của người dùng [3] , và nhấp vào “Tiếp theo” [4] .

Để tạo người dùng quản trị, hãy đánh dấu vào nhóm “quản trị viên” trong danh sách [1] và nhấp vào “Tiếp theo” [2] .

Bấm vào “Tiếp theo”.

Bấm vào “Tiếp theo”.

Bấm vào “Tiếp theo”.

Bấm vào “Tiếp theo”.

Bấm vào “Xong”.

Các chứng nhận quản trị viên người dùng bây giờ sẽ được tạo trên NAS Synology của bạn.

Định cấu hình Máy chủ DNS CloudFlare cho Thử thách mã hóa DNS-01

Để sử dụng máy chủ DNS CloudFlare cho thử thách Let’s Encrypt DNS-01, bạn cần tạo mã thông báo DNS CloudFlare. Bạn có thể tạo mã thông báo máy chủ DNS CloudFlare từ bảng điều khiển CloudFlare. Để biết thêm thông tin, đọc bài viết này .

Định cấu hình các dịch vụ DNS khác cho Thử thách Let’s Encrypt DNS-01

“Acme.sh” hỗ trợ các dịch vụ DNS khác. Nếu bạn không muốn sử dụng DNS CloudFlare, bạn có thể sử dụng bất kỳ dịch vụ DNS nào được hỗ trợ bởi “acme.sh”. Cấu hình hơi khác một chút đối với các dịch vụ DNS khác nhau. Để biết thêm thông tin, kiểm tra hướng dẫn API DNS “acme.sh” .

Truy cập thiết bị đầu cuối NAS Synology qua SSH

Để cài đặt “acme.sh” cũng như tạo và cài đặt chứng chỉ SSL Let’s Encrypt trên NAS Synology của bạn, bạn cần truy cập Terminal của NAS Synology. Để biết thêm thông tin về cách bật quyền truy cập SSH trên NAS Synology của bạn và truy cập Terminal của NAS Synology, đọc bài viết này .

Khi bạn đã bật quyền truy cập SSH trên NAS Synology, hãy mở ứng dụng đầu cuối trên máy tính của bạn và chạy lệnh sau:

$ ssh certadmin@

Bạn sẽ được yêu cầu nhập mật khẩu đăng nhập của chứng nhận quản trị viên người dùng. Nhập mật khẩu đăng nhập của chứng nhận quản trị viên người dùng NAS Synology của bạn và nhấn vào . Bạn nên đăng nhập vào NAS Synology của mình với tư cách là chứng nhận quản trị viên người dùng.

Tải xuống Acme.sh trên NAS Synology của bạn

Để tải xuống phiên bản mới nhất của ứng dụng khách “acme.sh”, hãy chạy lệnh sau:

$ wget -O /tmp/acme.sh.zip https://github.com/acmesh-official/acme.sh/archive/master.zip

Phiên bản mới nhất của kho lưu trữ máy khách “acme.sh” “acme.sh.zip” phải được tải xuống trong thư mục “/tmp” của NAS Synology của bạn.

Cài đặt Acme.sh trên NAS Synology của bạn

Để giải nén kho lưu trữ “/tmp/acme.sh.zip” trong thư mục “/usr/local/share” của NAS Synology của bạn, hãy chạy lệnh sau và nhập mật khẩu đăng nhập của người dùng certadmin rồi nhấn khi được nhắc nhập mật khẩu. Kho lưu trữ “/tmp/acme.sh.zip” phải được giải nén trong thư mục “/usr/local/share/acme.sh-master”.

$ sudo 7z x -o /usr/local/share /tmp/acme.sh.zip

Để đơn giản, hãy đổi tên thư mục “acme.sh-master” thành “acme.sh” bằng lệnh sau:

$ sudo mv -v /usr/local/share/acme.sh-master /usr/local/share/acme.sh

Để làm cho chứng nhận quản trị viên chủ sở hữu người dùng của thư mục “/usr/local/share/acme.sh” và nội dung của nó, hãy chạy lệnh sau:

$ sudo chown -Rfv certadmin /usr/local/share/acme.sh

Tạo chứng chỉ SSL Let's Encrypt bằng Acme.sh cho NAS Synology của bạn

Để tạo chứng chỉ SSL Let's Encrypt cho tên miền bạn đang sử dụng trên NAS Synology, hãy điều hướng đến thư mục “/usr/local/share/acme.sh” như sau:

$ cd /usr/local/share/acme.sh

Bây giờ, bạn cần xuất các biến môi trường mã thông báo API DNS cần thiết. Chúng tôi sử dụng DNS CloudFlare để quản lý tên miền mà chúng tôi đang sử dụng trên NAS Synology của mình. Vì vậy, đối với chúng tôi, tất cả những gì chúng tôi phải làm là xuất biến môi trường CF_Token với giá trị của mã thông báo API CloudFlare DNS. Nếu bạn đang sử dụng một số dịch vụ DNS khác, kiểm tra tài liệu API DNS “acme.sh” để biết các biến bạn cần xuất để “acme.sh” hoạt động với dịch vụ DNS của bạn.

$ xuất CF_Token=''

Ngoài ra, hãy xuất các biến môi trường Synology cần thiết để “acme.sh” có thể cài đặt chứng chỉ SSL đã tạo trên NAS Synology của bạn.

$ xuất SYNO_User
$ xuất SYNO_Password='Your_certadmin_login_Password'
$ xuất SYNO_Certificate='Hãy mã hóa'
$ xuất SYNO_Tạo=1

Để tạo chứng chỉ SSL Let’s Encrypt cho tên miền “*.nodekite.com” (ký tự đại diện) bằng plugin CloudFlare DNS ( –dns dns_cf ), hãy chạy lệnh sau:

$ ./acme.sh --server letsencrypt --issue --dns dns_cf --home $PWD -d '*.nodekite.com'

Nếu bạn đang sử dụng các dịch vụ DNS khác, bạn cần thay đổi plugin DNS (–dns ) trong lệnh trước đó cho phù hợp. Để biết thêm thông tin, kiểm tra tài liệu API DNS “acme.sh” .

Chứng chỉ SSL Let's Encrypt đang được tạo. Phải mất một thời gian để hoàn thành.

Tại thời điểm này, chứng chỉ SSL Let’s Encrypt sẽ được tạo.

Cài đặt Chứng chỉ SSL Let's Encrypt trên NAS Synology của bạn bằng Acme.sh

Khi chứng chỉ SSL Let's Encrypt được tạo cho tên miền (*.nodekite.com trong trường hợp này) của NAS Synology, bạn có thể cài đặt nó trên NAS Synology của mình bằng lệnh sau:

$ ./acme.sh -d '*.nodekite.com' --deploy --deploy-hook synology_dsm --home $PWD

Nếu bạn đã bật xác thực hai yếu tố cho chứng nhận quản trị viên người dùng, bạn sẽ nhận được mã OTP. Bạn phải nhập mã OTP và nhấn .

Nếu bạn chưa bật xác thực hai yếu tố cho chứng nhận quản trị viên người dùng, hãy để trống và nhấn .

Nhấn .

Chứng chỉ SSL Let's Encrypt đã tạo phải được cài đặt trên NAS Synology của bạn.

Khi chứng chỉ SSL Let's Encrypt được cài đặt trên NAS Synology của bạn, nó sẽ được hiển thị trên Bảng điều khiển > Bảo vệ > Giấy chứng nhận phần giao diện web DSM 7 của NAS Synology của bạn.

Đặt chứng chỉ SSL Let's Encrypt làm mặc định trên NAS Synology của bạn

Để quản lý chứng chỉ SSL của NAS Synology của bạn, hãy điều hướng đến Bảng điều khiển > Bảo vệ > Giấy chứng nhận từ giao diện web DSM 7 của NAS Synology của bạn.

Để đặt chứng chỉ SSL Let's Encrypt mới cài đặt làm mặc định để các dịch vụ web mới cài đặt trên NAS Synology của bạn sẽ sử dụng chứng chỉ này theo mặc định, hãy chọn chứng chỉ SSL Let's Encrypt và nhấp vào Hoạt động > Biên tập .

Đánh dấu vào “Đặt làm chứng chỉ mặc định” [1] và nhấp vào “OK” [2] .

Chứng chỉ SSL Let's Encrypt phải được đặt làm chứng chỉ mặc định cho NAS Synology của bạn.

Để định cấu hình các dịch vụ web hiện có của NAS Synology của bạn để sử dụng chứng chỉ SSL Let’s Encrypt, hãy nhấp vào “Cài đặt”.

Như bạn có thể thấy, tất cả các dịch vụ web đều đang sử dụng chứng chỉ SSL tự ký của Synology.

Để thay đổi chứng chỉ SSL cho dịch vụ web, hãy nhấp vào menu thả xuống tương ứng từ bên phải.

Sau đó, chọn chứng chỉ SSL Let’s Encrypt mà bạn muốn sử dụng cho dịch vụ web từ menu thả xuống.

Theo cách tương tự, hãy chọn chứng chỉ SSL Let's Encrypt cho tất cả các dịch vụ web đã cài đặt trên NAS Synology của bạn và nhấp vào “OK”.

Bấm vào “Có”.

Những thay đổi đang được áp dụng. Phải mất vài giây để hoàn thành.

Sau khi chứng chỉ SSL Let's Encrypt được áp dụng cho tất cả các dịch vụ web trên NAS Synology của bạn, hãy làm mới trang web và giao diện web DSM 7 của bạn sẽ sử dụng chứng chỉ SSL Let's Encrypt.

Định cấu hình NAS Synology để tự động gia hạn chứng chỉ SSL Let's Encrypt bằng Acme.sh

Để định cấu hình NAS Synology của bạn để tự động gia hạn chứng chỉ SSL Let's Encrypt, hãy điều hướng đến Bảng điều khiển > Bảng kế hoạch từ giao diện web DSM 7.

Từ Trình lập lịch tác vụ, nhấp vào Tạo nên > Nhiệm vụ theo lịch trình > Tập lệnh do người dùng xác định .

Từ tab “Chung”, nhập “Gia hạn chứng chỉ SSL” trong phần “Nhiệm vụ” [1] và chọn “certadmin” từ menu thả xuống “Người dùng” [2] .

Từ tab “Lịch biểu”, chọn “Chạy vào ngày tiếp theo” [1] và chọn “Lặp lại hàng tháng” từ menu thả xuống “Lặp lại” [2] .

Điều hướng đến tab “Cài đặt tác vụ”, nhập lệnh sau vào phần “Tập lệnh do người dùng xác định” [1] , và nhấp vào “OK” [2] .

/usr/local/share/acme.sh/acme.sh –renew –server letsencrypt -d “*.nodekite.com” –home /usr/local/share/acme.sh

Một nhiệm vụ mới nên được tạo ra. Nhiệm vụ “Gia hạn chứng chỉ SSL” sẽ chạy hàng tháng và đảm bảo rằng chứng chỉ SSL Let’s Encrypt được gia hạn trước khi hết hạn.

Phần kết luận

Trong bài viết này, chúng tôi đã hướng dẫn bạn cách cài đặt và sử dụng ứng dụng khách ACME “acme.sh” để tạo chứng chỉ SSL Let's Encrypt thông qua thử thách DNS-01 trên NAS Synology của bạn. Chúng tôi cũng đã hướng dẫn bạn cách cài đặt chứng chỉ SSL Let's Encrypt đã tạo trên NAS Synology của bạn và định cấu hình các dịch vụ web của NAS Synology để sử dụng nó. Cuối cùng, chúng tôi đã chỉ cho bạn cách định cấu hình tác vụ đã lên lịch trên NAS Synology của bạn để tự động gia hạn chứng chỉ SSL Let's Encrypt trước khi hết hạn.

Người giới thiệu: