Ich habe eine Frage. Ich kann HTML programmieren (lernen es in der Schule) und mache mit meinem Kumpel zusammen eine Homepage. Wir wollen es gleich richtig machen, auch wenn es vielleicht nicht unbedingt alles nötig ist. Jetzt habe ich ein paar Fragen.
Okay, das erste, was du tun solltest, ist die Idee mit der Seite auf Papier zu fassen und bei Seite zu legen. In 2-3 Jahren kannst du den Zettel noch mal hervor nehmen und die Seite umsetzen. Das was du mit HTML siehst, ist die Spitze vom Eisberg und du kannst/ musst noch sehr tief tauchen, bis du eine Webseite veröffentlichen kannst.
1. Ich möchte gerne, dass die Seite https unterstützt, also verschlüsselt ist. Dazu muss ich ein Zertifikat kaufen - welches Zertifikat kann man empfehlen? Und vor allem, wie funktioniert die "Installation" des Zertifikats?
Du musst kein Zertifikat kaufen. Normalerweise muss man davon ausgehen, dass eine Verbindung, die mit einem Server aufgebaut wird mutmaßlich kompromittiert wurde. Rufst du also google.de auf, musst du davon ausgehen, dass du überhaupt nicht mit Google, sondern mit
irgendwem sonst sprichst und jeder der möchte ebenfalls zuhören kann. HTTPs sorgt erst mal nur dafür, dass die Verbindung zwischen dir und deinem Gesprächspartner nur noch von dir und deinem Gesprächspartner gelesen werden kann. Das heißt, wenn du mit Google verschlüsselt sprichst, dann eliminierst du die Gefahr, dass sich jemand dazu stellen kann und zuhören kann, was du sprichst. An diesem Punkt weißt du allerdings noch nicht, ob du wirklich mit Google sprichst, wenn du glaubst mit Google zu sprechen. Zwar kann kein Dritter mehr zuhören, es könnte aber sein, dass du mit der NSA sprichst, statt mit Google. Hier kommen jetzt diese gekauften Zertifikate ins Spiel. Die Zertifizierungsstellen gelten allgemein als vertrauenswürdig. Wenn google eine verschlüsselte Verbindung mit dir aufbaut, dann sagt - im Prinzip(!) die Zertifizierungsstelle dir, dass dein Gesprächspartner wirklich Google ist und nicht die NSA. Dafür lassen sich die Zertifizierungsstellen diesen Service allerdings vergolden und verlangen jede Menge Geld. Du solltest außerdem beachten, dass eine solche Zertifizierung
eigentlich keinen Sicherheitsgewinn bringt, denn du musst dich fragen, ob du der Zertifizierungsstelle wirklich glauben kannst. Dass auch Zertifizierungsstellen Fehler unterlaufen und dass auch auf sie Einfluss genommen wird, ist nichts neues.
Für die reine Verschlüsselung kannst du selbst die nötigen key, crt Files etc erstellen.
2. Welchen Hoster kann man empfehlen? Es sind keine Massen an Daten vorhanden, auch kein Traffic, der ein paar GB im Monat verursachen würde. Auch bezüglich des Zertifikats, gibt es beim Hoster was zu beachten?
Für reines Webhosting wird oft keine Möglichkeit für HTTPs angeboten und wenn entsprechend teuer. Ein Server (Rootserver, Dedicated Server) ist für dich mehr als eine Nummer zu groß. Du lernst gerade zu laufen, ein Kampfjet ist noch lange nichts für dich.
Bei der Wahl deines Hosters solltest du vor allem auf Laufzeit, Traffic (Flatrate!), Datenbank und PHP achten.
Gute Hoster sind contabo und netcup.
3. Ich habe ein Kontaktformular erstellt - welchen "Mailer" soll ich nutzen, um die eingegebenen Kontaktdaten an die hinterlegte E-Mail Adresse zu senden? Und ich möchte auch, dass die E-Mail verschlüsselt wird (z.B. S/MIME).
Dazu reichen deine Kenntnisse noch lange nicht aus. Wenn du HTML wirklich sauber beherrschst, kannst du dich mal an beispielsweise PHP heran wagen und das lernen. - PHP nur beispielsweise, weil es auch Leute gibt, die es verteufeln. Das ist aber letztlich nur eine Glaubensfrage.
Das Kontaktormular habe ich mit PHP erstellt, also nicht nur HTML. Es soll aber auf jeden Fall die E-Mail verschlüsselt werden.
Mit PHP kann man sehr leicht und schnell Emails versenden, allerdings kann man mehr als ausreichend Fehler dabei machen und wenn dein Script eine Schwachstelle aufweist, bist du sehr schnell eine Spamschleuder. Das kann im Zweifelsfall kostenpflichtig abgemahnt werden. Neben den Problemen, die du in dem Fall mit deinem Hoster bekommst, hast du dann auch noch Probleme mit Anwälten geschädigter Opfer.
Es gibt einige fertige Bibliotheken und zum Teil auch Systeme, die darauf ausgelegt sind dir sichere Emaildienste anzubieten. Freunde dich lieber damit an, bevor du versuchst das Rad neu zu erfinden. Da du bereits weißt, wie du deine Emails verschlüsseln möchtest, gebe ich dir nur einen Tipp, denn wenn du wirklich etwas lernen willst, dann sicher nicht dadurch, dass ein netter Mensch dir alles vorsagt, sondern dass du dich selbst mit den einzelnen Themen beschäftigst und liest, liest, liest und nochmal liest und verstehst, einen Überblick entwickelst, Zusammenhänge erkennst und selbst auf die Lösung kommst. Das ist der harte und frustrierenste und zeitaufwändigste Weg, es ist aber der einzige Weg, der dich auf Dauer weiter bringt. Also mein Tipp: Schau dir an, wie das favorisierte Cryptoverfahren aufgebaut ist, wie es funktioniert und wie man es implementiert oder suche nach einer Lösung, die genau das bereits tut.
Edit: Dass evtl. Flash-Elemenet etc. einegbaut werden (später) kann gut sein.
ACHTUNG
Nein, du willst lernen saubere Webseiten zu schreiben und saubere Systeme zu programmieren. Du wirst NIE Flash-Elemente in deine Seite einbauen. Vorher lässt du dich und deine Familie zu Tode foltern. Flash wirst du nicht auf deiner Seite haben.
Es ist dann eine dynamische Seite - deshalb bitte Zertifikat
Dynamisch heißt nicht, dass sich etwas bewegt. Ein bewegtes Bild/Video ist keine dynamische Seite. Eine dynamische Seite heißt, dass du bei gleichen Aufrufen unterschiedliche Ergebnisse erhalten kannst. Wenn Max Mustermann die Seite besucht, bekommt er andere Inhalte zu sehen, als Melanie Mustermann. Das kann heißen, dass Melanie mit "Willkommen Frau Mustermann" und Max mit "Willkommen Herr Mustermann" begrüßt wird, dass Melanie eine Werbeanzeige für Damenschuhe und Max eine für Rasierschaum angezeigt wird oder dass Max einen Zugriff auf die Seite verwehrt bekommt, während Melanie die Seite einwandfrei nutzen kann.
Ja, wie auch immer, man muss dafür nicht was weiß ich programmieren, oder? Habe so etwas noch nie gemacht, und in der Schule auch nicht, klar.
Nein, sobald dein Server eine SSL Verbindung aufbauen kann, kann er die ganz normalen Inhalte, die du ablegst, entweder verschlüsselt oder unverschlüsselt übertragen, je nachdem, ob er mit deinem Besucher eine verschlüsselte oder eine unverschlüsselte Verbindung unterhält. Allerdings solltest du entsprechend klar machen, ob eine verschlüsselte Verbindung aufgebaut werden soll oder nicht. Das kannst du entweder innerhalb deiner Seite kodieren (zum Beispiel indem du ein Formular nicht etwa an
http://meine-seite.de sondern an
https://meine-seite.de sendest) oder eben dem Server beibringen, dass er http Anfragen immer auf https-Anfragen umlenkt. Das eine ist dann die nette Aufforderung eine verschlüsselte Verbindung zu verwenden, bei dem anderen erzwingst du sie.
Sonst ist es für deine Seite aber vollkommen egal, ob sie nun über http oder https aufgerufen wird.
Die Mail soll nicht mit PGP o.ä. verschlüsselt werden. Ich meinte eine Ende-zu-Ende Verschlüsselung, so wie es z.B. im Mail Client (SSL) der Fall ist. Eben das der weg vom Benutzer bis zum Server sicher ist.
PGP ist eine End2End-Verschlüsselung. SSL ist
keine End2End-Verschlüsselung:
Bob <--> Server <--> Alice
SSL setzt an den Verbindungen zwischen Bob und dem Server bzw dem Server und Alice an.
Die Nachricht selbst, sehen allerdings Bob, der Server und Alice im Klartext. Nur wer sich dazwischen klemmt, sieht die Nachricht nicht im Klartext.
PGP verschlüsselt die Nachricht prinzipiell. Bob sieht die Nachricht, die er abschickt und Alice kann die Nachricht entschlüsseln. Aber weder auf dem Übertragungsweg noch auf dem Server kann die Nachricht gelesen werden.