PDA

Archiv verlassen und diese Seite im Standarddesign anzeigen : Apache SSL



Rebell
11.07.02, 12:23
Ich hab folgendes Problem (SuSE 8.0 Pfad- und Dateisystem).

Problembeschreibung:
Apache installiert, will aber keinesfalls SSL-fähig werden, d.h. beim Reload wird das zu ladende SSL-Modul nicht angezeigt. Außerdem versteht er meine SSL-Einträge in den Virtual Hosts nicht (SSLDisable etc.)

Systemstatus:
Das mod_ssl Paket ist installiert, die Keys hab ich schon generiert. Sie liegen unter /etc/httpd/ssl.*
Ich habe auch die nötigen Einträge berichtigt:
SSLCertificateFile /etc/httpd/ssl.crt/server.crt
SSLCertificateKeyFile /etc/httpd/ssl.key/server.key
SSLEngine on
LoadModule libssl.so und AddModule mod_ssl.c ist ebenfalls anwesend.

So das scheinbar wichtigste ist noch der Eintrag unter /etc/sysconfig/apache
HTTPD_SEC_MOD_SSL=yes

ist also auch aktiviert. Und ich bekomme folgende Fehlermeldung:


Webserver:~ # rcapache reload
PERL PHP4 Python Reload httpd

Warning: DocumentRoot [/home/xxx.de/www.xxx.de/www] does not exist
Syntax error on line 1605 of /etc/httpd/httpd.conf:
Invalid command 'SSLDisable', perhaps mis-spelled or defined by a module not included in the server configuration unused

Basti_litho
11.07.02, 13:28
Wo steht den in deiner httpd.conf "SSLDisable" ?
Lösch die zeile mal.

Warum findet er das DocumentRoot nicht? Ist es nicht vorhanden?

Gruß

Rebell
11.07.02, 13:38
Was bringts diese Zeile zu löschen? Wenn ich ein Virtual Host Eintrag auf Port 443 habe muss ich zusätzlich SSLEnable einschalten.

Der Apache versteht das ganze Konfigurationsscript nicht, alles was unter dem VirtualHost-Eintrag liegt bringt er als Fehlermeldung...

Document Root existiert nicht (aber das ist auch in ORdnung so)


<VirtualHost sub.xxx.de:443>
DocumentRoot /data/vertrieb/www
ServerName sub.xxx.de
ScriptAlias /cgi-bin/ /date/vertrieb/www/cgi-bin/
SSLEnable
SSLCertificateFile /etc/httpd/ssl.crt/server.crt
SSLSessionCache /var/run/ssl_cache(512000)
# SSLCacheServerRunDir /tmp
SSLSessionCacheTimeout 15
SSLVerifyClient 0
SSLVerifyDepth 10
</VirtualHost>


So Fehler bringt er bei allem was mit SSL zu tun hat...

Rebell
11.07.02, 14:03
OK ich hab die Antwort!
Apache zeigt SSL nicht als zu startendes Modul an, da ein Paket fehlt welches nirgend dokumentiert ist. Ich bin durch Zufall darauf gestoßen, anhand eines Muster-Servers.

Paket sslwrap welches sich auf CD 4 befindet (SuSE 8.0) muss installiert sein.

Harry
11.07.02, 14:39
Hallo,

für SSL-Unterstützung im Apache benötigst Du das Paket sslwrap definitiv nicht.
Nach der Installation von mod_ssl und der Änderung HTTPD_SEC_MOD_SSL=yes in der /etc/sysconfig/apache mußt Du lediglich noch "SuSEconfig --module apache" laufen lassen und dann den Apache neu starten "rcapache restart".

Das Paket sslwrap benötigst Du lediglich, wenn Du einen nicht-SSL-fähigen TCP-basierenden Serverdienst mit SSL-Unterstützung ausrüsten möchtest.
Beispielsweise kannst Du dann einen Telnet-Server mit SSL-Unterstüzung ausrüsten - nur brauchst Du dann auch einen SSL-fähigen Telnet-Client ;)

Sinn macht der sslwrapper aber auf jeden Fall in Verbindung mit einem SMTP-, POP3- oder IMAP4-Server (soweit diese nicht bereits SSL unterstützen).

Harry

Rebell
12.07.02, 15:13
Dankeschön, hat funktioniert.
Man darf nur nicht vergessen die Keys bereits zu generieren.

Aber was konfiguriert SuSE extra bei Apache?

Harry
12.07.02, 16:22
Original geschrieben von Rebell
Aber was konfiguriert SuSE extra bei Apache?

Eigentlich nur ein paar modulare Config-Dateien für den Apache; bei SuSE sind unterschiedliche Funktionalitäten des Apache fein säuberlich in separaten Konfigs untergebracht, die dann wiederum über Include-Anweisungen innerhalb der httpd.conf eingebunden werden.
Die Idee erscheint mir recht sinnvoll, denn die httpd.conf wäre ansonsten noch unübersichtlicher. ;)

Im Detail wurden bei Dir wohl die beiden folgenden Konfigs erweitert:
- /etc/httpd/suse_loadmodule.conf
- /etc/httpd/suse_addmodule.conf

Schau' da einfach mal rein - dort siehst Du dann das laden und einbinden des SSL-Moduls :)

Harry