Re: apache-auth mit ip-adressen in datenbank

Top Page
Attachments:
Message as email
+ (text/plain)
Delete this message
Reply to this message
Author: Dirk Melchers
Date:  
To: Sven Velt, list
Subject: Re: apache-auth mit ip-adressen in datenbank
Moin,

eine Idee: eine RewriteMap kannst du auch per "dbd" und "select" füllen und dann eine RewriteRule bauen, die bei falscher IP ein "[F]" auslöst...

https://httpd.apache.org/docs/2.4/mod/mod_rewrite.html#rewritemap
https://httpd.apache.org/docs/2.4/rewrite/rewritemap.html#dbd
https://httpd.apache.org/docs/2.4/rewrite/flags.html#flag_f

Tschüss,

Dirk





-----Ursprüngliche Nachricht-----
Von: Sven Velt <wampire@??? <mailto:wampire@???>>
Organisation: LUSC - Linux User Schwabach e. V.
Datum: Freitag, 10. Februar 2023 um 09:04
An: <list@??? <mailto:list@???>>
Betreff: Re: apache-auth mit ip-adressen in datenbank


Moin!


On 09.02.23 18:48, Norman Zimmer wrote:
> hat jemand einen Plan, wie ich in der Apache-Auth nach IP-Adressen
> überprüfen die in einer Datenbank?
> Auch ein paar Suchbegriffe für Google würden mir im Moment
> weiterhelfen. Im Moment bin ich im Status "Jugend Forscht" ;)

Dann geh' mal über in "Jugend programmiert" 😜


> Freilich kann ich die IP-Adressen mit "require ip 8.8.8.8" in die Config
> schreiben, das wäre aber statisch in einem Textfile.
> Ich hätte das gerne in einer Datenbank.
>
> Für Gruppen gibt es das schon:
> Require dbd-group allowedteam
> AuthzDBDQuery "SELECT group FROM authz WHERE user = %s"
>
> Für IP-Adressen könnte ich das so ungefähr umbauen.
> Require dbd-group allowedip
> AuthzDBDQuery "SELECT 'allowedip' FROM authz WHERE ip-address = %s"
>
> Aber wie wird der Übergabewert von "%s" definiert?



Was als "%s" übergeben wird ist ja durch die Direktiven vorgegeben, eben
mal der User-, mal der Gruppen-Name. Da kannst Du nix einstellen oder
anpassen.


Mir ist kein (internes oder externes) Auth-Module bekannt, welches die
IP gegen eine DB checken würde. Sprich: Send Pull-Requests 😬


Effektiv könnte man das vermutlich einigermaßen fix in Lua
zusammenstöpseln, siehe auch
https://httpd.apache.org/docs/2.4/mod/mod_lua.html#luaauthzprovider <https://httpd.apache.org/docs/2.4/mod/mod_lua.html#luaauthzprovider>


Weiterhin gibt's unter
https://httpd.apache.org/docs/2.4/mod/mod_lua.html#writingauthzproviders <https://httpd.apache.org/docs/2.4/mod/mod_lua.html#writingauthzproviders>
das Beispiel, wie Du an die IP kommst und so ein Authz-Provider in Lua
aussieht.


Last but not least: Zugriff per SQL →
https://httpd.apache.org/docs/2.4/mod/mod_lua.html#databases <https://httpd.apache.org/docs/2.4/mod/mod_lua.html#databases>


Aktuell hab ich aber keinen Kopf das mal hinzudengeln, sorry!


Bye


Sven


-- 
Leukämie → http://de.wikipedia.org/wiki/Leuk%C3%A4mie <http://de.wikipedia.org/wiki/Leuk%C3%A4mie>
Heilung → https://de.wikipedia.org/wiki/Stammzelltransplantation <https://de.wikipedia.org/wiki/Stammzelltransplantation>
Typisierung → https://akb.de/registrierung/ <https://akb.de/registrierung/> & https://zkrd.de/adressen/ <https://zkrd.de/adressen/>
Fragen? → sven@??? <mailto:sven@???>
-- 
Mailing-Liste der Linux User Schwabach (LUSC) e.V.
Vor und beim Posten bitte
=> http://lusc.de/List-Netiquette <http://lusc.de/List-Netiquette> <= und
=> http://lusc.de/List-Howto <= beachten <http://lusc.de/List-Howto&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&lt;=&nbsp;&nbsp;&nbsp;&nbsp;beachten>. Danke!







--
Mailing-Liste der Linux User Schwabach (LUSC) e.V.
Vor und beim Posten bitte
?http://lusc.de/List-Netiquette < und
?http://lusc.de/List-Howto < beachten. Danke!