Ausgangssituation: Mittels VirtualHosts mehrere Subdomains versch. Webpräsenzen zuweißen. Via .htaccess den Zugriff auf einen Unterordner Namens „secure“ beschränken und für eine Subdomain eine sichere Verbindung via SSL einrichten.
Konfigurationsdateien:
Debian: /etc/apache2/sites-available/.... für VirtualHosts etc.
RedHat: /etc/httpd/conf/httpd.conf
→ Bei RedHat basierenden Systemen liegt leider alles in einer einzelnen Datei, was die Übersicht ziehmlich beschränkt. Das HowTo wird sich mit RedHat basierenden Systemen befassen, eine spätere Anpassung an Debian ist möglich.
In meinem Beispiel gibt es die 4 Subdomains:
→ verkauf.take.local # Seite der Verkaufsabteilung
→ support.take.local # Seite des Supportes
→ www.take.local # Hauptseite
→ ssl.take.local # SSL Seite
(Weiterführend von dem Samba HowTo)
Als erstes sollten wir also in unserem Windows DNS Server 4 neue A-Records für die 4 Subdomains anlegen. Alle 4 auf die IP Adresse „192.168.1.231“.
Für diese Seiten legen wir nun 2 neue Ordner an:
„mkdir /var/www/support && mkdir /var/www/verkauf“
NameVirtualHost 192.168.1.231:80
<VirtualHost 192.168.1.231:80>
ServerName verkauf.take.local
DocumentRoot /var/www/verkauf
<Directory /var/www/verkauf>
Options None
AllowOverride All
Order allow,deny
Allow from all
</Directory>
</VirtualHost>
<VirtualHost 192.168.1.231:80>
ServerName support.take.local
DocumentRoot /var/www/support
<Directory /var/www/support>
Options None
AllowOverride All
Order allow,deny
Allow from all
</Directory>
</VirtualHost>
<VirtualHost 192.168.1.231:80>
ServerName www.take.local
DocumentRoot /var/www/html
<Directory /var/www/html>
Options None
AllowOverride All
Order allow,deny
Allow from all
</Directory>
</VirtualHost>
Passwortgeschützten Bereich für /var/www/html/secure erstellen
→ AllowOverride All in httpd.conf!
Passwort Datei erstellen
/usr/bin/htpasswd -c /var/www/apache-passwords take # Erstellt die o.g. Passwort Datei
/usr/bin/htpasswd /var/www/apache-passwords eric # -c weglassen, da schon vorhanden
SSL-Verbindung
Die günstigste Variante ist ein selbsterstelltes Zertifikat und genau dieses werden wir jetzt erstellen.
Nun müssen wir -nurnoch- die Datei /etc/httpd/conf.d/ssl.conf Anpassen:
Im Grunde kann das meiste bleiben, ich schreibe hier nur die Veränderungen auf: /etc/httpd/conf.d/ssl.conf
CODE
1.
2.
3.
4.
5.
6.
ca. Zeile 84: DocumentRoot „/var/www/ssl“
ca. Zeile 85: ServerName ssl.take.local
ca. Zeile 112: SSLCertificateFile /etc/httpd/conf.d/take.crt
ca. Zeile 120: SSLCertificateKeyFile /etc/httpd/conf.d/take.key
Dannach muss der Apache2 neugestartet werden (reload geht in diesem Fall nicht!). Die Passwortabfrage sollte nicht weiter abschrecken, Passwort eingeben und weiter geht’s..
Nun können wir via „https://ssl.take.local“ auf unsere SSL Verbindung zugreifen.
MySQL mit phpMyAdmin
MySQL User „root“ ein Passwort setzen: mysqladmin -u root password \'takey\'
→ password \'takey\' ist das neue Passwort, wird also im Klartext übergeben.
Neuste phpMyAdmin Version von www.phpmyadmin.net herrunterladen und entpacken (ggf. in phpmyadmin/phpMyAdmin umbenennen).
Nun öffnen wir die „config.sample.inc.php“ und editieren diese folgendermaßen: