Hallo,
Op ons kantoor draait een W2k8 R2 server waarop ons CRM systeem een een aantal tools draaien op Apache.
Om het eenvoudig bereikbaar en zo veilig mogelijk te houden heb ik het volgende gedaan:
- hq.bedrijfsnaam.com -> publiek IP-adres van ons kantoor
- port forward voor poort 80 en 443 naar privaat adres van de server
- de poorten open in de firewall
- Apache 2.2 op de server met:
- Overbodige modules uitgeschakeld
- Basedirs ingesteld zodat de pakketten en tools alleen daar bij kunnen waar ze moeten zijn
- Als documentroot een map waar niets in staat en waarvan de Directory op Deny All staat
- Één virtuele host op poort 80 die al het verkeer redirect naar poort 443.
- Een certificaat voor hq.bedrijfsnaam.com van een vertrouwde CA geïnstalleerd
Dan nu het probleem, zoals je boven kunt zien hebben we 1 IP-adres en 1 sub-domain (anders moeten we voor ieder sub-domain een certificaat kopen). Toch willen we 6 vhosts laten draaien. We willen niet aan extra poortnummers voor elke tool, mensen hier willen het graag zo eenvoudig mogelijk, het gaat om dagelijks gebruik door niet technische mensen.
Om het toch mogelijk te maken meerdere diensten te draaien gebruiken we nu:
Ok, dus voor zover mij bekend best strict en obscuur in de hoop dat aanvallers er ook geen zin in hebben. Maar nu lopen we tegen het probleem aan dat:
"C:/www/apache/htdocs/dummy" retourneert. En we willen bijv. graag: F:/www/htdocs/dienst[n]-prod zien.
Heeft iemand een idee om de vhosts bijvoorbeeld per directory/path aan te maken?
Als je tot hier gekomen bent dan dank ik je hartelijk!
Op ons kantoor draait een W2k8 R2 server waarop ons CRM systeem een een aantal tools draaien op Apache.
Om het eenvoudig bereikbaar en zo veilig mogelijk te houden heb ik het volgende gedaan:
- hq.bedrijfsnaam.com -> publiek IP-adres van ons kantoor
- port forward voor poort 80 en 443 naar privaat adres van de server
- de poorten open in de firewall
- Apache 2.2 op de server met:
- Overbodige modules uitgeschakeld
- Basedirs ingesteld zodat de pakketten en tools alleen daar bij kunnen waar ze moeten zijn
- Als documentroot een map waar niets in staat en waarvan de Directory op Deny All staat
- Één virtuele host op poort 80 die al het verkeer redirect naar poort 443.
- Een certificaat voor hq.bedrijfsnaam.com van een vertrouwde CA geïnstalleerd
Dan nu het probleem, zoals je boven kunt zien hebben we 1 IP-adres en 1 sub-domain (anders moeten we voor ieder sub-domain een certificaat kopen). Toch willen we 6 vhosts laten draaien. We willen niet aan extra poortnummers voor elke tool, mensen hier willen het graag zo eenvoudig mogelijk, het gaat om dagelijks gebruik door niet technische mensen.
Om het toch mogelijk te maken meerdere diensten te draaien gebruiken we nu:
code:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
| NameVirtualHost *:443
<VirtualHost hq.bedrijfsnaam.com:443>
Servername hq.bedrijfsnaam.com
ServerAlias 192.168.x.x, x.x.x.x
ServerAdmin ik@bedrijfsnaam.com
DocumentRoot "C:/www/apache/htdocs/dummy"
<Directory "C:/www/apache/htdocs/dummy">
AllowOverride None
Order Allow, Deny
Deny From All
</Directory>
Alias /dienst1_beta "F:/www/htdocs/dienst1-beta"
Alias /dienst1 "F:/www/htdocs/dienst1-prod"
Alias /dienst[n]_beta "F:/www/htdocs/dienst[n]-beta"
Alias /dienst[n] "F:/www/htdocs/dienst[n]-prod"
<Directory "F:/www/apache/htdocs/dienst1">
AllowOverride All
Order Allow, Deny
Allow From All
AuthType Basic
AuthName "Niet publieke dienst"
AuthUserFile "C:\www\apache\conf\.htpassword-intern"
Require valid-user
Allow from 192.168.x.0/24
Satisfy Any
</Directory>
<Directory "F:/www/apache/htdocs/dienst[n]">
AllowOverride All
Order Allow, Deny
Allow From All
</Directory>
... etc
</VirtualHost> |
Ok, dus voor zover mij bekend best strict en obscuur in de hoop dat aanvallers er ook geen zin in hebben. Maar nu lopen we tegen het probleem aan dat:
code:
1
2
3
| <?php> echo $_SERVER["DOCUMENT_ROOT"] ; ?> |
"C:/www/apache/htdocs/dummy" retourneert. En we willen bijv. graag: F:/www/htdocs/dienst[n]-prod zien.
Heeft iemand een idee om de vhosts bijvoorbeeld per directory/path aan te maken?
Als je tot hier gekomen bent dan dank ik je hartelijk!