Apache HTTPS verbinding opzetten lukt niet met Debian

Pagina: 1
Acties:

Acties:
  • 0 Henk 'm!

  • Afvalzak
  • Registratie: Oktober 2008
  • Laatst online: 31-08 12:02

Afvalzak

Zet jij mij even buiten?

Topicstarter
Ik probeer al een tijdje een HTTPS connectie op te zetten op mijn website, ik krijg dit echter op geen manier voor elkaar en ben ook een beetje door mijn probeelsels heen;-)

Het is overigens een Debian 2.6.32.27 server.

Het is een Tomcat + Apache server, maar ik wil allereerst gewoon kunnen verbinden met Apache via poort 443.

Ik heb daarom een VH toegevoegd in sites-available/ssl
code:
1
2
3
4
5
6
7
8
9
10
11
12
13
<VirtualHost *:443>
ServerAdmin webmaster@localhost
 DocumentRoot /var/www/


SSLEngine On
SSLCertificateFile /etc/apache2/ssl/apache.pem
SSLCacertificatefile /etc/apache2/ssl/apache.pem
ErrorLog /var/log/apache2/error.log
CustomLog /var/log/apache2/access.log combined
ServerName 178.18.84.67

</VirtualHost>


De apache.pem file heb ik aangemaakt met apache2-ssl-certificate en als CN heb ik mijn ip gebruikt (Website heeft nog geen domein, en wordt benaderd via het IP)

Deze ssl file heb ik een symlink naar gemaakt in sites-enabled en ik heb apache gestart.
In de acces en error.log vind ik geen informatie en Chrome geeft de volgende error:

Error 107 (net::ERR_SSL_PROTOCOL_ERROR): SSL protocol error.

Terwijl Firefox deze error geeft:

The connection to 178.18.84.67 was interrupted while the page was loading.

Heeft iemand een suggestie voor wat ik nog meer kan proberen of misschien tips om meer 'errors' te zien?

alvast bedankt :)

Edit:
Mijn ports.conf bevat overigens de volgende tekst:

NameVirtualHost *:80
NameVirtualHost *:443
Listen 80


code:
1
2
3
4
5
6
7
8
<IfModule mod_ssl.c>
    # SSL name based virtual hosts are not yet supported, therefore no
    # NameVirtualHost statement here

    Listen 443 https


</IfModule>


en SSL heb ik aangezet met dit commando :
a2enmod ssl

[ Voor 13% gewijzigd door Afvalzak op 03-03-2012 16:06 ]

Last.fm | Code Talks


Acties:
  • 0 Henk 'm!

  • vanaalten
  • Registratie: September 2002
  • Laatst online: 08:55
Eigenlijk heb ik hier helemaal geen verstand van, maar wat losse opmerkingen:
afvalzak schreef op zaterdag 03 maart 2012 @ 15:47:
Ik heb daarom een VH toegevoegd in sites-available/ssl
code:
1
2
3
4
5
6
7
8
9
10
<VirtualHost *:443>
ServerAdmin webmaster@localhost
 DocumentRoot /var/www/
 SSLEngine On
 SSLCertificateFile /etc/apache2/ssl/apache.pem
 SSLCacertificatefile /etc/apache2/ssl/apache.pem
 ErrorLog /var/log/apache2/error.log
 CustomLog /var/log/apache2/access.log combined
 ServerName 178.18.84.67
</VirtualHost>
Die SSLCacertificatefile heb ik er in mijn SSL setup in elk geval niet bij staan.
Deze ssl file heb ik een symlink naar gemaakt in sites-enabled en ik heb apache gestart.
Voor de toekomst: die symlink kan je ook aanmaken met 'a2ensite'. Ik vermoed dat 'ie eigenlijk hetzelfde doet als wat jij met de hand gedaan hebt, maar weet het niet zeker. En Apache gestart? Of gestopt/gestart? En als je direct na het starten in de apache logfiles kijkt, zie je daar nog interessant klinkende opmerkingen?
Heeft iemand een suggestie voor wat ik nog meer kan proberen of misschien tips om meer 'errors' te zien?
... zo te zien connect je via je externe IP adres - ofwel, ook de port geforward in je router?
Mijn ports.conf bevat overigens de volgende tekst:
code:
1
2
3
4
5
6
7
8
9
NameVirtualHost *:80
NameVirtualHost *:443
Listen 80

<IfModule mod_ssl.c>
    # SSL name based virtual hosts are not yet supported, therefore no
    # NameVirtualHost statement here
    Listen 443 https
</IfModule>
Daar zie ik een duidelijk verschil met mijn ports.conf:
Ik heb achter 'listen 443' *geen* 'https' staan;
Ik heb *geen* 'NameVirtualHost *:443' regel (maar denk niet dat het kwaad kan)
Daarnaast heb ik *ook* nog:
code:
1
2
3
<IfModule mod_gnutls.c>
    Listen 443
</IfModule>

Acties:
  • 0 Henk 'm!

  • Afvalzak
  • Registratie: Oktober 2008
  • Laatst online: 31-08 12:02

Afvalzak

Zet jij mij even buiten?

Topicstarter
Heb die wijzigingen doorgevoerd (https weggehaald etc.)

En in de error.log staat het volgende:

code:
1
2
3
4
5
[Sat Mar 03 16:17:09 2012] [warn] No JkLogFile defined in httpd.conf. Using default /var/log/apache2/mod_jk.log
[Sat Mar 03 16:17:09 2012] [warn] No JkShmFile defined in httpd.conf. Using default /var/log/apache2/jk-runtime-status
[Sat Mar 03 16:17:09 2012] [warn] No JkLogFile defined in httpd.conf. Using default /var/log/apache2/mod_jk.log
[Sat Mar 03 16:17:09 2012] [warn] No JkShmFile defined in httpd.conf. Using default /var/log/apache2/jk-runtime-status
[Sat Mar 03 16:17:09 2012] [notice] Apache/2.2.9 (Debian) mod_jk/1.2.26 mod_ssl/2.2.9 OpenSSL/0.9.8g configured -- resuming normal operations


Overigens is het een VPS server en alle poorten staan open :+

Maar blijf het zelfde probleem :(

[ Voor 6% gewijzigd door Afvalzak op 03-03-2012 16:19 ]

Last.fm | Code Talks


Acties:
  • 0 Henk 'm!

  • vanaalten
  • Registratie: September 2002
  • Laatst online: 08:55
Als je zeker weet dat je poort 443 in je router correct geforward hebt, dan had ik toch wel *iets* in je logfile verwacht.

Je kan het eens testen via openssl - zie hier. Wellicht dat dat meer inzicht geeft.

Acties:
  • 0 Henk 'm!

  • Hero of Time
  • Registratie: Oktober 2004
  • Nu online

Hero of Time

Moderator LNX

There is only one Legend

Op 't werk heb ik 't prima draaien met het volgende:
code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
# Standaard Debian Squeeze versie, niets aangepast
NameVirtualHost *:80
Listen 80

<IfModule mod_ssl.c>
    # If you add NameVirtualHost *:443 here, you will also have to change
    # the VirtualHost statement in /etc/apache2/sites-available/default-ssl
    # to <VirtualHost *:443>
    # Server Name Indication for SSL named virtual hosts is currently not
    # supported by MSIE on Windows XP.
    Listen 443
</IfModule>

<IfModule mod_gnutls.c>
    Listen 443
</IfModule>


VirtualHost:
code:
1
2
3
4
5
6
7
8
9
# Wij hebben meerdere HTTPS websites, dus NameVirtualHost
NameVirtualHost *:443

<VirtualHost *:443>
        ServerName website:443
        DocumentRoot "/srv/www/htdocs/website"
        ErrorDocument 404 /errors/error404.php
        SSLEngine On
</VirtualHost>

Zoals je ziet, hebben we geen SSL certificaten bij de vhost staan. Dat is omdat we meerdere sites via een wildcard certificaat hebben, en telkens noemen van het certificaat is niet nodig (geeft zelfs problemen). Daarom staat het in mods-available/ssl.conf. Je kan je SSL certificaat ook in je vhost noemen, dat hadden we eerst. Bij wildcard certificaat, eenmaal noemen, de rest alleen SSLEngine On.
code:
1
2
3
4
5
SSLCertificateChainFile "/etc/apache2/ssl/USERTrustLegacySecureServerCA.crt"
SSLCACertificateFile "/etc/apache2/ssl/EntrustSecureServerCA.crt"
SSLCertificateFile "/etc/apache2/ssl/<jouw ssl>.crt"
SSLCertificateKeyFile "/etc/apache2/ssl/<jouw ssl>.key"
</IfModule>



Zo te zien wil je met mod_jk gaan werken. Dan kan je dit denk ik ook wel gebruiken.
code:
1
2
3
4
5
6
<VirtualHost *:443>
        ServerName domein.org:443
        SSLEngine On
        JkMount /* ajp13_worker
        JkMount /*.jsp ajp13_worker
</VirtualHost>

code:
1
2
3
4
5
6
7
8
9
#mods-available/jk.conf, symlink deze ook naar mods-enabled!
<IfModule mod_jk.c>
        JkWorkersFile /etc/libapache2-mod-jk/workers.properties
        JkLogFile /var/log/apache2/mod_jk.log
        JkLogLevel info
        JkLogStampFormat "[%a %b %d %H:%M:%S %Y]"
        JkRequestLogFormat "%w %V %T"
        JkShmFile /var/log/apache2/jk.shm
</IfModule>


Vergeet je workers.properties niet te maken. Ow, en natuurlijk zorgen dat je Tomcat user kan schrijven naar z'n logs e.g. Succes. Ik denk dat ik nog wel wat vergeten ben, maar je vind genoeg info op het web om Apache en Tomcat samen te laten lopen. Dit helpt je iig op weg, errors in je log bekijken en zoeken en je krijgt zo het antwoord.

Commandline FTW | Tweakt met mate


Acties:
  • 0 Henk 'm!

  • Zer0
  • Registratie: September 1999
  • Niet online

Zer0

Destroy 2000 Years Of Culture

code:
1
a2enmod ssl


(Oftwel, heb je de ssl mod aangezet?)

nevermind, dat heb je al..

Wat doet een telnet naar poort 443?

[ Voor 35% gewijzigd door Zer0 op 03-03-2012 19:01 ]

maybe we sit down and talk about the revolution and stuff
but it doesn't work like that
you can't turn back now there's no way back
you feel the power to destroy your enemy..


Acties:
  • 0 Henk 'm!

  • Hero of Time
  • Registratie: Oktober 2004
  • Nu online

Hero of Time

Moderator LNX

There is only one Legend

Zer0 schreef op zaterdag 03 maart 2012 @ 18:59:
code:
1
a2enmod ssl


(Oftwel, heb je de ssl mod aangezet?)

nevermind, dat heb je al..

Wat doet een telnet naar poort 443?
Staat in z'n TS (onderaan, edit) en is standaard het geval bij Debian.

Commandline FTW | Tweakt met mate


Acties:
  • 0 Henk 'm!

  • Afvalzak
  • Registratie: Oktober 2008
  • Laatst online: 31-08 12:02

Afvalzak

Zet jij mij even buiten?

Topicstarter
Gister geen tijd meer gehad, maar ga vanavond nog even verder kijken, bedankt voor de hulp zover :)

Last.fm | Code Talks


Acties:
  • 0 Henk 'm!

  • magistus
  • Registratie: December 2001
  • Laatst online: 28-09 11:57
Krijg je de default ssl-site wel aan de praat? (gebruik trouwens a2ensite/a2dissite onder Debian, deze fixed de relevante symlinkjes voor je :) )
Probeer eens:
code:
1
2
3
a2dissite ssl                     (disable je zelf gebakken ssl-host)
a2ensite default-ssl              (enable de default ssl-config, indien nog niet enabled)
/etc/init.d/apache2 reload


apache2-ssl-cert ken ik overigens niet (tenminste, is redelijk oud wat ik mij herinner), wellicht dat make-ssl-cert beter werkt? Maar goed, eerst de default-ssl testen.
Pagina: 1