Current time: 12-23-2024, 07:01 AM Hello There, Guest! (LoginRegister)


Post Reply 
[HowTo] SSL Proxy unter ispCP RC5 & RC6 einrichten
Author Message
CHBIE Offline
Junior Member
*

Posts: 225
Joined: May 2008
Reputation: 11
Post: #1
[HowTo] SSL Proxy unter ispCP RC5 & RC6 einrichten
Bevor Du beginnst erstelle bitte eine Subdomain namens ssl.

"domain.tld" muss durch deine Domain ersetzt werden!

"xxx.xxx.xxx.xxx" muss durch deine Server IP ersetzt werden!

Server Certifikate erstellen:
Code:
apt-get install openssl ssl-cert
mkdir /etc/apache2/ssl
openssl req $@ -new -x509 -days 365 -nodes -out /etc/apache2/ssl/apache.crt -keyout /etc/apache2/ssl/apache.key
Wichtig: der Common Name muss zwingend als ssl.tomain.tld eingetragen werden!
Code:
chmod 600 /etc/apache2/ssl/apache.crt
vi /etc/apache2/ports.conf
Listen 443 eintragen.

SSL Proxy einrichten:
Code:
vi /etc/apache2/sites-available/000-default-ssl
mit diesem Inhalt füllen:
Code:
<IfModule mod_rewrite.c>
<IfModule mod_ssl.c>

RewriteLock     /var/lock/rewrite.lock

<VirtualHost xxx.xxx.xxx.xxx:443>

DocumentRoot "/var/www/virtual/domain.tld/ssl/htdocs"
ServerName ssl.domain.tld
ServerAdmin admin@domain.tld
SuexecUserGroup vu2000 vu2000

SSLEngine on
SSLCipherSuite ALL:!ADH:!EXPORT56:RC4+RSA:+HIGH:+MEDIUM:+LOW:+SSLv2:+EXP:+eNULL
SSLCertificateFile /etc/apache2/ssl/apache.crt
SSLCertificateKeyFile /etc/apache2/ssl/apache.key

# Rewrite-Engine einschalten fuer Umschreiben der URL
RewriteEngine   on

# Logging ausschalten mit folgenden Zeilen:
#RewriteLog     /dev/null
#RewriteLog     0
RewriteLog      /var/log/apache2/sslproxy.log
RewriteLogLevel 1

RewriteMap      lowercase       int:tolower
# RewriteMap für die Domainnamen, welche SSL erhalten sollen
RewriteMap      domaindb        txt:/etc/apache2/ssldomains
RewriteRule     ^/icons/(.+)  -                               [L]
# Fuer MS Internet Explorer ab Version 6
RewriteRule     ^/w3c/(.+)      -                               [L]
# Kundendomain in Kleinbuchstaben umwandeln (fuer Datenbank-Lookup)
RewriteRule     ^/([^/]+)/(.*)  /${lowercase:$1}/$2             [S=1]
RewriteRule     ^/(.*)          /${lowercase:$1}
# Per Proxy Verbindung zu http://kundendomain/... aufbauen.
# Wahlweise auch http://www.kundendomain/...
# Falls Kundendomain ohne abschliessenden "/" angegeben,
# "/" anhaengen und Redirect erzwingen, d.h. Browser soll es
# mit "kundendomain/" nochmal versuchen.
# Für den Fall, dass der "Pfad" nicht in der domaindb gefunden wurde,
# ssl.domain/Pfad anzeigen.
RewriteRule     ^/www\.([^/]+)/(.*)     /${domaindb:$1|%{HTTP_HOST}/$1}/$2      [S=2]
RewriteRule     ^/([^/]+)/(.*)          /${domaindb:$1|%{HTTP_HOST}/$1}/$2      [S=1]
RewriteRule     ^/(.+)                  /$1/                    [R,L]
RewriteRule     ^/(.*)                  http://$1               [P,L]
</VirtualHost>

</IfModule>
</IfModule>

Code:
vi /etc/apache2/ssldomains
Hier erstellst Du für jede Domain welche den Proxy benutzen darf, folgenden Eintrag: (je Zeile ein Eintrag!)
Code:
domain.tld    www.domain.tld
nun die module starten
Code:
a2enmod proxy
a2enmod proxy_http
a2enmod rewrite
a2enmod ssl
a2ensite 000-default-ssl
Code:
vi /etc/apache2/mods-enabled/proxy.conf
so ändern
Code:
<Proxy *>
AddDefaultCharset off
Order deny,allow
#Deny from all
Allow from ssl.domain.tld
</Proxy>
nun den Webserver reloaden
Code:
/etc/init.d/apache2 force-reload
jetzt kannst Du so testen ob dein Proxy läuft
Code:
https://ssl.domain.tld/domain.tld
Gruss CHBIE
(This post was last modified: 11-25-2008 03:06 AM by BeNe.)
09-05-2008 12:11 AM
Visit this user's website Find all posts by this user Quote this message in a reply
CHBIE Offline
Junior Member
*

Posts: 225
Joined: May 2008
Reputation: 11
Post: #2
RE: SSL Proxy unter ispCP RC5 & RC6 einrichten
Mit diesem Code kannst Du die bestehenden KundenDomains auslesen und in /etc/apache2/ssldomains einfügen.

PHP Code:
<?php
$server 
"localhost";
$Benutzer ""//Beuntzer eintragen
$Passwort ""//Passwort eintragen
$verbindung mysql_connect ($server$Benutzer$Passwort);
mysql_select_db("ispcp"$verbindung);
$sql "SELECT * FROM domain ORDER BY domain_id desc";  
$ergebnis mysql_query($sql$verbindung);  
while(
$row mysql_fetch_object($ergebnis))  
{  
   echo 
$row->domain_name,"    www.$row->domain_name<br />";  
}  
mysql_free_result($ergebnis);  
mysql_close($verbindung);  
?>
Den Code unter irgendwas.php speichen, per FTP auf den Server laden und aufrufen.
Alle Einträge markieren und in die /etc/apache2/ssldomains einfügen.
09-05-2008 09:48 PM
Visit this user's website Find all posts by this user Quote this message in a reply
BeNe Offline
Moderator
*****
Moderators

Posts: 5,899
Joined: Jan 2007
Reputation: 68
Post: #3
RE: SSL Proxy unter ispCP RC5 & RC6 einrichten
Fine! I will test it and then we should copy it to the Documentation -> HowTo´s and translate it in English.

Thanks &
Greez BeNe
09-07-2008 02:09 AM
Visit this user's website Find all posts by this user Quote this message in a reply
petzsch Offline
Junior Member
*

Posts: 43
Joined: Mar 2007
Reputation: 1
Post: #4
RE: SSL Proxy unter ispCP RC5 & RC6 einrichten
I'm using pretty much the same piece of configuration lines on one of my VHCS machines.

Telling from the comment lines this was also
"inspired" by a strato or 1&1 howto. At least I think that's where I found it last time. ;-)

Just some ideas for the implemention of this:

According to http://httpd.apache.org/docs/2.0/mod/mod...rewritemap it would be faster to use DBM hash files for the name lookup instead of txt files. (could be worth considering for larger configs) It shouldn't be to hard to make a cronjob script to extract all active domains, subdomains and aliases into a text file und to covert them into a dbm file. It could also be possible to make an optional feature out of it so the reseller/admin can decide to make it avaible to (paying) customers only.
09-10-2008 08:34 PM
Find all posts by this user Quote this message in a reply
Diggo Offline
Junior Member
*

Posts: 94
Joined: Sep 2007
Reputation: 1
Post: #5
RE: SSL Proxy unter ispCP RC5 & RC6 einrichten
Super, auf sowas habe ich lange gewartet!

Super, i've been waiting for sth. like this all the time!
09-10-2008 08:56 PM
Find all posts by this user Quote this message in a reply
CHBIE Offline
Junior Member
*

Posts: 225
Joined: May 2008
Reputation: 11
Post: #6
RE: SSL Proxy unter ispCP RC5 & RC6 einrichten
@petsch
SSL Proxy geht meineswissens nur für domains nicht für subdomains und aliases.

das mit dem automaisch anlegen der benutzer beim einrichten würde ich auch begrüssen.

Gruss CHBIE
09-10-2008 09:21 PM
Visit this user's website Find all posts by this user Quote this message in a reply
petzsch Offline
Junior Member
*

Posts: 43
Joined: Mar 2007
Reputation: 1
Post: #7
RE: SSL Proxy unter ispCP RC5 & RC6 einrichten
I don't see any reason why it shouldn't work with aliases and subdomains. It even works with Domains on other machines. You should just keep in mind that data between the machine running the ssl proxy and the one providing the site is exchanged unencrypted. So not quite what a user would expect from an SSL enabled site.

Just your export script won't work for subdomains and aliases.
09-10-2008 09:52 PM
Find all posts by this user Quote this message in a reply
umaxx Offline
Newbie
*

Posts: 6
Joined: Dec 2008
Reputation: 0
Post: #8
RE: [HowTo] SSL Proxy unter ispCP RC5 & RC6 einrichten
Quote:
Code:
RewriteMap      lowercase       int:tolower
# RewriteMap für die Domainnamen, welche SSL erhalten sollen
RewriteMap      domaindb        txt:/etc/apache2/ssldomains
RewriteRule     ^/icons/(.+)  -                               [L]
# Fuer MS Internet Explorer ab Version 6
RewriteRule     ^/w3c/(.+)      -                               [L]
# Kundendomain in Kleinbuchstaben umwandeln (fuer Datenbank-Lookup)
RewriteRule     ^/([^/]+)/(.*)  /${lowercase:$1}/$2             [S=1]
RewriteRule     ^/(.*)          /${lowercase:$1}
# Per Proxy Verbindung zu http://kundendomain/... aufbauen.
# Wahlweise auch http://www.kundendomain/...
# Falls Kundendomain ohne abschliessenden "/" angegeben,
# "/" anhaengen und Redirect erzwingen, d.h. Browser soll es
# mit "kundendomain/" nochmal versuchen.
# Für den Fall, dass der "Pfad" nicht in der domaindb gefunden wurde,
# ssl.domain/Pfad anzeigen.
RewriteRule     ^/www\.([^/]+)/(.*)     /${domaindb:$1|%{HTTP_HOST}/$1}/$2      [S=2]
RewriteRule     ^/([^/]+)/(.*)          /${domaindb:$1|%{HTTP_HOST}/$1}/$2      [S=1]
RewriteRule     ^/(.+)                  /$1/                    [R,L]
RewriteRule     ^/(.*)                  http://$1               [P,L]

if I use the rewrite code - the ssl domain itself ssl.domain.tld is no longer reachable: 400 Bad Request
and this in the logs:
Code:
[Tue Jan 06 18:16:38 2009] [error] [client xxx.xxx.xxx.xxx] error parsing URL //: Invalid host/port

Sad

any hints?
01-07-2009 03:18 AM
Find all posts by this user Quote this message in a reply
CHBIE Offline
Junior Member
*

Posts: 225
Joined: May 2008
Reputation: 11
Post: #9
RE: [HowTo] SSL Proxy unter ispCP RC5 & RC6 einrichten
Frage hast Du das gemacht?

Quote:"domain.tld" muss durch deine Domain ersetzt werden!

"xxx.xxx.xxx.xxx" muss durch deine Server IP ersetzt werden!

Gruss CHBIE
01-07-2009 05:13 AM
Visit this user's website Find all posts by this user Quote this message in a reply
umaxx Offline
Newbie
*

Posts: 6
Joined: Dec 2008
Reputation: 0
Post: #10
RE: [HowTo] SSL Proxy unter ispCP RC5 & RC6 einrichten
(01-07-2009 05:13 AM)CHBIE Wrote:  Frage hast Du das gemacht?

Quote:"domain.tld" muss durch deine Domain ersetzt werden!

"xxx.xxx.xxx.xxx" muss durch deine Server IP ersetzt werden!

Gruss CHBIE

ja natürlich Smile

der proxy an sich funktioniert ja auch, nur eben die ssl.domain.tld selber, will nicht mehr Sad

hier noch was ich in /var/log/apache2/sslproxy.log drin habe:

Code:
xxx.xxx.xxx.xxx - - [06/Jan/2009:22:10:59 +0100] [ssl.domain.tld/sid#89969e0][rid#8eb85a0/initial] (1) go-ahead with proxy request proxy:http:// [OK]
xxx.xxx.xxx.xxx - - [06/Jan/2009:22:10:59 +0100] [ssl.domain.tld/sid#89969e0][rid#901d210/initial] (1) escaping https://ssl.domain.tld/favicon.ico/ for redirect
xxx.xxx.xxx.xxx - - [06/Jan/2009:22:10:59 +0100] [ssl.domain.tld/sid#89969e0][rid#901d210/initial] (1) redirect to https://ssl.domain.tld/favicon.ico/ [REDIRECT/302]
xxx.xxx.xxx.xxx - - [06/Jan/2009:22:10:59 +0100] [ssl.domain.tlde/sid#89969e0][rid#901d210/initial] (1) go-ahead with proxy request proxy:http://ssl.domain.tld/favicon.ico/ [OK]
xxx.xxx.xxx.xxx - - [06/Jan/2009:22:11:02 +0100] [ssl.domain.tld/sid#89969e0][rid#8f77488/initial] (1) escaping https://ssl.domain.tld/favicon.ico/ for redirect
xxx.xxx.xxx.xxx - - [06/Jan/2009:22:11:02 +0100] [ssl.domain.tld/sid#89969e0][rid#8f77488/initial] (1) redirect to https://ssl.domain.tld/favicon.ico/ [REDIRECT/302]
xxx.xxx.xxx.xxx - - [06/Jan/2009:22:11:02 +0100] [ssl.domain.tld/sid#89969e0][rid#8f77488/initial] (1) go-ahead with proxy request proxy:http://ssl.domain.tld/favicon.ico/ [OK]
01-07-2009 07:14 AM
Find all posts by this user Quote this message in a reply
Post Reply 


Forum Jump:


User(s) browsing this thread: 1 Guest(s)