SUSE 9.3 Webserver & SSL

Also in /etc/apache2/sysconfig.d/loadmodule.conf ist der SSL drin:
Code:
LoadModule ssl_module                     /usr/lib/apache2-prefork/mod_ssl.so

ABer den Rest kapiere ich ehrlich gesagt nicht was du damit meinst !

Fakt ist, ssl läuft !
Code:
fire:~ # lsof -i -P | grep 443
httpd2    9785   root    4u  IPv6  58074       TCP *:443 (LISTEN)
httpd2    9943 wwwrun    4u  IPv6  58074       TCP *:443 (LISTEN)
httpd2    9944 wwwrun    4u  IPv6  58074       TCP *:443 (LISTEN)
httpd2    9945 wwwrun    4u  IPv6  58074       TCP *:443 (LISTEN)
httpd2    9946 wwwrun    4u  IPv6  58074       TCP *:443 (LISTEN)
httpd2    9947 wwwrun    4u  IPv6  58074       TCP *:443 (LISTEN)

Mir schinets als komme ich mit dem Browser irgendwie net ran !
 
Zuletzt bearbeitet:
Was ist lynx ?

Wenn ich en Befehl ausführe kommt folgendes:
Code:
fire:~ # lynx https://127.0.0.1

Looking up 127.0.0.1
Making HTTPS connection to 127.0.0.1
Retrying connection without TLS.
Looking up 127.0.0.1
Making HTTPS connection to 127.0.0.1
Alert!: Unable to make secure connection to remote host.

lynx: Can't access startfile https://127.0.0.1/
 
lynx ist ein auf text-basierter browser.
mehr info: http://de.wikipedia.org/wiki/Lynx_(Browser)

irgenwie verstehe ich das ganz nicht. sind im DocumentRoot vom webserver irgenwelche dokumente (index.html) die der server anzeigen könnte?
ohne ssl funktioniert der zugriff aber auf localhost?
 
Über http einwandfrei !
Ja, da ist ne index.php drin, also müsste er das anzeigen, hab auch schon ne index.shtml reingemacht, geht auch net per https !
 
bin verwirrt!

fassen wir mal zusammen:
1. der start von apache ohne ssl liefert keine fehlermeldungen (konsole und log)
2. der apache ohne ssl liefert alle dokumente aus wie erwartet
3. bei aktivierten ssl liefert der apache keine fehlermeldungen (konsole und log)
4. telnet und netstat bestätigen das auf port 443 httpd läuft
5. kein browser ist in der lage eine https seite von diesem server aufzurufen

hab ich was übersehen?
 
PhoenixDH schrieb:
Also in /etc/apache2/sysconfig.d/loadmodule.conf ist der SSL drin:
Code:
LoadModule ssl_module                     /usr/lib/apache2-prefork/mod_ssl.so

Und die AddModule-Direktive?
Oder steht die wieder in einem anderen Config-File? Existiert /usr/lib/apache2-prefork/mod_ssl.so?

Fakt ist, ssl läuft !
Nein. Wirklich nicht. Der apache lauscht nur auf Port 443, liefert aber nichts verschluesseltes darueber aus. Dein Lynx-Log zeigt das auch (retrying without TLS).

-khs
 
khs schrieb:
Nein. Wirklich nicht. Der apache lauscht nur auf Port 443, liefert aber nichts verschluesseltes darueber aus. Dein Lynx-Log zeigt das auch (retrying without TLS).

-khs

du könntest natürlich recht haben ... das apache auf 443 hört kann (und wird wohl auch) an der Listen 443option liegen.
gab es da nicht ne möglichekeit ein liste dyn. geladener module anzuzeigen?

die ausgabe von:
openssl s_client -connect localhost:443 -state -debug
und dann
GET / HTTP/1.0
sollte 100%ige gewissheit bringen ob dort jemand ssl spricht.
Code:
LoadModule ssl_module modules/mod_ssl.so
ist ja eingefügt oder?

und httpd -DSSL liefert keine fehler?

was steht in deiner /etc/sysconfig/apache2?
müsste doch sowas APACHE_SERVER_FLAGS="-D SSL" stehen oder?
und APACHE_MODULES="...." sollte zumindest auch "ssl" enthalten oder?

hab schon mal gesehen das yast2 änderungen die nicht über eben yast gemacht worden sind wieder rückgängig macht :]
 
Also /usr/lib/apache2/mod_ssl.so existiert !
Die Sache mit AddModule hab ich net gemacht, denn ich finde keine Datei wo irgendwas mit AddModule schon drin steht ! Hab auch bei Google geschaut !

Außer das ich mal das in die httpd.conf eingefügt habe:
Code:
<IfDefine SSL>
    AddModule mod_ssl.c
</IfDefine>

das hab ich ebenso eingefügt:
Code:
APACHE_SERVER_FLAGS="-D SSL"
 APACHE_MODULES=".... SSL"
LoadModule ssl_module                     /usr/lib/apache2-prefork/mod_ssl.so

Allerdings bekomme ich hier ne Fehlermeldung mit dem Befehl:
Code:
openssl s_client -connect localhost:443 -state -debug
CONNECTED(00000003)
SSL_connect:before/connect initialization
write to 080AC5E0 [080ACE40] (142 bytes => 142 (0x8E))
0000 - 80 8c 01 03 01 00 63 00-00 00 20 00 00 39 00 00   ......c... ..9..
0010 - 38 00 00 35 00 00 16 00-00 13 00 00 0a 07 00 c0   8..5............
0020 - 00 00 33 00 00 32 00 00-2f 03 00 80 00 00 66 00   ..3..2../.....f.
0030 - 00 05 00 00 04 01 00 80-08 00 80 00 00 63 00 00   .............c..
0040 - 62 00 00 61 00 00 15 00-00 12 00 00 09 06 00 40   b..a...........@
0050 - 00 00 65 00 00 64 00 00-60 00 00 14 00 00 11 00   ..e..d..`.......
0060 - 00 08 00 00 06 04 00 80-00 00 03 02 00 80 6e 95   ..............n.
0070 - 10 de e4 46 31 17 5c 68-13 68 7c d5 e7 1e 36 d8   ...F1.\h.h|...6.
0080 - e2 a7 b6 21 05 c1 35 b4-df d4 9b f5 ef d1         ...!..5.......
SSL_connect:SSLv2/v3 write client hello A
read from 080AC5E0 [080B23A0] (7 bytes => 7 (0x7))
0000 - 3c 3f 78 6d 6c 20 76                              <?xml v
SSL_connect:error in SSLv2/v3 read server hello A
12615:error:140770FC:SSL routines:SSL23_GET_SERVER_HELLO:unknown protocol:s23_clnt.c:478:

Mit dem AddModule hat er seine Probleme, da bekomme ich immer:
Code:
Invalid command 'AddModule', perhaps mis-spelled or defined by a module not included in the server configuration

Aber irgendwie muss er Probleme mit dem mod_ssl.c haben !!!
Das ist meinen listen.conf
Code:
# Listen: Allows you to bind Apache to specific IP addresses and/or
# ports. See also the <VirtualHost> directive.
#
# http://httpd.apache.org/docs-2.0/mod/mpm_common.html#listen
#
# Change this to Listen on specific IP addresses as shown below to 
# prevent Apache from glomming onto all bound IP addresses (0.0.0.0)
#
# When we also provide SSL we have to listen to the 
# standard HTTP port (see above) and to the HTTPS port
#
# Note: Configurations that use IPv6 but not IPv4-mapped addresses need two
#       Listen directives: "Listen [::]:443" and "Listen 0.0.0.0:443"
#
#Listen 12.34.56.78:80
#Listen 80
#Listen 443



<IfDefine SSL>
    <IfDefine !NOSSL>
	<IfModule mod_ssl.c>

	    Listen 443

	</IfModule>
    </IfDefine>
</IfDefine>


# Use name-based virtual hosting
# 
# - on a specified address / port:
#
#NameVirtualHost 12.34.56.78:80
#
# - name-based virtual hosting:
#
#NameVirtualHost *:80
#
# - on all addresses and ports. This is your best bet when you are on
#   dynamically assigned IP addresses:
#
#NameVirtualHost *

Listen 80
Listen 443

Ich hab am Schluss per Hand den Port 443 eingefügt, obwohl er oben schon in der IF Bedingung drin ist. Lösche ich aber die letzte Zeile, so hört er nimmer auf Port 443, also denke ich das das Problem mit der mod_ssl.c zusammenhängt !

Was denke ich mal damit zusammenhängt, das ich das hier nicht einfügen kann weil der Fehler kommt !
Code:
<IfDefine SSL>
    AddModule mod_ssl.c
</IfDefine>
 
Zuletzt bearbeitet:
welche modul ladest du nun?

du schreibst das /usr/lib/apache2/mod_ssl.so existiert
aber laden tust du /usr/lib/apache2-prefork/mod_ssl.so <--- gibts das auch?
was für einen apache hast laufen ... worker oder prefork?

also bei einem meiner server (allerdings aktuell fedora core 3) sind folgende optionen für apache gesetzt:

Code:
LoadModule ssl_module modules/mod_ssl.so
Listen 443

SSLPassPhraseDialog  builtin
SSLSessionCache         shmcb:/var/cache/mod_ssl/scache(512000)
SSLSessionCacheTimeout  300
SSLMutex default
SSLRandomSeed startup file:/dev/urandom  256
SSLRandomSeed connect builtin
SSLCryptoDevice builtin

[I]<VirtualHost _default_:443>
ErrorLog logs/ssl_error_log
TransferLog logs/ssl_access_log
LogLevel warn
SSLEngine on

SSLCipherSuite ALL:!ADH:!EXPORT56:RC4+RSA:+HIGH:+MEDIUM:+LOW:+SSLv2:+EXP
SSLCertificateFile /etc/httpd/conf/ssl.crt/server_crt.pem

<Files ~ "\.(cgi|shtml|phtml|php3?)$">
    SSLOptions +StdEnvVars
</Files>
<Directory "/var/www/cgi-bin">
    SSLOptions +StdEnvVars
</Directory>
</VirtualHost>[/I]

ein: openssl s_client -connect localhost:443 -state -debug sollte das ungefähr liefern:
Code:
CONNECTED(00000003)
SSL_connect:before/connect initialization
write to 083FBF80 [083FCF70] (142 bytes => 142 (0x8E))
0000 - 80 8c 01 03 01 00 63 00-00 00 20 00 00 39 00 00   ......c... ..9..
0010 - 38 00 00 35 00 00 16 00-00 13 00 00 0a 07 00 c0   8..5............
0020 - 00 00 33 00 00 32 00 00-2f 03 00 80 00 00 66 00   ..3..2../.....f.
0030 - 00 05 00 00 04 01 00 80-08 00 80 00 00 63 00 00   .............c..
0040 - 62 00 00 61 00 00 15 00-00 12 00 00 09 06 00 40   b..a...........@
0050 - 00 00 65 00 00 64 00 00-60 00 00 14 00 00 11 00   ..e..d..`.......
0060 - 00 08 00 00 06 04 00 80-00 00 03 02 00 80 1f 1c   ................
0070 - 8d 70 72 80 1b 48 51 7a-da 24 97 b8 8e 67 1a c3   .pr..HQz.$...g..
0080 - 7f 17 76 ec 6a b6 ed 6a-27 30 59 3e 1e 61         ..v.j..j'0Y>.a
SSL_connect:SSLv2/v3 write client hello A
read from 083FBF80 [084024D0] (7 bytes => 7 (0x7))
0000 - 16 03 01 00 4a 02                                 ....J.
0007 - <SPACES/NULS>
read from 083FBF80 [084024D7] (72 bytes => 72 (0x48))
0000 - 00 46 03 01 43 16 a9 88-3c 12 0b 7d 27 2b e9 e6   .F..C...<..}'+..
0010 - 65 62 70 f6 9f 67 9d e7-1d 30 1e ba ac 31 32 5b   ebp..g...0...12[
0020 - 63 0b 9c ff 20 7e 95 34-01 18 4b 90 2d 0c 1d a3   c... ~.4..K.-...
0030 - 5c 82 c2 d4 5a ce 1c fa-cc d5 b5 0f 8f 1f 1a 84   \...Z...........
0040 - 19 55 c7 a9 cc 00 39                              .U....9
0048 - <SPACES/NULS>
SSL_connect:SSLv3 read server hello A
....
SSL handshake has read 1452 bytes and written 340 bytes
---
New, TLSv1/SSLv3, Cipher is DHE-RSA-AES256-SHA
Server public key is 1024 bit
SSL-Session:
    Protocol  : TLSv1
    Cipher    : DHE-RSA-AES256-SHA
    Session-ID: 7E953401184B902D0C1DA35C82C2D45ACE1CFACCD5B50F8F1F1A841955C7A9CC
    Session-ID-ctx:
    Master-Key: E0B106CBEA294EF0E196CF2672B069C2D9F9AA87A768E3FFDFF5741C9DF2DEA1907BA79EF5CB2A551B6E8FCC3E781671
    Key-Arg   : None
    Krb5 Principal: None
    Start Time: 1125558664
    Timeout   : 300 (sec)
    Verify return code: 18 (self signed certificate)

hoffe das bringt dich irgendwie weiter :oldman

viel glück....
 
Also es gibt beide mod_ssl Dateien, in beiden Verzeichnissen ! Aber in dem prefork Ordner liegen nur Verknüpfungen !

Wie sehe ich welcher der beiden läuft ?
 
Zuletzt bearbeitet:
PhoenixDH schrieb:
Also es gibt beide mod_ssl Dateien, in beiden Verzeichnissen ! Aber in dem prefork Ordner liegen nur Verknüpfungen !

Wie sehe ich welcher der beiden läuft ?

Ist eigentlich egal, wenn die Links gueltig sind.
Leider faellt mir an der Stelle nichts mehr ein, da ich, wie gesagt, keinen apache2 habe, allerdings habe ich nen Link gefunden, der dir vielleicht helfen koennte.
Ueberlies den openssl- und Windows-Kram, weiter unten wird die Konfiguration von ssl zwar kurz, aber schrittweise beschrieben. Wenn sich mit dieser Minimalkonfiguration eine SSL-Verbindung herstellen laesst, ist das schonmal die halbe Miete... ;)

-khs
 

Ähnliche Themen

Erstellen von Zertifikate mit OpenSSL gelingt mir nicht

Problem mit Apache2 + MySQL Server

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

openssl Zertifikat automatisch erstellen

OpenVPN Zertifikate

Zurück
Oben