Eigenen DynDNS Server: Unterschied zwischen den Versionen
Zur Navigation springen
Zur Suche springen
Zeile 18: | Zeile 18: | ||
PRIMARY KEY (id) | PRIMARY KEY (id) | ||
); | ); | ||
</pre> | |||
=== Script === | |||
<pre> | |||
<?php | |||
$mysqli = new mysqli("127.0.0.1", "powerdns", "<password>", "powerdns_admin"); | |||
/* check connection */ | |||
if (mysqli_connect_errno()) { | |||
die("Verbindung fehlgeschlagen: " . $mysqli->connect_error); | |||
} | |||
$pass1=$mysqli->real_escape_string($_GET['pass']); | |||
//$ip=$_SERVER['HTTP_X_FORWARDED_FOR']; | |||
$ip=$_SERVER['REMOTE_ADDR']; | |||
$host=$mysqli->real_escape_string($_GET['host']); | |||
switch ($host) { | |||
case "zuhause": | |||
$pass2="abc123"; | |||
break; | |||
default: | |||
$pass2=FALSE; | |||
break; | |||
} | |||
if (($pass1 != $pass2) OR (!$pass2)) { | |||
echo "Falsches Passwort oder unbekannter Host"; | |||
exit; | |||
} | |||
//$domain=$host.".dyn.klenzel.de"; | |||
//$domain2="*.".$domain; | |||
//$result1=mysql_query("UPDATE records SET content='$ip' WHERE name='$domain';"); | |||
//$result2=mysql_query("UPDATE records SET content='$ip' WHERE name='$domain2';"); | |||
?> | |||
</pre> | |||
<pre> | |||
http://ddns1.kirner.or.at/?host=zuhause&pass=abc123 | |||
</pre> | </pre> | ||
Version vom 1. Februar 2020, 18:30 Uhr
Noch in Bearbeitung
Script
Datenbank erstellen
create database if not exists ddns; grant all on ddns.* to 'powerdns'@'localhost';
CREATE TABLE users ( id INT OT NULL AUTO_INCREMENT, username VARCHAR(64) NOT NULL, password VARCHAR(64) NOT NULL, PRIMARY KEY (id) );
Script
<?php $mysqli = new mysqli("127.0.0.1", "powerdns", "<password>", "powerdns_admin"); /* check connection */ if (mysqli_connect_errno()) { die("Verbindung fehlgeschlagen: " . $mysqli->connect_error); } $pass1=$mysqli->real_escape_string($_GET['pass']); //$ip=$_SERVER['HTTP_X_FORWARDED_FOR']; $ip=$_SERVER['REMOTE_ADDR']; $host=$mysqli->real_escape_string($_GET['host']); switch ($host) { case "zuhause": $pass2="abc123"; break; default: $pass2=FALSE; break; } if (($pass1 != $pass2) OR (!$pass2)) { echo "Falsches Passwort oder unbekannter Host"; exit; } //$domain=$host.".dyn.klenzel.de"; //$domain2="*.".$domain; //$result1=mysql_query("UPDATE records SET content='$ip' WHERE name='$domain';"); //$result2=mysql_query("UPDATE records SET content='$ip' WHERE name='$domain2';"); ?>
http://ddns1.kirner.or.at/?host=zuhause&pass=abc123
Mit PowerDNS
Links
https://www.debacher.de/wiki/Mein_eigenes_DynDNS
https://controlc.de/2013/09/10/debian-selbstgehosteter-dyndns-dienst/
https://controlc.de/2014/08/25/debian-selbstgehosteter-dyndns-dienst-der-client-teil/#more-2532)
http://www.keentech.de/2013/11/der-eigene-selbstgehostete-dynamische-dns-service/
http://nicht-traeumen-sondern-machen.de/RaspberryPi_Basteleien/DynDNS_mit_Fritzbox.php
Zurück zu Ubuntu