diff --git a/cli/daemon/README.markdown b/cli/daemon/README.markdown index 8d7e464..7648d15 100644 --- a/cli/daemon/README.markdown +++ b/cli/daemon/README.markdown @@ -1,4 +1,4 @@ -# mise à jour auto +# mise à jour automatique (façon DynDNS) Pour mettre à jour automatiquement une adresse IP d'un nom de domaine, il faut changer les quelques valeurs du fichier daemon.pl (en haut) et avoir le diff --git a/cli/daemon/ca.cert b/cli/daemon/ca.cert index 1e4e737..0cdbdfb 100644 --- a/cli/daemon/ca.cert +++ b/cli/daemon/ca.cert @@ -1,31 +1,31 @@ ------BEGIN CERTIFICATE----- -MIIFUDCCAzgCCQDV/QJQr9sX7DANBgkqhkiG9w0BAQsFADBqMQswCQYDVQQGEwJG -UjEPMA0GA1UECAwGQWxzYWNlMRMwEQYDVQQHDApTdHJhc2JvdXJnMRIwEAYDVQQD -DAluZXRsaWIucmUxITAfBgkqhkiG9w0BCQEWEmthcmNobnVAa2FyY2hudS5mcjAe -Fw0xNDA4MjMwODAwNThaFw0xNTA4MjMwODAwNThaMGoxCzAJBgNVBAYTAkZSMQ8w -DQYDVQQIDAZBbHNhY2UxEzARBgNVBAcMClN0cmFzYm91cmcxEjAQBgNVBAMMCW5l -dGxpYi5yZTEhMB8GCSqGSIb3DQEJARYSa2FyY2hudUBrYXJjaG51LmZyMIICIjAN -BgkqhkiG9w0BAQEFAAOCAg8AMIICCgKCAgEAxaqx8ToKV4lxqOJa+h7WA9qh7ygk -3JGOx6EEquL29YUfZXvKHjA3fNUIAXzlUJZXferLO/w62t4M9Lha0beOuM3gQvXz -RzeGAgzeEAfDN892+GIYwf7e4a6VQFU99Bb6/cetnqFSw9PiFIC1XpG/lCSR4INd -8msGuW6YIJ30AYE2PWNhn8C44szpe4xzQrv5omJsRC4+DXe9yLAdurbvUXzEijE3 -3rii+vlj52awfsCwxGDh8oblm/ir0ISBqTpq6V/xsCD8S4L9c80HeqGzmcF1LpEl -dpcSDKLCXLszwKJz/aNiUxPq4m7IWe0av87hUGunzDT9+NUwWcsqHBdAuACQ6xK+ -j3ZtzoiZtPDKLyfdKc4kgx1heiWLn6KCSqgHmfYLQiT7o0kYpOMM7wCjfkMAFI7G -LCv5Vx3hgx2erjwnWKXCt+QiUISvzNs9kP3DhcOKtKr4bzEwW8CCML+qnftCjb4w -+TLKIQNTUlp2I+To2VCnywylFyqOGxR7NKapSjoUUKyCkjcUpNUojy3sLsc1/QeM -YRYvOyQpU+xxCGrAQjf+AE0G8QEPPry2MOLGJvg2BUJstgn2IEoYPL7uwtRSwh8b -VtXdXX5kAdKj00XBEKOEJ0rRq/ahVTsJaC5ndvcicnp5oMbb5xx0Uvhr+SjqbOo1 -VU1qXIbGq87lMu0CAwEAATANBgkqhkiG9w0BAQsFAAOCAgEAhiIHGcruJ6kZLuFD -wmi+ZMu3V8v0MlN6v4+VhqHbu5NGsNqXVKKo+JXs9oGlgVgSYN/OaKHc56Xs0/8m -5mOzxm42IbMs8bj1twGAdngOo+HeXHmJMU87WaD7Igv4IG6bgE5pkhnrvsBxsvyn -tnbRvbX582RC40OIw1uVMmYmQGNYBpl4+i94oIEjTDZys6t8MfOsJj1yAuJdYfzn -oKZfsxfLy1Ze68u6ZOkxdNhvVmyddMGOEhhC2KgWEsFbC9aRmfPKWHS2x8pmyiwz -eUgwDVKeuLTuPn8XzYk9BW8TFGnhEfj1wrTb3jdY9NSBBsc2o4bgb8nYQfqsRv8y -F0yqzWbBiYKPhITf2n8qdUV3k5FE+uVLlqRERQOa07+kS5kUrpPHurhhgIXN2c2p -Xutz+EmDyWyLyDCXAk4kKGldiqUpIozs4faYJOxtlZmNKXmokmalSl9eN/S8tIXQ -JQ/dJnvYW9L0hvHWxF03LJ5Pee88nZfIRyN0R6olLcI3oSWCOJAfFeqklnJj5YHs -G43BeSW4DGPKCRz6x3i7Y2S5mbfqHFzg1OloU2ybbvCSJhuxyEiSxPkWv5Tl867x -ltju9/n8caTlMRAxskGhYnlmg7xsMrr474YAWxelo1OAEbwA+8mWKlbOFa40BHMt -Ih5Vwu3gN7dmX293gXRYTSnYBgs= ------END CERTIFICATE----- +-----BEGIN CERTIFICATE----- +MIIFUDCCAzgCCQCq5y4848m2JzANBgkqhkiG9w0BAQsFADBqMQswCQYDVQQGEwJG +UjEPMA0GA1UECAwGQWxzYWNlMRMwEQYDVQQHDApTdHJhc2JvdXJnMRIwEAYDVQQD +DAluZXRsaWIucmUxITAfBgkqhkiG9w0BCQEWEmthcmNobnVAa2FyY2hudS5mcjAe +Fw0xNTEyMjIyMTA5MTVaFw0xNjEyMjEyMTA5MTVaMGoxCzAJBgNVBAYTAkZSMQ8w +DQYDVQQIDAZBbHNhY2UxEzARBgNVBAcMClN0cmFzYm91cmcxEjAQBgNVBAMMCW5l +dGxpYi5yZTEhMB8GCSqGSIb3DQEJARYSa2FyY2hudUBrYXJjaG51LmZyMIICIjAN +BgkqhkiG9w0BAQEFAAOCAg8AMIICCgKCAgEAyGHz36Hu/+9fR+YHsG8eaCqCtHqy +0o6he5/1g40Pw6jXbep0kpMkQ0WwZP7bNnbl5MQWSa1fA4piXbAtyDAFIP7H/MKh +7BBxTWGLyPkTqDLC0lN9V6HPyTTgAyp2q0nuZ0eJFfL7dwk+SKCccL32TwiOHns+ +OnNgFUfR2NFrsRQevr0IFvbYBVakS8p2xVSo8xEOQl/HMG9L6mM/gf3XQLhSTcrl +7y0IsUP3uE3UVvJ4CA0a8Z5XMV1k3J/HnKMm+e7zvJf7C8PkD2/7lF+k4ZlN6Y07 +eTs93VUdJRhfTKX4NiPsi2DtqlqxJehCt8ExJ7TT/BiA3cmditMOSNG86jQ3oKdq +Zx/It3L0dbpHawKbXU9aWddzb9bIspTtcL80ta90YyJlGxAhH6J3W4gi5P6PBI+3 +YUPaUJtSbcdGgCo6QkvzOQuDTRaKSfPvoJg4c0AIpZeOWmxhY8RF6vaUyzgiOHvd +S8K8AFR71GOEJtk9Fs318YUt+rQFS9MqCe811Kh87pUs8cN+EPu/4XurDFzY3hE2 +VVNx9NGbzFtDhPS8MqDUEw1xtfOEe5+DGqUiLnVnvx/H9lAN356dqfX5xRX0aJT8 +8xiYN+I5psRiHIe1tOtUf/LWA6ghnqRZiGxhSc354iZpwlHJlUut6sNEJBqUt/i/ +tcHTsQI64xhv3z0CAwEAATANBgkqhkiG9w0BAQsFAAOCAgEAQhKm5NGO6DvKC2Wn +UTSHdpVvTlai6FgzTkAsZTW3pLW7vpYk3L1oGr0T5C+v8tLVwBwTZXtaaWqkr205 +J8i02Mt2l7gcKuCyMfWhtH03Ue6dp/s4kHh68jp2FYbZ0R7U9W9XoDL+CW1Xm9hA +ZQS4C8Jyuiv4WrgTNn8MWQdlEo9Ln+V3sHHKBoetVRgSv/HPRxjAOxvEF1xu408p +HVjL3bZkZLnDPd/poYa4IN6lAEYhmVBbO7uFzqNPfDgMHm/nJotXwFkRyr1Msl2f +3auH+JDRWUK4LAFcDskynntNxEF3VAxsqATihDxx2GC/4Nw1uNjJZR79s+Bq/NDc +50j1UZistkdlv+C9vi/B1p2eIhiPnxEcYyIwlJ/hmKVwEDAhmMfCTnSRntOV5Sed +zw6w7LapDvERnT+QQ/2nIRzhc7dSUF0a5i/ATMHx3NCRvcpDbhnk0y5t8+1pZjUv +rAcfCH+Mdeg+GhJ3+xCwWLaDhAoAUfPDXrl9C/Ie4qqCwL3uQZjh332ZUY6xut0A +AlZCINMymDmg3LTNgoJdieFpgkYfmDrLPWIKMIWU3qNqhxfN5QL715NBOYSUEgZF +kxCQT0AB0KRyDWWaDkH3FsUZFsvygY2OTI8QfraTVFlh3SSRkn/To7l0CVFnM4B9 +qmWLMe+4QMmwGR162WYu+Xmppl8= +-----END CERTIFICATE----- diff --git a/cli/daemon/daemon.pl b/cli/daemon/daemon.pl index e317aac..9faf846 100755 --- a/cli/daemon/daemon.pl +++ b/cli/daemon/daemon.pl @@ -3,15 +3,29 @@ use strict; use warnings; use v5.14; -our $ndd = "netlib.re"; -our $domain = "montest.netlib.re"; -our $name = "www"; -our $ttl = "3600"; -our $login = "test"; -our $pass = "test"; +# the website sending your current IP address +our $checkip = "http://t.karchnu.fr/ip.php"; + +# Domain name of the service provider (like netlib.re) +our $nddservice = "netlib.re"; + +# Your domain +our $domain = "test.netlib.re"; + +# Login and password to connect to the website +our $login = "idtest"; +our $pass = "mdptest"; + +# Your entry to change +our $name = 'www'; +our $type = 'A'; # could be AAAA + +# The CA certificate, to authenticate the website (should be provided) +# Check your service provider for updates +our $cacert = "ca.cert"; sub get_ip { - my @tmp_ip = split "\n", `wget -nv -O - http://t.karchnu.fr/ip.php`; + my @tmp_ip = split "\n", `wget -nv -O - $checkip`; my $ip; for(@tmp_ip) { @@ -25,35 +39,14 @@ sub get_ip { sub update { my $ip = get_ip; - my $type; - if($ip =~ /:/) { - $type = "AAAA"; - } - else { - $type = "A"; - } - - my $todig; - if($name =~ '@') { - $todig = $domain; - } - else { - $todig = "$name.$domain"; - } + say "UPDATE :: domain $name.$domain => IP $ip, type $type"; - my $oldhost = `dig +short $todig`; - chomp $oldhost; - - say "domain $domain"; - say "name $name"; - say "type $type"; - say "oldhost $oldhost"; - say "ttl $ttl"; - say "ip $ip"; - - #say "wget -O - https://$ndd/domain/cli/$login/$pass/$domain/$name/$type/$oldhost/$ttl/$ip --ca-certificate=ca.cert"; - say `wget -O - https://$ndd/domain/cli/$login/$pass/$domain/$name/$type/$oldhost/$ttl/$ip --ca-certificate=ca.cert`; + my $cmd = "wget -O - "; + $cmd .= + "https://$nddservice/domain/cliup/$login/$pass/$domain/$name/$type/$ip "; + $cmd .= "--ca-certificate=$cacert"; + say `$cmd`; } update;