GNU/Linux >> LINUX-Kenntnisse >  >> Panels >> Panels

So führen Sie ISPConfig 2 auf Port 80 mithilfe der Reverse-Proxy-Funktion von Apache aus (Debian Etch)

Ausführen von ISPConfig 2 auf Port 80 unter Verwendung der Reverse-Proxy-Funktion von Apache (Debian Etch)

Dieser Artikel zeigt, wie Sie ein Debian Etch-System konfigurieren können, auf dem das Webhosting-Kontrollfeld ISPConfig 2 installiert ist, sodass auf ISPConfig über Port 80 zugegriffen werden kann. Standardmäßig verwendet ISPConfig Port 81, der kein Standardport ist und von einigen Firewalls blockiert wird ISPs. Durch die Verwendung des mod_proxy-Moduls von Apache können wir dieses Problem vermeiden. Damit können wir einen Reverse-Proxy erstellen, der die Seiten von ISPConfig auf Port 81 abrufen kann.

Bitte beachten Sie:Dieses Tutorial bezieht sich nur auf ISPConfig 2, es ist nicht mit ISPConfig 3 kompatibel. Für ISPConfig 3 gibt es ein Nginx-Reverse-Plugin, das auf Github verfügbar ist.

Ich gebe keine Garantie dafür, dass dies bei Ihnen funktioniert!

1 Vorbemerkung

Ich habe dies auf einem Debian Etch System getestet. Während einige Befehle in diesem Tutorial Debian-spezifisch sind, können die meisten davon auf jede andere Linux-Distribution (insbesondere die Apache-Konfiguration) angewendet werden.

Ich verwende in diesem Tutorial den Hostnamen ispconfig.example.com. Das Ziel dieses Tutorials ist der Zugriff auf ISPConfig unter der URL http://ispconfig.example.com. Ich werde in zwei separaten Kapiteln zeigen, wie das geht:ein Kapitel, wenn ISPConfig unter http://ispconfig.example.com:81 (http) installiert ist, und ein Kapitel, wenn ISPConfig unter https://ispconfig installiert ist .example.com:81 (https).

2 ISPConfig unter Verwendung von http (http://ispconfig.example.com:81)

Um einen Reverse-Proxy für HTTP-Anfragen zu erstellen, benötigen wir die Apache-Module mod_proxy und mod_proxy_http. Diese sind bereits in einer Standardinstallation von Debian Etch Apache 2.2 installiert, also müssen wir sie nur aktivieren:

a2enmod proxy
a2enmod proxy_http

Danach müssen wir Apache neu laden:

/etc/init.d/apache2 force-reload

Als nächstes müssen wir Apache konfigurieren. Öffnen Sie /etc/apache2/apache2.conf und suchen Sie nach diesem Abschnitt:

vi /etc/apache2/apache2.conf
[...]
# Include the virtual host configurations:
Include /etc/apache2/sites-enabled/

<Directory /var/www/sharedip>
    Options +Includes -Indexes
    AllowOverride None
    AllowOverride Indexes AuthConfig Limit FileInfo
    Order allow,deny
    Allow from all
    <Files ~ "^\.ht">
    Deny from all
    </Files>
</Directory>
[...]

Direkt vor diesem Abschnitt fügen wir die folgenden Zeilen hinzu:

NameVirtualHost *
<VirtualHost *>
        ServerName ispconfig.example.com
        DocumentRoot /var/www/
        ProxyRequests Off

        <Proxy *>
          Order deny,allow
          Allow from all
        </Proxy>

        ProxyPass / http://ispconfig.example.com:81/
        ProxyPassReverse / http://ispconfig.example.com:81/
</VirtualHost>

sodass es so aussieht:

[...]
NameVirtualHost *
<VirtualHost *>
        ServerName ispconfig.example.com
        DocumentRoot /var/www/
        ProxyRequests Off

        <Proxy *>
          Order deny,allow
          Allow from all
        </Proxy>

        ProxyPass / http://ispconfig.example.com:81/
        ProxyPassReverse / http://ispconfig.example.com:81/
</VirtualHost>

# Include the virtual host configurations:
Include /etc/apache2/sites-enabled/

<Directory /var/www/sharedip>
    Options +Includes -Indexes
    AllowOverride None
    AllowOverride Indexes AuthConfig Limit FileInfo
    Order allow,deny
    Allow from all
    <Files ~ "^\.ht">
    Deny from all
    </Files>
</Directory>
[...]

Starten Sie dann Apache neu:

/etc/init.d/apache2 restart

Wenn Sie eine Warnung wie diese erhalten:

server1:~/ispconfig/httpd/conf# /etc/init.d/apache2 restart
Forcing reload of web server (apache2)...[Tue May 22 23:23:12 2007] [warn] NameVirtualHost *:0 has no VirtualHosts
[Tue May 22 23:23:22 2007] [warn] NameVirtualHost *:0 has no VirtualHosts

dann können Sie entweder die Zeile Include /etc/apache2/sites-enabled/ in /etc/apache2/apache2.conf auskommentieren:

vi /etc/apache2/apache2.conf
[...]
# Include the virtual host configurations:
#Include /etc/apache2/sites-enabled/
[...]

oder Sie kommentieren die Zeile NameVirtualHost * am Anfang von /etc/apache2/sites-available/default:

aus
vi /etc/apache2/sites-available/default
#NameVirtualHost *
[...]

Starten Sie Apache neu:

/etc/init.d/apache2 restart

Die Warnungen sollten jetzt weg sein.

Abschließend müssen wir die ISPConfig-Konfigurationsdatei /home/admispconfig/ispconfig/lib/config.inc.php anpassen. Darin sollten Sie etwa Folgendes finden:

vi /home/admispconfig/ispconfig/lib/config.inc.php
[...]
if(isset($_SERVER['HTTP_HOST'])){
  $go_info["server"]["server_url"] = 'http://'.$_SERVER['HTTP_HOST'];
} else {
  $go_info["server"]["server_url"] = "http://ispconfig.example.com:81";
}
[...]

Ändern Sie es so, dass es so aussieht:

[...]
//if(isset($_SERVER['HTTP_HOST'])){
//  $go_info["server"]["server_url"] = 'http://'.$_SERVER['HTTP_HOST'];
//} else {
  $go_info["server"]["server_url"] = "http://ispconfig.example.com";
//}
[...]

Das ist es. Öffnen Sie einen Browser und geben Sie http://ispconfig.example.com ein, und Sie sollten die ISPConfig-Anmeldeaufforderung sehen.

3 ISPConfig mit https (https://ispconfig.example.com:81)

Um einen Reverse-Proxy für HTTP-Anfragen zu erstellen, benötigen wir die Apache-Module mod_proxy und mod_proxy_http. Diese sind bereits in einer Standardinstallation von Debian Etch Apache 2.2 installiert, also müssen wir sie nur aktivieren:

a2enmod proxy
a2enmod proxy_http

Da unser Apache-Reverse-Proxy in der Lage sein muss, mit einer https-Site (https://ispconfig.example.com:81) zu „sprechen“, benötigen wir auch die Module mod_proxy_connect und mod_ssl:

a2enmod proxy_connect
a2enmod ssl

Danach müssen wir Apache neu laden:

/etc/init.d/apache2 force-reload

Als nächstes müssen wir Apache konfigurieren. Öffnen Sie /etc/apache2/apache2.conf und suchen Sie nach diesem Abschnitt:

vi /etc/apache2/apache2.conf
[...]
# Include the virtual host configurations:
Include /etc/apache2/sites-enabled/

<Directory /var/www/sharedip>
    Options +Includes -Indexes
    AllowOverride None
    AllowOverride Indexes AuthConfig Limit FileInfo
    Order allow,deny
    Allow from all
    <Files ~ "^\.ht">
    Deny from all
    </Files>
</Directory>
[...]

Fügen Sie direkt vor diesem Abschnitt die folgenden Zeilen hinzu:

NameVirtualHost *
<VirtualHost *>
        ServerName ispconfig.example.com
        DocumentRoot /var/www/
        ProxyRequests Off

        <Proxy *>
          Order deny,allow
          Allow from all
        </Proxy>

        ProxyPass / https://ispconfig.example.com:81/
        ProxyPassReverse / https://ispconfig.example.com:81/

        SSLProxyEngine on
        AllowCONNECT 81
</VirtualHost>

sodass es so aussieht:

[...]
NameVirtualHost *
<VirtualHost *>
        ServerName ispconfig.example.com
        DocumentRoot /var/www/
        ProxyRequests Off

        <Proxy *>
          Order deny,allow
          Allow from all
        </Proxy>

        ProxyPass / https://ispconfig.example.com:81/
        ProxyPassReverse / https://ispconfig.example.com:81/

        SSLProxyEngine on
        AllowCONNECT 81
</VirtualHost>

# Include the virtual host configurations:
Include /etc/apache2/sites-enabled/

<Directory /var/www/sharedip>
    Options +Includes -Indexes
    AllowOverride None
    AllowOverride Indexes AuthConfig Limit FileInfo
    Order allow,deny
    Allow from all
    <Files ~ "^\.ht">
    Deny from all
    </Files>
</Directory>
[...]

Starten Sie dann Apache neu:

/etc/init.d/apache2 restart

Wenn Sie eine Warnung wie diese erhalten:

server1:~/ispconfig/httpd/conf# /etc/init.d/apache2 restart
Forcing reload of web server (apache2)...[Tue May 22 23:23:12 2007] [warn] NameVirtualHost *:0 has no VirtualHosts
[Tue May 22 23:23:22 2007] [warn] NameVirtualHost *:0 has no VirtualHosts

dann können Sie entweder die Zeile Include /etc/apache2/sites-enabled/ in /etc/apache2/apache2.conf auskommentieren:

vi /etc/apache2/apache2.conf
[...]
# Include the virtual host configurations:
#Include /etc/apache2/sites-enabled/
[...]

oder Sie kommentieren die Zeile NameVirtualHost * am Anfang von /etc/apache2/sites-available/default:

aus
vi /etc/apache2/sites-available/default
#NameVirtualHost *
[...]

Starten Sie Apache neu:

/etc/init.d/apache2 restart

Die Warnungen sollten jetzt weg sein.

Abschließend müssen wir die ISPConfig-Konfigurationsdatei /home/admispconfig/ispconfig/lib/config.inc.php anpassen. Darin sollten Sie etwa Folgendes finden:

vi /home/admispconfig/ispconfig/lib/config.inc.php
[...]
if(isset($_SERVER['HTTP_HOST'])){
  $go_info["server"]["server_url"] = 'https://'.$_SERVER['HTTP_HOST'];
} else {
  $go_info["server"]["server_url"] = "https://ispconfig.example.com:81";
}
[...]

Ändern Sie es so, dass es so aussieht:

[...]
//if(isset($_SERVER['HTTP_HOST'])){
//  $go_info["server"]["server_url"] = 'https://'.$_SERVER['HTTP_HOST'];
//} else {
  $go_info["server"]["server_url"] = "http://ispconfig.example.com";
//}
[...]

Bitte stellen Sie sicher, dass es http://ispconfig.example.com lautet, nicht https://ispconfig.example.com!

Das ist es. Öffnen Sie einen Browser und geben Sie http://ispconfig.example.com ein, und Sie sollten die ISPConfig-Anmeldeaufforderung sehen.

  • Apache-Modul mod_proxy:http://httpd.apache.org/docs/2.2/mod/mod_proxy.html
  • Apache:http://httpd.apache.org
  • ISPConfig:http://www.ispconfig.org
  • Debian:http://www.debian.org

Panels
  1. So sichern Sie Systemkonfigurationsdateien mit der WHM-Sicherungsfunktion ?

  2. Erzwungene Werbung auf ISPConfig mit Debian Etch

  3. So richten Sie suPHP auf einem auf Debian Etch basierenden ISPConfig-Server ein

  4. So aktivieren Sie mehrere HTTPS-Sites für eine IP auf Debian Etch mithilfe von TLS-Erweiterungen

  5. So installieren Sie Odoo 11 auf Debian 9 mit Nginx als Reverse Proxy

So richten Sie Nginx als Reverse Proxy für Apache unter Debian 11 ein

So installieren Sie ISPConfig unter Debian 11

So richten Sie Mailman mit Debian und ISPConfig ein

So installieren Sie Drupal 5.6 auf Debian Etch mit ISPConfig

So betreiben Sie Ihre eigenen DNS-Server (primär und sekundär) mit ISPConfig 3 (Debian Squeeze)

Wie installiere ich ISPConfig unter Debian 10?