暂无描述

Joshua Avalon 0e27fbd7b8 Merge pull request #28 from silverwzw/master 2 年之前
.github 15e464fff9 update non-code files 6 年之前
.gitattributes 15e464fff9 update non-code files 6 年之前
CHANGELOG.md a94c445a64 Refactor script 6 年之前
LICENCE 15e464fff9 update non-code files 6 年之前
README.md d7d2e89317 Fixes #8 6 年之前
cloudflareddns.sh a720f3fdcb Fix unexpected script termination 2 年之前

README.md

Synology Cloudflare DDNS Script 📜

The is a script to be used to add Cloudflare as a DDNS to Synology NAS. The script used an updated API, Cloudflare API v4.

How to use

Access Synology via SSH

  1. Login to your DSM
  2. Go to Control Panel > Terminal & SNMP > Enable SSH service
  3. Use your client to access Synology via SSH.
  4. Use your Synology admin account to connect.

Run commands in Synology

  1. Download cloudflareddns.sh from this repository to /sbin/cloudflareddns.sh
wget https://raw.githubusercontent.com/joshuaavalon/SynologyCloudflareDDNS/master/cloudflareddns.sh -O /sbin/cloudflareddns.sh

It is not a must, you can put I whatever you want. If you put the script in other name or path, make sure you use the right path.

  1. Give others execute permission
chmod +x /sbin/cloudflareddns.sh
  1. Add cloudflareddns.sh to Synology
cat >> /etc.defaults/ddns_provider.conf << 'EOF'
[Cloudflare]
        modulepath=/sbin/cloudflareddns.sh
        queryurl=https://www.cloudflare.com
        website=https://www.cloudflare.com
E*.

queryurl does not matter because we are going to use our script but it is needed.

Get Cloudflare parameters

  1. Go to your domain overview page and copy your zone ID.
  2. Go to your profile > API Tokens > Create Token. It should have the permissions of Zone > DNS > Edit. Copy the api token.

Setup DDNS

  1. Login to your DSM
  2. Go to Control Panel > External Access > DDNS > Add
  3. Enter the following:
    • Service provider: Cloudflare
    • Hostname: www.example.com
    • Username/Email: <Zone ID>
    • Password Key: <API Token>