Webserver installieren (Debian): Unterschied zwischen den Versionen
Matt (Diskussion | Beiträge) |
Matt (Diskussion | Beiträge) Keine Bearbeitungszusammenfassung |
||
Zeile 95: | Zeile 95: | ||
== Selbst signiertes Zertifikat erzeugen == | == Selbst signiertes Zertifikat erzeugen == | ||
Zertifikat erstellen siehe [[Zertifikat erstellen (Debian)]] | |||
== DynDNS einrichten == | |||
Einrichtung von dynamischem DNS siehe [[Dynamisches DNS (Debian)]] | |||
== Apache für HTTPS einrichten == | == Apache für HTTPS einrichten == | ||
Zeile 133: | Zeile 138: | ||
Wenn die .pem-Datei den privaten Key und das Zertifikat enthält, dann kann man die folgende Zeile auskommentieren: | Wenn die .pem-Datei den privaten Key und das Zertifikat enthält, dann kann man die folgende Zeile auskommentieren: | ||
# SSLCertificateKeyFile xxx | |||
Site aktivieren und Apache neu starten: | Site aktivieren und Apache neu starten: | ||
a2ensite default-ssl | |||
service apache2 reload | service apache2 reload | ||
[[Category:Debian]] | [[Category:Debian]] | ||
[[Category:Kryptographie]] | [[Category:Kryptographie]] |
Version vom 30. Mai 2015, 01:49 Uhr
Anleitung für die Installation eines Linux-basierten Webserver mit Apache, MySQL und PHP (LAMP).
Zuletzt verwendet für Debian 8.0 mit Apache 2.4.10.
Vorbereitungen
Feste IP-Adresse vergeben
Siehe Netzwerk einrichten (Debian)
Sources List aktualisieren
nano /etc/apt/sources.list
Folgende Zeilen (DE-Sources) hinzufügen:
deb http://ftp.de.debian.org/debian stable main contrib deb http://ftp.debian.org/debian/ wheezy-updates main contrib
Danach noch ausführen: apt-get update
Apache Installation
groupadd www-data usermod -a -G www-data www-data # Benutzer www-data in Gruppe www-data anlegen apt-get install apache2
Konfigdateien bearbeiten
nano /etc/apache2/apache2.conf
Am Ende folgendes eintragen:
ServerName server.domain.com
nano /etc/apache2/sites-available/default
Folgendes einfügen:
ServerAlias server server.domain.com (Unklar, ob tatsächlich notwendig)
nano /etc/apache2/sites-available/default-ssl
Folgendes einfügen:
ServerAlias server server.domain.com (Unklar, ob tatsächlich notwendig)
Noch ausführen (unbekannt, wofür - evtl. für Owncloud?):
a2enmod rewrite a2enmod headers
Apache Web-Rootverzeichnis
/var/www/html
Beim Aufruf von https://www.example.com/ sollte der Server antworten:
It works! This is the default web page for this server. The web server software is running but no content has been added, yet.
PHP Installation
apt-get install php5 php5-gd php5-curl php5-mysql php5-intl php-xml-parser php-pear php-apc curl libcurl3
MySQL Installation
apt-get install mysql-server mysql-client php5-mysql mysql restart
phpMyAdmin
Installation
apt-get install php5-mysql phpmyadmin
phpMyAdmin mit Apache verbinden, falls nicht in den Dateien in /etc/php5/apache2/conf.d/???-mysql???.ini
bereits geschehen.
nano /etc/php5/apache2/php.ini
Neue Zeile im Bereich "Dynamic Extensions" hinzufügen:
extension=mysql.so
Zugriff auf lokales Netz beschränken
Konfigdatei öffnen:
nano /etc/phpmyadmin/apache.conf
Folgenden Abschnitt einsetzen (und bestehendes überschreiben):
<Directory /usr/share/phpmyadmin> Options FollowSymLinks DirectoryIndex index.php Order Deny,Allow Deny from all Allow from 192.168.1.0/24 <- Hier natürlich euer Netzwerk rein <IfModule mod_php5.c><
phpMyAdmin aufrufen über: http://ip-adresse-deines-servers/phpmyadmin/
Selbst signiertes Zertifikat erzeugen
Zertifikat erstellen siehe Zertifikat erstellen (Debian)
DynDNS einrichten
Einrichtung von dynamischem DNS siehe Dynamisches DNS (Debian)
Apache für HTTPS einrichten
Schritt 1: Standardkonfiguration erweitern
nano /etc/apache2/ports.conf
Folgendes muss mindestens vorhanden sein:
NameVirtualHost *:80 Listen 80 <fModule mod_ssl.c> Listen 443 </IfModule>
Anschließend ausführen:
service apache2 restart
Nun muss das SSL (Secure Socket Layer für die sichere Verbindung) aktiviert und der Webserver nochmals neu geladen werden:
a2enmod ssl service apache2 restart
Schritt 2: SSL-Site konfigurieren
nano /etc/apache2/sites-available/default-ssl
Folgende Zeilen müssen vorhanden sein.
<VirtualHost *:443> oder <VirtualHost _default_:443> SSLEngine On SSLCertificateFile /etc/apache2/ssl/cert.pem DocumentRoot /var/www </virtualhost>
Wenn die .pem-Datei den privaten Key und das Zertifikat enthält, dann kann man die folgende Zeile auskommentieren:
# SSLCertificateKeyFile xxx
Site aktivieren und Apache neu starten:
a2ensite default-ssl service apache2 reload