HTML-Formular -> PHP-Skript auf anderen Server

Kennst du denn ein gutes Tutorials wie ich Ubuntu inkl. allem was nötig ist installieren kann?
Was sind denn die wichtigsten Sicherheitseinstellungen die man vornehmen sollte?

Ist es evtl. möglich den Homeserver mit einer .htaccess zu sichern mit Login-Name und Login-Passwort? Dann könnte ich die Login-Daten ja via PHP-Skript zuschicken oder?

Ich habe mich für einen eigenen Homeserver entschieden. So kann ich viel dazu lernen und es würde mich auch spaß machen.

Als Computer werde ich einen AMD 2x 3Ghz, 2GB, 500GB HDD benutzen.
 
htaccess: Sicher möglich, aber eher suboptimal.
Das Passwort wird uU. im Klartext übertragen usw...

Aber da ja beide Seiten praktisch von dir dir kontrolliert werden
(Server-PHP und Online-PHP) und auch keine Verschlüsselungsstandards
eingehalten werden müssen (wie bei https, damit der Browser damit klarkommt)
kannst du die Zugriffe ziemlich bombensicher machen.

Nur, um Missverständnisse zu vermeiden:
Ich rede jetzt nicht von Direkt-Angriffen auf den Server selbst,
sondern Passwort-abfangen, ...oder verhindern, dass jemand durch manuelle PHP-Aufrufe die DB beeinflussen kann (nur die Online-PHP soll das dürfen)...

Es wird verwirrend.
Also kurz: Du musst
a) Deinen Homeserver-Apache so einstellen, dass man ihn von außen nicht beeinflussen kann.
Das in jedem Fall.
b) Je nach Wichtigkeit der Daten auch die Verbindung und PHP-Skripts entsprechend
absichern. Das auch generell auf jedem Webspace etc.,
jetzt unabhängig von speziell deinem Server.

Zu a) kann ich, wie schon gesagt, keine guten Anleitungen verlinken.
Ich kannte mal was, habs aber schon längst vergessen.
Vllt. find ich es in ca. 999000 Links in dem Jahr noch wieder...
oder es meldet sich jemand anderes.

Zu b) schreib ich jetzt gleich noch was...
 
Erst einmal Danke für deine Unterstützung. :)

Eine zwischen Frage. Ich hatte ja eigentlich vor das alles (HTML-Formular, PHP-Skript usw.) auf dem Webspace ausgeführt wird. Aber umso mehr ich darüber nachdenke, wäre es doch eher Vorteilhafter wenn ich das gesamte Skript auf den Homeserver verlege oder?

Vielleicht bin ich auch einfach blöd aber wäre das nicht schon einmal ein kleines Plus an Sicherheit? Oder könnte man diese Aktion z.B. mit "live http headers" sehen?

HTML-Formular (Webspace) -> PHP-Skript* (Webspace) -> Homeserver -> Webspace

* Das PHP-Skript empfängt die Daten vom HTML-Formular und baut eine Verbindung zum Homeserver auf. Das sollte man doch eigentlich als User nicht sehen?
 
Zuletzt bearbeitet:
Alles auf Homeserver:
Sind 10MB Up, 2GB RAM etc. für die erwartete Last genug?
Wenn nicht, den Webserver als Hauptkraft behalten und
den Homeserver eben für die geplante Spezialunterstützung.

Live HTTP Header: Was meinst du damit?

Web-PHP baut Verbindung zu Home-PHP auf:
Genau, das merkt der User nicht. Das ist doch der Sinn davon, oder?

Wie auch immer, hier etwas, was ich zur Verbindungssicherheit
zwischen Webserver und Homeserver geschrieben habe
(ist eigentlich Ergänzung des oberen Posts):
-------------
Also, Verbindung absichern.

Wie viel Schutzbedarf haben deine Daten?
Oder anders: Wie viel Schaden kann entstehen, wenn sie ein Unberechtigter bekommt?

Vorneweg: Es gibt natürlich die Möglichkeit, https zu verwenden.
So ein Zertifikat ist aber je nach Schutzstufe nicht gerade billig.

Da beide Seiten von dir kontrolliert werden (Online-PHP und dein Homeserver)
kann man eine vergleichbare Sicherheit aber auch selbst erzeugen.
Ist zwar etwas Bastelei mit PHP, kostet aber nichts.

Für Server-zu-Benutzerbrowser ist das ungeeignet (da der Browser mit irgendwelchen eigenen Verschlüsselungen nichts anfangen kann und das standardisierte https will).
Aber zwischen PHP-Dateien, die beide von dir geschrieben sind...

Schritt 1: Verschlüsselung selber
Nun...das dürfte relativ klar sein.
A verschlüsselt, sendet. B empfängt und entschlüsselt.
Als Algorithmusss...zB. Rijndael.

Was aber nicht gemacht wird: A sendet den Schlüssel mit zu B,
damit der auch wieder entschlüsseln kann.
Wenn wer die gesamten Daten abfängt, hat er den Schlüssel dabei; damit wäre alles wieder angreifbar.
Stattdessen: Nun, du hast beide PHP-Dateien in der Hand.
Generier einen guten Schlüssel und schreib ihn fix in beide Dateien.
Die PHPs sind vom Client ja nicht einsehbar, und der Schlüssel muss nicht mitübertragen werden.
Keine Chance, abgefangene Daten zu entschlüsseln.
Um noch sicherer zu gehen, kann man den Schlüssel ja zB. jedes Monat einmal ändern.

Die (vergleichsweise) günstigen Varianten von https haben
das Risiko mit dem Schlüssel-übertragen übrigens auch.
Also bist du jetzt schon besser dran, und kostenlos :D

...
Ein weiteres Problem gibt es allerdings noch.
Angenommen, A schickt B verschlüsselt den Befehl: Lösch den Benutzer ID 47 aus der DB.
Gut. Und jetzt liest jemand die Daten auf der Leitung mit (lasst sie aber beim Ziel ankommen).
Er kann die Nachricht nicht entschlüsseln hat sie aber immerhin einmal.
Jetzt vergeht einige Zeit, inzwischen gibt es einen neuen Benutzer mit ID 47.
Wenn jetzt der Angreifer die verschlüsselte Lösch-47 Nachricht von seinem Computer aus
zum Server sendet (ohne sie jemals entschlüsselt zu haben), löscht der Server den 47 wieder.

Man muss also sicherstellen, das der Befehl wirklich vom richtigen Absender kommt.
Das wird etwas komplexer als die Rijndael-Verschlüsselung (die ja nicht viel PHP-Code braucht)
...Glaubst du, dass deine Daten diesen Schutz auch noch benötigen?
Dann würde ich noch was weiter schreiben....
 
Zurück