Hallo zusammen,

folgendes Szenario:

Hinter einer Firewall (iptables), die per dynamischer IP-Adresse im Internet
hängt, befindet sich das Intranet mit einem Apache2-Webserver. Hierbei wird
jedlicher 80 und 443 Traffic von der Firewall an den Webserver weiter
geleitet.

Der Webserver soll verschiedene Homepages zur Verfügung stellen.

Ein Zugriff aus dem Internet ist über verschiedene DynDns-Links auf die
Homepages möglich.

Beispiel:
eins.dyndns.net -> firewall ->webserver (virtual hosts)-> /srv/www/eins
zwei.dyndns.net -> firewall ->webserver (virtual hosts)-> /srv/www/zwei

--schnipp ---
NameVirtualHost *:443

<virtualhost  _default_:443>
    SSLEngine on
    SSLCertificateFile /etc/apache2/ssl.cert/mail01Cert.pem
    SSLCertificateKeyFile /etc/apache2/ssl.cert/mail01DecodedCert.pem
    SSLCACertificateFile /etc/apache2/ssl.cert/cacert.pem
    [...]
</virtualhost>

<virtualhost *:443>
    servername zwei.dyndns.net
    documentroot /srv/www/eins
</virtualhost>
<virtualhost *:443>
    servername zwei.dyndns.net
    documentroot /srv/www/zwei
</virtualhost>

--/schnipp ---


Das Problem ist, Ihr könnt es Euch sicherlich denken, dass das Zertifikat
unter default für alle virtual hosts gilt. Laut dem Internet ist es nicht
möglich, den virtual hosts jeweils ein eigenes Zertifikat zuzuordnen. Der
Benutzer aus dem Internet bekommt also immer die Meldung, dass das
Zertifikat für die Domain nicht gültig ist.

Lösung laut Internet: jedes virtual host bekommt eine eigene IP-Adresse.

Dazu muss die Netzwerkkarte mehrere IP-Aliases bekommen. Dies geht so:
ifconfig eth0:1 192.168.1.1 netmask 255.255.255.0
ifconfig eth0:2 192.168.1.2 netmask 255.255.255.0

Und jetzt fangen meine Probleme an. Ich schätze, dass die virtuellen Hosts
etwa so angelegt werden müssen:

--schnipp ---
NameVirtualHost *:443

<virtualhost  _default_:443>
    SSLEngine on
    SSLCACertificateFile /etc/apache2/ssl.cert/cacert.pem
    [...]
</virtualhost>

<virtualhost 192.168.1.1:443>
    servername zwei.dyndns.net
    documentroot /srv/www/eins
    SSLCertificateFile /etc/apache2/ssl.cert/eins_Cert.pem
    SSLCertificateKeyFile /etc/apache2/ssl.cert/eins_DecodedCert.pem
</virtualhost>
<virtualhost 192.168.1.2:443>
    servername zwei.dyndns.net
    documentroot /srv/www/zwei
    SSLCertificateFile /etc/apache2/ssl.cert/zwei_Cert.pem
    SSLCertificateKeyFile /etc/apache2/ssl.cert/zwei_DecodedCert.pem
</virtualhost>

--/schnipp ---

Wie aber sage ich dem System:
"Wenn eine Anfrage zu eins.dyndns.net herein kommt, dann wähle den virtual
host 192.168.1.1:443"
"Wenn eine Anfrage zur zwei.dyndns.net herein kommt, dann wähle den virtual
host 192.168.1.2:443"

Was wohl nicht funktioniert, ist ein redirect-Befehl innerhalb eines virtual
hosts, da dieser auf eine Internet-IP-Adresse bzw. URL verweisen muss. Ich
biete aber nur interne IP-Adressen.

Über Antworten , HowTos oder passende Links würde ich mich sehr freuen.

Viele Gruesse
Jens


P.S.: Dies ist mein erster Mailinglisten-Beitrag. Schicke ich mögliche
Antworten auf Eure Beiträge auch an [EMAIL PROTECTED]


--------------------------------------------------------------------------
                Apache HTTP Server Mailing List "users-de"
      unsubscribe-Anfragen an [EMAIL PROTECTED]
           sonstige Anfragen an [EMAIL PROTECTED]
--------------------------------------------------------------------------

Antwort per Email an