I. Tạo người dùng mới
Truy cập vào Control Panel -> User -> Create
Nhập tên người dùng (Ví dụ: Cert) và mật khẩu đủ mạnh.
Thêm người dùng vào nhóm Administrators nhưng tắt mọi quyền truy cập đến Shared Folder.
II. Tạo chứng chỉ Let's Encrypt
1. Lấy API Key của Cloudflare
- Thiết lập Cloudflare Nameservers cho domain:
Truy cập vào đường dẫn dash.cloudflare.com/profile/api-tokens, chọn Global API Key và chọn View.
Lưu lại API Key để sử dụng cho bước sau.
2. Tạo chứng chỉ và thêm vào DSM
Kích hoạt tạm thời SSH bằng cách truy cập Control Panel -> Terminal & SNMP -> Enable SSH service
Kết nối SSH đến NAS bằng tài khoản vừa tạo ở bước trên.
wget -O /tmp/acme.sh.zip https://github.com/acmesh-official/acme.sh/archive/master.zip
sudo 7z x -o/usr/local/share /tmp/acme.sh.zip
sudo mv /usr/local/share/acme.sh-master/ /usr/local/share/acme.sh
sudo chown -R cert /usr/local/share/acme.sh/
- Tạo chứng chỉ Let's Encrypt và thêm vào DSM:
cd /usr/local/share/acme.sh
./acme.sh --issue -d "*.lelong.dev" --dns dns_cf --home $PWD --server letsencrypt
export SYNO_Username="cert"
export SYNO_Password="MyPassw0rd!"
export SYNO_Certificate="*.lelong.dev"
export SYNO_Create=1
./acme.sh -d "*.lelong.dev" --deploy --deploy-hook synology_dsm --home $PWD
- Truy cập vào Control Panel -> Security -> Certificate xem đã có chứng chỉ hay chưa, nếu có tức là đã thành công.
III. Thiết lập Task Scheduler để tự động gia hạn chứng chỉ
Truy cập vào Control Panel -> Task Scheduler
Chọn mục Create -> Scheduled Task -> User-defined script
Ở tab General, đặt tên cho Task, chọn User là tài khoản vừa tạo.
Ở tab Schedule, chọn Run on the following date, chọn Repeat every three months.
Ở tab Task Settings, nhập lệnh sau vào mục User-defined script:
# Gia hạn một chứng chỉ
/usr/local/share/acme.sh/acme.sh --renew -d "*.lelong.dev" --home /usr/local/share/acme.sh
# Gia hạn toàn bộ chứng chỉ
/usr/local/share/acme.sh/acme.sh --cron --home /usr/local/share/acme.sh
- Bấm OK để lưu, chứng chỉ sẽ được gia hạn tự động ba tháng một lần.