webseiten
Unterschiede
Hier werden die Unterschiede zwischen zwei Versionen der Seite angezeigt.
Beide Seiten, vorherige ÜberarbeitungVorherige ÜberarbeitungNächste Überarbeitung | Vorherige ÜberarbeitungNächste ÜberarbeitungBeide Seiten, nächste Überarbeitung | ||
webseiten [2016/02/20 12:53] – letsencrypt hinzugefügt julian | webseiten [2020/04/25 15:40] – Bisschen Text vereinfacht. julian | ||
---|---|---|---|
Zeile 5: | Zeile 5: | ||
* den Shellserver zum Testen und Hochladen, siehe auch [[shell|Shell]]. | * den Shellserver zum Testen und Hochladen, siehe auch [[shell|Shell]]. | ||
* einen Pre-Proxy | * einen Pre-Proxy | ||
- | * verschiedene Webserver, je nach PHP-Version (momentan 5.2 und 5.3). | + | * verschiedene Webserver, je nach PHP-Version (momentan 5.2, 5.3, 5.4, 5.6, 7.0, 7.2, 7.4). |
## Webseiten erstellen | ## Webseiten erstellen | ||
- | Hat man keine weitere Domain, so kann man Webseiten | + | Hat man keine weitere Domain, so kann man Webseiten in seinem Home unter `websites/ |
+ | Alles in diesem Ordner ist unter `http:// | ||
+ | Wie genau es mit unterschiedlichen Sitenamen oder Domains läuft, ist unter [[DomainSitename|Domains und Sitenamen]] beschrieben. | ||
- | Hat man weitere Domains, | + | Hat man weitere Domains, |
+ | Subdomains lassen sich auch separat behandeln und in beliebige Verzeichnisse als Documentroot zeigen. | ||
+ | Für solche oder ähnliche Sonderwünsche bitte an den [[kontakt|Support]] wenden. | ||
- | Für solche oder ähnliche Sonderwünsche bitte einfach den [[kontakt|Support]] kontaktieren. | + | ## Weiterleitungen |
- | ## CGIs | + | Hat man eigene Domains, dann will man evtl. unter allen die gleiche Webseite erreichbar haben, z.B. soll example.in-berlin.de auf example.org weiterleiten. Dafür gibt es prinzipiell zwei Möglichkeiten: |
- | Auf dem Webserver laufen alle üblichen CGIs (Perl, Python, SSI, PHP5, usw.). Falls einem ein bestimmtes Modul oder ein CGI fehlt, sollte man entweder darüber nachdenken, den [[#Spezielle_Anwendungen_Applikationsserver|Applikationsserver]] zu benutzen, oder beim [[kontakt|Support]] nachzufragen, | + | ### .htaccess |
- | Da die Daten des Webservers auch auf dem Shellserver verfügbar sind, kann man dort schon Dinge testen (PHP, Perl usw. sind installiert). Allerdings kann es je nach Migrationsstand | + | Eine automatische Umleitung von http auf https bei Aufruf einer Domain |
- | ## SSL/https | + | RewriteEngine On |
+ | RewriteCond %{HTTPS} !=on | ||
+ | RewriteRule ^/?(.*) https:// | ||
- | Wer seine Webseite mit SSL bzw. mit https absichern will, braucht als erstes ein [[wd> | + | Dann wird man beim Aufruf der Domain direkt auf den https-Teil der Domain |
- | Hat man das Zertifikat, dann legt man die am besten auf dem Shellserver ab und sagt dem [[kontakt|Support]], | + | ### Symlinks |
- | Will man nur seine Site `sitename.in-berlin.de` verschlüsseln, und keine eigene Domain, dann reicht | + | Die zweite Möglichkeit, eine Weiterleitung einzurichten, |
+ | Wenn man also von example.in-berlin.de | ||
- | Für eigene Domains empfehlen wir drei Möglichkeiten, | + | cd ~/ |
+ | rmdir public_html | ||
+ | ln -s example.org public_html | ||
- | ### letsencrypt | ||
- | Viele haben schon von [letsencrypt](https:// | + | ## CGIs |
- | ### StartSSL | + | Auf dem Webserver laufen alle üblichen CGIs (Perl, Python, SSI, PHP5, usw.). Falls einem ein bestimmtes Modul oder ein CGI fehlt, sollte man entweder darüber nachdenken, den [[#Spezielle_Anwendungen_Applikationsserver|Applikationsserver]] zu benutzen, oder beim [[kontakt|Support]] nachzufragen, |
- | [StartSSL](http:// | + | Da die Daten des Webservers auch auf dem Shellserver verfügbar sind, kann man dort schon Dinge testen (PHP, Perl usw. sind installiert). Allerdings |
- | + | ||
- | StartSSL verwenden wir auch für unsere sichtbaren verschlüsselten Dienste wie z.B. das Service-Interface oder den Mailserver. | + | |
- | + | ||
- | Nachteil an StartSSL ist, dass es eine israelische CA ist, und damit auch israelischen Datenschutzbestimmungen und Gesetzen unterliegt. | + | |
- | + | ||
- | ### CACert | + | |
- | + | ||
- | [CACert](http:// | + | |
- | + | ||
- | Die einfachste Version ist es, zu einer Veranstaltung | + | |
- | + | ||
- | Nachteil an CACert ist, dass es in gängigen Browsern | + | |
- | + | ||
- | ### Selbstsigniert | + | |
- | + | ||
- | Will man die verschlüsselte Webseite nur für sich selber benutzen, dann kann auch ein selbstsigniertes Zertifikat reichen. Dann braucht man dieses Zertifikat nur einmal zu akzeptieren bzw. nur einmal den Fingerprint zu checken, und kann danach immer auf diese Webseite zugreifen. | + | |
- | Besucher müssen natürlich bei jedem Besuch immer wieder eine Warnung wegklicken, um diese Webseite zu sehen. | + | |
- | + | ||
- | Wie man ein Zertifikat selber erstellt, findet man im Internet zahlreiche Anleitungen. Am einfachsten ist es wohl, auf unserem Shellserver die Befehle von `openssl` zu benutzen (konkret: `genrsa(1)`, | + | |
- | **Beispiel** (auf dem Shellserver einloggen, dann das hier tun): | + | ## TLS/ |
- | gnrp@Endurance: | + | IN-Berlin unterstützt [Let's Encrypt](https://letsencrypt.org/). Wir erstellen standardmäßig für sämtliche Domains auf unseren Servern SSL-Zertifikate von letsencrypt. |
- | Generating RSA private key, 4096 bit long modulus | + | Zum Ausprobieren: |
- | ...........................................................................................................................................++ | + | |
- | ......................................................................................................................................................................................................................................................................++ | + | |
- | e is 65537 (0x10001) | + | |
- | + | ||
- | gnrp@Endurance:~$ openssl req -new -key domain.tld.key -x509 -days 730 -subj "/C=DE/CN=www.example.org/" | + | |
- | Als erstes erstellt man sich einen Schlüssel mit 4096 Bit, der in der Datei `domain.tld.key` abgespeichert wird. Danach erstellt man sich ein selbstsigniertes Zertifikat, das zwei Jahre (730 Tage) gültig ist, ausgestellt für die Domain `www.example.org`. | + | ### https-only |
- | ### SSL-only | + | Wenn man nur https erlauben und keine unverschlüsselten Verbindungen mehr zulassen möchte, get das mit einer [[wd> |
+ | Mit einer Internetsuche findet man zahlreiche Beispiele, was man damit konfigurieren kann (z.B. auch Passwortschutz für Verzeichnisse). In der offiziellen Dokumentation für [mod_rewrite](https:// | ||
- | Wir richten standardmäßig eine Webseite mit https und mit normalem http ein. Will man nur https erlauben und keine verschlüsselten Verbindungen mehr, so kann man das mit einer [[wd> | + | Folgende |
- | Ein Beispiel, wie eine .htaccess-Datei aussieht, die im Root einer Webseite | + | |
RewriteEngine On | RewriteEngine On | ||
- | RewriteRule ^$ https://www.example.org/$1 [R] | + | |
+ | | ||
- | Diese Regel würde alle Anfragen von http:// | + | Diese Regel würde alle Anfragen von `http:// |
## Datenbanken (MySQL, PostgreSQL) | ## Datenbanken (MySQL, PostgreSQL) | ||
Wir haben einen PostgreSQL- und einen MySQL-Server, | Wir haben einen PostgreSQL- und einen MySQL-Server, | ||
- | Wer eine Datenbank braucht, | + | Wer eine Datenbank braucht, |
* mysql.in-berlin.de | * mysql.in-berlin.de |
webseiten.txt · Zuletzt geändert: 2021/08/24 19:45 von julian