Subject: Invalid method in request \x80\x80\x01\x03\x01

From: Roger Rosenblum <[email-masked]>
Date: Wed, 30 Oct 2002 10:14:39 -0800 (PST)

Greetings,

I'm having problems getting SSL to work with Apache at the moment.
The message showing up the the error_log is:

	Invalid method in request \x80\x80\x01\x03\x01

and openssl reports "unknown protocol:s23_clnt.c:460:"

Situation:
=============
Sparc Solaris 9, 
Apache 1.3.27 
mod_ssl-2.18.12 for apache 1.3.27
openssl-0.9.6.g
mm-1.1.3
perl 5.8.0
openldap-2.0.25
mod_fastcgi-2.2.12
mod_perl-1.27

All statically compiled with no visible errors from the install.

I created an SSL key and signed a test certificate and installed them in the 

/usr/lcoal/apache/conf/ssl.crt/server.crt 

/usr/local/apache/conf/ssl.key/server.key

But I get errors trying to connect to it either as https:// and 
also with the openssl command itself:

*********************************************************************
../bin/openssl s_client -connect localhost:443 -state -debug
CONNECTED(00000003)
SSL_connect:before/connect initialization
write to 0015E368 [00160508] (130 bytes => 130 (0x82))
0000 - 80 80 01 03 01 00 57 00-00 00 20 00 00 16 00 00   ......W... .....
0010 - 13 00 00 0a 07 00 c0 00-00 66 00 00 07 00 00 05   .........f......
0020 - 00 00 04 05 00 80 03 00-80 01 00 80 08 00 80 00   ................
0030 - 00 65 00 00 64 00 00 63-00 00 62 00 00 61 00 00   .e..d..c..b..a..
0040 - 60 00 00 15 00 00 12 00-00 09 06 00 40 00 00 14   `...........@...
0050 - 00 00 11 00 00 08 00 00-06 00 00 03 04 00 80 02   ................
0060 - 00 80 92 22 27 d6 22 a7-d0 f7 1b 6f 47 89 7e 64   ..."'."....oG.~d
0070 - 2a be ef ca 6d 31 8c 83-7c 91 84 a4 29 17 24 f1   *...m1..|...).$.
0080 - 9b 51                                             .Q
SSL_connect:SSLv2/v3 write client hello A
read from 0015E368 [00165A68] (7 bytes => 7 (0x7))
0000 - 3c 21 44 4f 43 54 59                              <!DOCTY
SSL_connect:error in SSLv2/v3 read server hello A
8310:error:140770FC:SSL routines:SSL23_GET_SERVER_HELLO:unknown protocol:s23_clnt.c:460:

******************************************************************
And in the error log:

[Tue Oct 29 14:55:29 2002] [error] [client 128.32.123.39] Invalid method in request \x80L\x01\x03

The ssl_engine_log shows this:

*****************************************************************
[29/Oct/2002 16:55:06 08377] [info]  Server: Apache/1.3.27, Interface: mod_ssl/2.8.12, Library: OpenSSL/0.9.6g
[29/Oct/2002 16:55:06 08377] [info]  Init: 1st startup round (still not detached)
[29/Oct/2002 16:55:06 08377] [info]  Init: Initializing OpenSSL library
[29/Oct/2002 16:55:06 08377] [info]  Init: Seeding PRNG with 136 bytes of entropy
[29/Oct/2002 16:55:06 08377] [info]  Init: Generating temporary RSA private keys (512/1024 bits)
[29/Oct/2002 16:55:08 08377] [info]  Init: Configuring temporary DH parameters (512/1024 bits)
[29/Oct/2002 16:55:08 08378] [info]  Init: 2nd startup round (already detached)
[29/Oct/2002 16:55:08 08378] [info]  Init: Reinitializing OpenSSL library
[29/Oct/2002 16:55:08 08378] [info]  Init: Seeding PRNG with 136 bytes of entropy
[29/Oct/2002 16:55:08 08378] [info]  Init: Configuring temporary RSA private keys (512/1024 bits)
[29/Oct/2002 16:55:08 08378] [info]  Init: Configuring temporary DH parameters (512/1024 bits)
[29/Oct/2002 16:55:08 08378] [info]  Init: Initializing (virtual) servers for SSL

**************************************************************************

Can anyone tell me what I've done wrong?

Thanks,

Roger

______________________________________________________________________
Apache Interface to OpenSSL (mod_ssl)                   www.modssl.org
User Support Mailing List                      [email-masked]
Automated List Manager                            [email-masked]

---

From: Geoff Thorpe <[email-masked]>
Date: Wed, 30 Oct 2002 14:09:32 -0500

> I'm having problems getting SSL to work with Apache at the moment.

"SSLEngine on"

Your (virtual) host is expecting to talk clear HTTP to the client, and
you need to tell it to talk HTTPS instead. Ie. on the server, you're
seeing it try to interpret the SSL/TLS handshake data from the client as
though it was a clear-text HTTP request, ie;

> 	Invalid method in request \x80\x80\x01\x03\x01

and your SSL/TLS client is getting a clear-text ("bad request") response
from the server and trying to interpret it as SSL/TLS handshake data.

> and openssl reports "unknown protocol:s23_clnt.c:460:"
[snip]
> 0000 - 3c 21 44 4f 43 54 59                              <!DOCTY

note the ASCII representation of the data from the server is the start
of an error page "<!DOCTY....."

Cheers,
Geoff

-- 
Geoff Thorpe
[email-masked]
http://www.geoffthorpe.net/