Apache Reverse Proxy als Authentifizierungsproxy - Error 401
Hallo Leute
Ich bin zwar hier nicht ganz richtig unter Linux: Apache Server, aber ich denke es passt dennoch am Besten.
So nun zum Problem:
Auf einem Windows Embedded System läuft ein kleiner Webserver für die Webvisualisierung einer SPS, dieser Webserver bietet nahezu keine Möglichkeiten etwas zu konfigurieren.
Nachdem dieses Webinterface nun auch von Extern erreichbar sein muss, ist eine Authentifizierung notwendig.
Also hab ich einen Apache 2.4 installiert und ihn als Reverse-Proxy konfiguriert. Soweit funktioniert auch alles, allerding sobald ich die Basic Authentifizierung aktiviere funktioniert zeigt der Proxy nach richtiger Eingabe von Benutzername und Passwort nur "401 authorization required" wenn ich die apache config ändere kann auch "502 Bad Gateway" hatte ich schon.
Spannenderweise wenn ich auf dem selben reverse-proxy eine andere proxyurl hinterlege funktioniert alles ohne Probleme.
hat jemand noch eine Idee was ich versuche könnte bzw. vielleicht sieht jemand wo das Problem liegen könnte.
Danke euch!
LG J.D.
Ich bin zwar hier nicht ganz richtig unter Linux: Apache Server, aber ich denke es passt dennoch am Besten.
So nun zum Problem:
Auf einem Windows Embedded System läuft ein kleiner Webserver für die Webvisualisierung einer SPS, dieser Webserver bietet nahezu keine Möglichkeiten etwas zu konfigurieren.
Nachdem dieses Webinterface nun auch von Extern erreichbar sein muss, ist eine Authentifizierung notwendig.
Also hab ich einen Apache 2.4 installiert und ihn als Reverse-Proxy konfiguriert. Soweit funktioniert auch alles, allerding sobald ich die Basic Authentifizierung aktiviere funktioniert zeigt der Proxy nach richtiger Eingabe von Benutzername und Passwort nur "401 authorization required" wenn ich die apache config ändere kann auch "502 Bad Gateway" hatte ich schon.
Spannenderweise wenn ich auf dem selben reverse-proxy eine andere proxyurl hinterlege funktioniert alles ohne Probleme.
Define SRVROOT "c:\Apache24"
ServerRoot "${SRVROOT}"
Listen 8080
LoadModule actions_module modules/mod_actions.so
LoadModule alias_module modules/mod_alias.so
LoadModule allowmethods_module modules/mod_allowmethods.so
LoadModule asis_module modules/mod_asis.so
LoadModule auth_basic_module modules/mod_auth_basic.so
LoadModule authn_core_module modules/mod_authn_core.so
LoadModule authn_file_module modules/mod_authn_file.so
LoadModule authz_core_module modules/mod_authz_core.so
LoadModule authz_groupfile_module modules/mod_authz_groupfile.so
LoadModule authz_host_module modules/mod_authz_host.so
LoadModule authz_user_module modules/mod_authz_user.so
LoadModule autoindex_module modules/mod_autoindex.so
LoadModule cgi_module modules/mod_cgi.so
LoadModule deflate_module modules/mod_deflate.so
LoadModule dir_module modules/mod_dir.so
LoadModule env_module modules/mod_env.so
LoadModule headers_module modules/mod_headers.so
LoadModule include_module modules/mod_include.so
LoadModule info_module modules/mod_info.so
LoadModule isapi_module modules/mod_isapi.so
LoadModule log_config_module modules/mod_log_config.so
LoadModule mime_module modules/mod_mime.so
LoadModule negotiation_module modules/mod_negotiation.so
LoadModule proxy_module modules/mod_proxy.so
LoadModule proxy_connect_module modules/mod_proxy_connect.so
LoadModule proxy_html_module modules/mod_proxy_html.so
LoadModule proxy_http_module modules/mod_proxy_http.so
LoadModule rewrite_module modules/mod_rewrite.so
LoadModule setenvif_module modules/mod_setenvif.so
LoadModule socache_shmcb_module modules/mod_socache_shmcb.so
LoadModule ssl_module modules/mod_ssl.so
LoadModule status_module modules/mod_status.so
LoadModule xml2enc_module modules/mod_xml2enc.so
LoadFile C:\Apache24\bin\libxml2.dll
LoadModule filter_module modules/mod_filter.so
<IfModule unixd_module>
User daemon
Group daemon
</IfModule>
ServerAdmin support@irgendwer.de
ServerName irgendeinserver
<Directory />
AllowOverride none
Require all denied
</Directory>
DocumentRoot "${SRVROOT}/htdocs"
#####
#ProxyRequests off
ProxyPreserveHost Off
ProxyHTMLInterp On
ProxyPass / http://localhost/
ProxyPassReverse / http://localhost/
ProxyHTMLURLMap http://localhost /
ProxyBadHeader Ignore
<location />
AuthType Basic
AuthName "Bitte Passwort eingeben"
AuthUserFile c:\tmp\pwd
AuthBasicProvider file
require valid-user
ProxyPassReverse /
SetOutputFilter proxy-html
ProxyHTMLURLMap http://localhost/ /
RequestHeader unset Accept-Encoding
</location>
#####
<Directory "${SRVROOT}/htdocs">
Options Indexes FollowSymLinks
AllowOverride None
Require all granted
</Directory>
<IfModule dir_module>
DirectoryIndex index.html
</IfModule>
<Files ".ht*">
Require all denied
</Files>
ErrorLog "logs/error.log"
LogLevel info
<IfModule log_config_module>
LogFormat "%h %l %u %t \"%r\" %>s %b \"%{Referer}i\" \"%{User-Agent}i\"" combined
LogFormat "%h %l %u %t \"%r\" %>s %b" common
<IfModule logio_module>
LogFormat "%h %l %u %t \"%r\" %>s %b \"%{Referer}i\" \"%{User-Agent}i\" %I %O" combinedio
</IfModule>
CustomLog "logs/access.log" common
</IfModule>
<IfModule alias_module>
ScriptAlias /cgi-bin/ "${SRVROOT}/cgi-bin/"
</IfModule>
<IfModule cgid_module>
</IfModule>
<Directory "${SRVROOT}/cgi-bin">
AllowOverride None
Options None
Require all granted
</Directory>
<IfModule mime_module>
TypesConfig conf/mime.types
AddType application/x-compress .Z
AddType application/x-gzip .gz .tgz
</IfModule>
<IfModule proxy_html_module>
Include conf/extra/httpd-proxy-html.conf
</IfModule>
<IfModule deflate_module>
Include conf/extra/httpd-deflate.conf
</IfModule>
<IfModule ssl_module>
#Include conf/extra/httpd-ssl.conf
Include conf/extra/httpd-ahssl.conf
SSLRandomSeed startup builtin
SSLRandomSeed connect builtin
</IfModule>
<IfModule http2_module>
ProtocolsHonorOrder On
Protocols h2 h2c http/1.1
</IfModule>
hat jemand noch eine Idee was ich versuche könnte bzw. vielleicht sieht jemand wo das Problem liegen könnte.
Danke euch!
LG J.D.
Bitte markiere auch die Kommentare, die zur Lösung des Beitrags beigetragen haben
Content-ID: 292643
Url: https://administrator.de/contentid/292643
Ausgedruckt am: 24.11.2024 um 05:11 Uhr
7 Kommentare
Neuester Kommentar
Moin,
gibt es Anhaltspunkte in den Logfiles von Apache?
Hast du die Möglichkeit die Konfiguration, welche doch etwas länger ist, auf ein Minium (Authentifizierung und ProxyPass) zu reduzieren um sicherzustellen, dass es darn liegt nicht?!
WAs für ein Webserver läuft denn auf dem Windows-System?
Ansonsten würde über Alternativen wie Squid oder Ngnix nachdenken.
Gruß,
Dani
gibt es Anhaltspunkte in den Logfiles von Apache?
Hast du die Möglichkeit die Konfiguration, welche doch etwas länger ist, auf ein Minium (Authentifizierung und ProxyPass) zu reduzieren um sicherzustellen, dass es darn liegt nicht?!
WAs für ein Webserver läuft denn auf dem Windows-System?
Ansonsten würde über Alternativen wie Squid oder Ngnix nachdenken.
Gruß,
Dani
Läuft der Apache auf einem Windows oder Linux System? Wenn Linux, warum "C:/nginx/conf/proxy.conf;" , müsste es nicht "/etc/nginx/conf/proxy.conf;" heißen?
Wenn windows, dann ist das ja egal (Wenn die Pfade auch so stimmen)
Wenn windows, dann ist das ja egal (Wenn die Pfade auch so stimmen)