Pembungkus CGI untuk RFC2136 NSUPDATE.
Kompatibel dengan AVM fritz! Box, ubiquiti edgerouter dan banyak lagi.
Kunci HMAC untuk mengirim pembaruan ke server nama dienkripsi .
Keyname dan frasa sandi adalah nama pengguna dan kata sandi untuk skrip.
Titik akhir default.
Digunakan oleh AVM Fritz! Box.
| Dapatkan parameter | Keterangan | Contoh |
|---|---|---|
| mode | Kontrol Jika alamat IP harus dipilih dari parameter kueri atau dari header permintaan | all : Parameter dan Permintaan IP digunakan, request : Permintaan IP digunakan, parameter : Parameter kueri digunakan |
| nama belakang | Nama kunci HMAC yang digunakan oleh nsupdate | exampleddns = /var/www/dyndns-cgi/keys/hmac-exampleddns.enc |
| kata sandi | Frasa sandi yang digunakan untuk mendekripsi kunci HMAC | |
| domain | Domain untuk memperbarui | ddns.example.com |
| IP4 | Alamat IPv4 untuk digunakan | 127.0.0.1 |
| IP6 | Alamat IPv6 untuk digunakan | :: 1 |
| aku p | Alamat IPv4 atau IPv6 untuk digunakan, parameter diabaikan saat ip4 atau ip6 didefinisikan | 127.0.0.1 |
Dyndns Versi 1.
Titik akhir membutuhkan otentikasi dasar HTTP.
| Dapatkan parameter | Keterangan | Contoh |
|---|---|---|
| host_id | Domain untuk memperbarui | ddns.example.com |
| myip | Alamat IPv4 atau IPv6 untuk digunakan | 127.0.0.1 |
Dyndns Versi 2.
Digunakan oleh Ubiqiti Edgerouter.
Titik akhir membutuhkan otentikasi dasar HTTP.
| Dapatkan parameter | Keterangan | Contoh |
|---|---|---|
| nama host | Domain untuk memperbarui | ddns.example.com |
| myip | Alamat IPv4 atau IPv6 untuk digunakan | 127.0.0.1 |
# original endpoint
curl " https://ns.example.com/cgi-bin/dyndns.cgi?username=exampleddns&password=eeh2phioyaa6ro1eiphuaRiuthee8EiJ&ip4=127.0.0.1&ip6=::1 " # dyndns1
# picked from ubiquiti edge router
curl -u exampleddns:eeh2phioyaa6ro1eiphuaRiuthee8EiJ " https://ns.example.com/nic/dyndns?action=edit&started=1&hostname=YES&host_id=ddns.example.com&myip=127.0.0.1 " # dyndns2
# picked from ubiquiti edge router
curl -u exampleddns:eeh2phioyaa6ro1eiphuaRiuthee8EiJ " https://ns.example.com/nic/update?system=dyndns&hostname=ddns.example.com&myip=127.0.0.1 " Ada contoh ansible dalam ansible-example.yml juga.
apt install dnsutils nginx-full libnginx-mod-http-lua fcgiwrapTempatkan file di sistem Debian/ Ubuntu Anda seperti di folder SRC/.
Jika Anda menjalankan distribusi Linux lain, Anda mungkin perlu melakukan beberapa perubahan.
Semua konfigurasi yang diperlukan dapat ditemukan di src/etc/nginx/dyndns_cgi.conf.
Itu harus dimasukkan ke dalam host virtual nginx.
Contoh konfigurasi virtual host dapat ditemukan di src/etc/nginx/situs-diable/example.conf.
Menghasilkan kata sandi:
perry@localhost ~ $ pwgen 32 1
eeh2phioyaa6ro1eiphuaRiuthee8EiJBuat kunci HMAC:
perry@localhost ~ $ dnssec-keygen -a HMAC-SHA512 -b 512 -n HOST exampleddns
Kexampleddns.+165+26667
perry@localhost ~ $ cat Kexampleddns.+165+26667.private
Private-key-format: v1.3
Algorithm: 165 (HMAC_SHA512)
Key: 0L0iTAPeXmyWbu0wJMsWw52GqVfeL22aZE2xmhlNcrXNdCgF3262ifx2yIuJs+T1H8CWdV+79HClWOzwvnn/LA==
Bits: AAA=
Created: 20210925150939
Publish: 20210925150939
Activate: 20210925150939Mengenkripsi kunci dengan kata sandi:
root@localhost ~# echo -n "0L0iTAPeXmyWbu0wJMsWw52GqVfeL22aZE2xmhlNcrXNdCgF3262ifx2yIuJs+T1H8CWdV+79HClWOzwvnn/LA==" | openssl enc -aes-256-cbc -e -iter 1000 -a -salt > /var/www/dyndns-cgi/keys/hmac-exampleddns.enc
enter aes-256-cbc encryption password: eeh2phioyaa6ro1eiphuaRiuthee8EiJ
Verifying - enter aes-256-cbc encryption password: eeh2phioyaa6ro1eiphuaRiuthee8EiJTambahkan kunci ke Bind9 Nameserver Anda:
key exampleddns {
algorithm hmac-sha512;
secret "0L0iTAPeXmyWbu0wJMsWw52GqVfeL22aZE2xmhlNcrXNdCgF3262ifx2yIuJs+T1H8CWdV+79HClWOzwvnn/LA==";
};Tentu saja sekarang Anda perlu menambahkan kebijakan pembaruan ke zona tersebut juga.