Script für Serverzugriff?

paulee

Erfahrenes Mitglied
Hallo!

Vorweg will ich hier nicht gleich nach einem Script "schnorren", sondern mir nur Anhaltspunkte geben lassen. Ich suche ein scr, mit welchem ich von einer Weboberfläche direkt auf meine DNS- Datein am gleichen Server zugreifen kann (named.conf - bind)

Habe eine Weboberfläche (PHP), mit der meine Kunden Domaineinträge bearbeiten können (sprich auf welchem Pfad die Subdomain/Domain/Port hinzeigen soll). Die Einträge werden in einer mySQL DB derzeit abgespeichert, und ich will es so machen, das wenn man sich einloggt, zur Domainübersicht kommt, und wenn man auf ändern geht, sich die geänderten Werte automatisch in der named.conf auch umstellen. Bis auf die Änderung direkt am Server der Datei habe ich alles geschafft.
Kann mir hier wer Anhaltspunkte o.a. geben?

Lg
 
Lösungsansatz:
Ein Cronjob ausgeführt von User root (sonst wirst du unter /etc kein Schreibrecht haben), arbeitet in einem festgelgten Interval deine SQL Tabelle ab. Ich kenne mich mit Bind nun nicht so gut aus, behaupte aber einfach mal, dass du nach einer Änderung der Conf Datei den Bind refresehen mußt - sollte also auch irgendwie noch mit in das Script rein.

cu Robert
 
Hallo!

Mit der Datenbank ist schonmal gut.
Ich würde auch ein extra Script machen (Shellscript, Perlscript oder falls PHP als CGI läuft kannst Du auch ein PHP Script nehmen) und dieses per Cronjob ausführen lassen.
Ein kleiner Hinweis (auf der Weboberfläche der Kunden) wie lange es dauert bis die Daten vom DNS übernommen werden, kann nicht schaden..... schliesslich wird ein Cronjob zeitgesteuert (z.b. alle 10 Minuten) und nicht auf befehl ausgeführt.
Klar, man kann Shellbefehle auch per PHP ausführen, aber ich bin der Meinung dass die Kunden diese Privilegien nicht bekommen sollten. ;)

Gruss Dr Dau
 
Ok Vielen Dank für die vielen Tipps! Ich werde nun versuchen einen Cronjob zu schreiben mit den entsprechenden Befehlen.
lg
 
Ich fasse nochmal zusammen:
Die Datenbank muss abgefragt werden.
Die aus der Datenbankabfrage resultierenden Ergebnise müssen in die named.conf geschrieben werden.
Anschliessend muss BIND neugestartet werden, dazu muss aber zuerst sichergestellt werden dass dass eintragen in die named.conf beendet wurde.

Das willst Du alles über den Cronjob machen?
Ich denke dass es fast unmöglich ist..... oder zumindest mit einem hohen Aufwand verbunden ist.

Wie gesagt, ich würde es mit einem Script machen..... und dieses dann zeitgesteuert per Cronjob ausführen lassen.
 
Vielleicht hilft das weiter
http://dnsqlpanel.sourceforge.net/

Ansonsten solltest du vorsichtig sein damit. Sprich nicht mit einem PHP Script irgendwelche Bind Konfigurationen umschreiben.
Eine Schicht dazwischen wie eine Datenbank bzw LDAP ist sicherer. Auch sollte das PHP Script den Server nicht reloaden, denn du müsstest die Rechte sonst so vergeben das PHP die Möglichkeit dazu hätte.
Besser ist ein Shell/Perl/Python Script welches bsp über den Zeitstempel einer Datei (die PHP erstellt / touched) darüber informiert wird das ein reload von Statten gehen soll.
 
Dr Dau hat gesagt.:
Ich fasse nochmal zusammen:
Die Datenbank muss abgefragt werden.
Die aus der Datenbankabfrage resultierenden Ergebnise müssen in die named.conf geschrieben werden.
Anschliessend muss BIND neugestartet werden, dazu muss aber zuerst sichergestellt werden dass dass eintragen in die named.conf beendet wurde.

Bind muss nicht mit named.conf konfiguriert werden. Besser ist es diese Informationen in ein Verzeichnissdienst, LDAP, zu schaffen und Bind so zu kunfigurieren das er seine Zonen da her bezieht: http://www.venaas.no/ldap/bind-sdb/

Und PHP bietet zwar LDAP funktionen.
http://de3.php.net/ldap

Dennoch würd ich erst in Ruhe evaluiren ob das eine gute idee ist.
 
@Christian, ich kenne mich mit BIND nicht aus..... meine Aussage bezog sich ja auch auf den Eingangsthread:
paulee hat gesagt.:
Ich suche ein scr, mit welchem ich von einer Weboberfläche direkt auf meine DNS- Datein am gleichen Server zugreifen kann (named.conf - bind)
Und PHP habe ich nur als eine von mehreren möglichen Optionen erwähnt. ;)

Bei mir kann auf PHP (als CGI) nur über die Shell zugegriffen werden und hat eine eigene php.ini.
Für Apache läuft eine zweite PHP Installation als Modul (ebenfalls mit eigener php.ini).
Und da ich der einzige mit Shellzugriff bin, dürfte diese Variante nicht unsicherer sein als z.b. mit Perl.
Ehrlich gesagt bin ich nicht dazu bereit mich mit der Shellprogrammierung zu befassen nur um die eine oder andere Aufgabe per Cronjob auszuführen.
Da greife ich lieber auf PHP zurück, denn damit befasse ich mich eh schon.
 
Zurück