Both sides previous revision Previous revision Next revision | Previous revision |
debian:proxy-server-debian:reverseproxy-debian [2017/10/27 16:39] – michael | debian:proxy-server-debian:reverseproxy-debian [2017/10/27 17:05] (current) – [Bereinigen der Virtual-Hosts] michael |
---|
====== Reverse Proxy Installation auf Debian / Ubuntu ====== | ====== Reverse Proxy Installation auf Debian / Ubuntu ====== |
Als Grundlage für den Reverse Proxy wurde ein **Ubuntu 16.04** aufgesetzt. Im folgenden werden alle Schritte nach der fertigen OS Installation zum einrichten des Proxys beschrieben. | Als Grundlage für den hier zu installierenden Reverse Proxy wurde ein **Ubuntu 16.04** aufgesetzt. Im folgenden werden alle Schritte nach der fertigen OS Installation zum einrichten des Proxys beschrieben. |
| |
**Was ist ein Reverse Proxy?** //Grundsätzlich handelt es sich bei einem Proxy um eine Kommunikationsschnittstelle im Netzwerk, die Anfragen entgegennimmt und stellvertretend an einen Zielrechner weiterleitet. Ein Reverse Proxy wird nun aber meistens als zusätzliche Sicherheitskomponente vor einen oder mehrere Webserver geschaltet, um Anfragen aus dem Internet stellvertretend entgegen-zunehmen und an einen Backend-Server im Hintergrund weiterzuleiten. | **Was ist ein Reverse Proxy?** //Grundsätzlich handelt es sich bei einem Proxy um eine Kommunikationsschnittstelle im Netzwerk, die Anfragen entgegennimmt und stellvertretend an einen Zielrechner weiterleitet. Ein Reverse Proxy wird nun aber meistens als zusätzliche Sicherheitskomponente vor einen oder mehrere Webserver geschaltet, um Anfragen aus dem Internet stellvertretend entgegen-zunehmen und an einen Backend-Server im Hintergrund weiterzuleiten. |
</WRAP> | </WRAP> |
| |
**[[http://www.fit-pc.com/web/products/ipc3/|Weitere interessante Hardware für standalone Proxies (Falls kein Odroid gebraucht wird)]]** | **[[http://www.fit-pc.com/web/products/ipc3/|Interessante Hardware für standalone Proxies]]** |
| |
---- | ---- |
---- | ---- |
| |
| |
| <WRAP center box 100%> |
===== Installation der Grundkomponenten ===== | ===== Installation der Grundkomponenten ===== |
Zu Beginn werden erst einmal alle Grundpakete, welche zum einrichten unseres Proxys gebraut werden installiert. <wrap em>ACHTUNG: Das Paket "''<wrap em>libapache2-mod-proxy-html</wrap>''" ist bei ''<wrap em>Ubuntu 16.04</wrap>'' schon in der Base Installation enthalten!</wrap> | Zu Beginn werden erst einmal alle Grundpakete, welche zum einrichten unseres Proxys gebraut werden installiert. <wrap em>ACHTUNG: Das Paket "''<wrap em>libapache2-mod-proxy-html</wrap>''" ist bei ''<wrap em>Ubuntu 16.04</wrap>'' schon in der Base Installation enthalten!</wrap> |
# git clone https://github.com/letsencrypt/letsencrypt | # git clone https://github.com/letsencrypt/letsencrypt |
</code> | </code> |
| |
| </WRAP> |
| |
---- | ---- |
''<wrap em>ACHTUNG: Folgene Virtual-Host sind reine Beispiele und müssen dementsprechend noch durch richtige Domainnamen ergänzt, abgeändert werden.</wrap>'' | ''<wrap em>ACHTUNG: Folgene Virtual-Host sind reine Beispiele und müssen dementsprechend noch durch richtige Domainnamen ergänzt, abgeändert werden.</wrap>'' |
| |
//Alle anzupassenden Zeilen sind Blau markiert! PS: EXAMPLE.COM wird durch eigenen Domain-namen ersetzt!// | ''//Alle anzupassenden Zeilen sind Blau markiert! PS: EXAMPLE.COM wird durch eigenen Domain-namen ersetzt!//'' |
| |
---- | ---- |
</code> | </code> |
| |
<sxh bash; first-line: 1> | <sxh bash; first-line: 1; highlight: [5]> |
<VirtualHost *:80> | <VirtualHost *:80> |
# ServerName example.com | # ServerName example.com |
</code> | </code> |
| |
<sxh bash; first-line: 1> | <sxh bash; first-line: 1; highlight: [5,7,16,18-26]> |
#------------------------------------------------------------------------------------------------ | #------------------------------------------------------------------------------------------------ |
# REDIRECTION FOR NON EXISTENT SUBDOMAINS | # REDIRECTION FOR NON EXISTENT SUBDOMAINS |
</code> | </code> |
| |
<sxh bash; first-line: 1> | <sxh bash; first-line: 1; highlight: [6,7,12,27,38-39,41,48,56-57,61,68,81-82,84,91,102-103,106,112,120-121,123,133,142]> |
<IfModule mod_ssl.c> | <IfModule mod_ssl.c> |
| |
ProxyPass / http://192.168.1.15/ retry=1 acquire=3000 Timeout=7200 Keepalive=On flushpackets=On | ProxyPass / http://192.168.1.15/ retry=1 acquire=3000 Timeout=7200 Keepalive=On flushpackets=On |
ProxyPassReverse / http://192.168.1.15/ | ProxyPassReverse / http://192.168.1.15/ |
| |
<Proxy http://192.168.1.15/> | <Proxy http://192.168.1.15/> |
Order deny,allow | Order deny,allow |
</code> | </code> |
| |
<sxh bash; first-line: 1> | <sxh bash; first-line: 1; highlight: [2,4,6-12]> |
| |
<VirtualHost *:80> | <VirtualHost *:80> |
# a2dissite letsencript_dummy.conf | # a2dissite letsencript_dummy.conf |
| |
# a2ensite blackgate.org.conf | # a2ensite EXAMPLE.COM.conf |
# a2ensite proxy_http.conf | # a2ensite proxy_http.conf |
# a2ensite proxy_https_blackgate.conf | # a2ensite proxy_https.conf |
| |
</code> | </code> |
- Zum letsencript Binary wechseln und den letzten certonly Befehl //(Suchen mit CTRL + R)// mit der am Schluss neu angehängter Domain z.B. "**-d NEU-SUBDOM.DOMAIN.COM**" ausführen. <code> | - Zum letsencript Binary wechseln und den letzten certonly Befehl //(Suchen mit CTRL + R)// mit der am Schluss neu angehängter Domain z.B. "**-d NEU-SUBDOM.DOMAIN.COM**" ausführen. <code> |
# cd /opt/letsencrypt/ | # cd /opt/letsencrypt/ |
# ./letsencrypt-auto certonly --rsa-key-size 4096 -d blackgate.org -d xxx.blackgate.org -d cloud.blackgate.org -d su-login.blackgate.org -d plexpy.blackgate.org -d wiki.blackgate.org -d serv.blackgate.org -d www.blackgate.org -d stream.blackgate.org -d emby.blackgate.org -d request.blackgate.org -d index.blackgate.org -d ucloud.blackgate.org -d proxy.blackgate.org -d plexdash.blackgate.org -d test.blackgate.org -d piwik.blackgate.org | # ./letsencrypt-auto certonly --rsa-key-size 4096 -d example.com -d www.example.com -d piwik.example.com -d cloud.example.com -d wiki.example.com -d test.example.com -d new1.example.com -d new2.example.com |
</code> | </code> |
- Zum Schluss muss noch der Apache Service neu geladen werden, damit das neue Zertifikat angezogen wird. <code> | - Zum Schluss muss noch der Apache Service neu geladen werden, damit das neue Zertifikat angezogen wird. <code> |