Sem descrição

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

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>