apache2-mod-ssl?

DeeDee0815

DeeDee0815

Doppel-As
Hallo,

wie gestern zu lesen war, bin ich gerade dabei meinen neuen Webserver einzurichten. Hat auch alles wunderbar geklappt. Jetzt bin ich allerdings an SSL hängen geblieben. Ich finde kein Paket, was da heißt: "apache2-mod-ssl". Nur "apache-mod-ssl" ist verfügbar. Wie kann ich nun also dafür sorgen, dass ich nicht apache(1) installieren muss, was ja automatisch mit dem "apache-mod-ssl"-Paket passiert, um SSL nutzen zu können. Kann man überhaupt das Modul apache(1)-mod-ssl für Apache2 nutzen? Wie muss ich vorgehen?

MfG
DeeDee0815

P.S.: Mit "vorgehen" meine ich jetzt nur die Modul-Installation: Den Rest bezüglich SSL dürfte ich selbst hin bekommen. :D
 
Ich weiß zwar nicht, welche Distribution du benutzt, aber bei Debian zum Beispiel ist das SSL-Modul für Apache2 im Paket "apache2.2-common" enthalten.
 
Uups, ich nutze in der Tat Debain. Dann war es ja sogar schon installiert: Per a2enmod ssl wurde es nun auch erflgreich aktiviert.

Dann vielen lieben Dank für die schnelle Hilfe! :-)

MfG
DeeDee0815

EDIT: Nun fehlt mir aber eine möglichkeit ein SSL-Zertifikat zu erstellen: Der Befehl apache2-ssl-certificate funktioniert nicht, soll heißen ist nicht vorhanden. Ich beziehe mich im Übrigen auf dieses Tutorial, welches sich allerdings auf Woody und nicht auf meine Version (Etch) bezieht: http://debianhowto.de/doku.php/de:howtos:sarge:lamp_suphp#apache2_mit_ssl
 
Zuletzt bearbeitet:
Hi Marcus,

danke für Deine Hilfe: Warum bitteschön kommt das Debianteam auf die Hirnrissige Idee ein sinnvolles Script zu verbannen? Aber wie dem auch sei: So müsste ich das hinbekommen: Morgen schreibe ich nochmal, ob es soweit geklappt hat.

Vielen Dank,
DeeDee0815
.
.
.
EDIT (autom. Beitragszusammenführung) :
.

Hallo nochmal,

ich konnte es dann doch nicht erwarten und habe gleich mal weiter eingerichtet: Mit SSL hat jetzt auch alles geklappt, bis auf eines:

Ich möchte, wenn eine ungültige Subdomain aufgerufen wird, auf die Hauptseite verweisen.

https://falsche-subdomain.meine-domain.de -> http://www.meine-domain.de/
https://meine-domain.de -> http://www.meine-domain.de/
https://richtige-subdomain.meine-domain.de -> Okay

Das habe ich folgendermaßen realisiert:

Code:
NameVirtualHost 1.2.3.4:443
<VirtualHost 1.2.3.4:443>
	ServerName meine-domain.de:443
	ServerAdmin rk@meine-domain.de
	SSLEngine on
	SSLCertificateFile /etc/apache2/ssl/default.crt
	SSLCertificateKeyFile /etc/apache2/ssl/default.key
	SSLProtocol all
	SSLCipherSuite HIGH:MEDIUM
	DocumentRoot /srv/httpd/
	<Directory /srv/httpd/>
		Options Indexes FollowSymLinks MultiViews
		AllowOverride All
		Order allow,deny
		allow from all
		RedirectMatch ^/$ http://www.meine-domain.de/
	</Directory>
	ScriptAlias /cgi-bin/ /usr/lib/cgi-bin/
	<Directory "/usr/lib/cgi-bin">
		AllowOverride None
		Options ExecCGI -MultiViews +SymLinksIfOwnerMatch
		Order allow,deny
		Allow from all
	</Directory>
	ErrorLog /var/log/apache2/error.log
	LogLevel warn
	CustomLog /var/log/apache2/access.log combined
	ServerSignature On
</VirtualHost>
<VirtualHost 1.2.3.4:443>
	ServerName phpmyadmin.meine-domain.de:443
	ServerAdmin rk@meine-domain.de
	SSLEngine on
	SSLCertificateFile /etc/apache2/ssl/phpmyadmin.crt
	SSLCertificateKeyFile /etc/apache2/ssl/phpmyadmin.key
	SSLProtocol all
	SSLCipherSuite HIGH:MEDIUM
	DocumentRoot /usr/share/phpmyadmin/
	<Directory /usr/share/phpmyadmin/>
		Options Indexes FollowSymLinks MultiViews
		AllowOverride All
		Order allow,deny
		allow from all
	</Directory>
	ScriptAlias /cgi-bin/ /usr/lib/cgi-bin/
	<Directory "/usr/lib/cgi-bin">
		AllowOverride None
		Options ExecCGI -MultiViews +SymLinksIfOwnerMatch
		Order allow,deny
		Allow from all
	</Directory>
	ErrorLog /var/log/apache2/error.log
	LogLevel warn
	CustomLog /var/log/apache2/access.log combined
	ServerSignature On
</VirtualHost>
<VirtualHost 1.2.3.4:443>
	ServerName vexim.meine-domain.de:443
	ServerAdmin rk@meine-domain.de
	SSLEngine on
	SSLCertificateFile /etc/apache2/ssl/vexim.crt
	SSLCertificateKeyFile /etc/apache2/ssl/vexim.key
	SSLProtocol all
	SSLCipherSuite HIGH:MEDIUM
	DocumentRoot /srv/httpd/www/
	<Directory /srv/httpd/www/>
		Options Indexes FollowSymLinks MultiViews
		AllowOverride All
		Order allow,deny
		allow from all
	</Directory>
	ScriptAlias /cgi-bin/ /usr/lib/cgi-bin/
	<Directory "/usr/lib/cgi-bin">
		AllowOverride None
		Options ExecCGI -MultiViews +SymLinksIfOwnerMatch
		Order allow,deny
		Allow from all
	</Directory>
	ErrorLog /var/log/apache2/error.log
	LogLevel warn
	CustomLog /var/log/apache2/access.log combined
	ServerSignature On
</VirtualHost>

Klappt soweit auch alles: Einziges Problem: Das default.crt/default.key-Zertifikat wird nun für alle VHosts genommen: Die anderen VHosts sollen aber ihre eigenen nehmen. Was mache ich da falsch?

MfG
DeeDee0815

P.S.: Nur damit wir uns richtig verstehen: Die VHosts funktionieren. Bei phpmyadmin.meine-domain.de erscheint phpmyadmin und bei vexim.meine-domain.de erscheint vexim. Nur das "differenzieren" der Zertifikate funktioniert leider nicht.
 
Zuletzt bearbeitet:
Einziges Problem: Das default.crt/default.key-Zertifikat wird nun für alle VHosts genommen: Die anderen VHosts sollen aber ihre eigenen nehmen. Was mache ich da falsch?

Garnix. Die Certs sind nun mal IP-based. Entweder du bezahlst ein Wildcard-Domain-Zertifikat ala *.meine-domain.de oder du richtest deine vHosts mit jeweils eindeutiger IP/Port ein, wobei der Nachteil im Browser vhost:port überwiegt. Vielleicht hilft dir die Beschreibung ja irgendwie weiter..
 
Garnix. Die Certs sind nun mal IP-based. Entweder du bezahlst ein Wildcard-Domain-Zertifikat ala *.meine-domain.de oder du richtest deine vHosts mit jeweils eindeutiger IP/Port ein, wobei der Nachteil im Browser vhost:port überwiegt. Vielleicht hilft dir die Beschreibung ja irgendwie weiter..

Und wie: Die hat mir sehr geholfen. Auf diese Weise konnte ich mir ein selbst-signiertes Wildcardzertifikat erstellen, welches nun bei allen vhosts verwendet wird und gültig ist. Echt cool! Vielen Dank!

MfG
DeeDee0815
 
mod_gnutls

(...) Vielleicht hilft dir die Beschreibung ja irgendwie weiter..

Hallo,

Vielen Dank für den Link, das Wissen um die Existenz von Wildcard-Zertifikaten hat mir für die Zukunft bestimmt etwas Arbeit erspart ;)

Der Vollständigkeit halber möchte ich an dieser Stelle auf die Möglichkeit der Verwendung des experimentellen apache2-Moduls mod_gnutls (Howto-Link) hinweisen -- damit ist es möglich, Zertifikate für unterschiedliche Domänen unter ein- und derselben IP-Adresse zu verwenden.

Ad astra, Markus
 

Ähnliche Themen

Problem mit Apache2 + MySQL Server

apache2 läßt sich auf 1blu vServer nicht mehr starten

Squid nur zum maskieren der eigenen IP, nicht für Webserver auf port 80

superblock kaputt nach Update

Zurück
Oben