Apache2: Verlinkung externer Grafiken unterbinden

Dieses Thema im Forum "Web- & File-Services" wurde erstellt von Just Matt, 07.01.2011.

  1. #1 Just Matt, 07.01.2011
    Just Matt

    Just Matt Eroberer

    Dabei seit:
    16.09.2007
    Beiträge:
    64
    Zustimmungen:
    0
    Ort:
    München
    Hallo zusammen,

    ich betreibe ein Board indem die Mitglieder gerne in ihren Beiträgen Bilder einbinden. Die Bilder werden i.d.R. bei Bild-Hoster hochgeladen und dann in meinem Board verlinkt.

    Da Urheberrechtsverletzungen ein sehr heißes Eisen sind, möchte ich diese Möglichkeit gerne unterbinden. Auf Board-Ebene steht mir diese Funktion leider nicht zur Verfügung. Daher würde ich das ganze gerne auf Apache-Ebene ausschließen.

    Auf Google finde ich tonnenweise Beiträge um Hotlinking von meiner Seite zu einer anderen Seite zu blocken. Bei mir soll's aber genau anders herum sein. Wenn ich <img> in den Beiträgen blocken würde, dann könnte keiner mehr die Smileys einbinden, die ich auf meinem Webspace abgelegt habe.

    Was muss denn in der httpd stehen, damit sowas funktioniert?

    Viele Grüße

    Matthias
     
  2. Anzeige

    Schau dir mal diese Kategorie an. Dort findest du bestimmt etwas.
    Registrieren bzw. einloggen, um diese und auch andere Anzeigen zu deaktivieren
  3. #2 HeadCrash, 07.01.2011
    HeadCrash

    HeadCrash Routinier

    Dabei seit:
    16.05.2009
    Beiträge:
    482
    Zustimmungen:
    1
    Ort:
    Bayern
    Abend,

    ich wüßte nicht, wie man das mit dem httpd unterbinden könnte, da alle mir bekannten Funktionen der URL-Manipulation (rewrite / redirect) sich nur mit Anfragen befassen die an deinen Server gestellt werden.

    mfg
    HeadCrash
     
  4. sinn3r

    sinn3r Law & Order
    Moderator

    Dabei seit:
    28.12.2006
    Beiträge:
    2.764
    Zustimmungen:
    0
    Ort:
    Wentorf
    Vielleicht kannst du dir ein Skript basteln, dass neue Posts bzw die Datenbank auf externe URLs in IMG-Tags prüft und diese gegen ein Placeholder o.Ä. ersetzt.
     
  5. #4 HeadCrash, 07.01.2011
    HeadCrash

    HeadCrash Routinier

    Dabei seit:
    16.05.2009
    Beiträge:
    482
    Zustimmungen:
    1
    Ort:
    Bayern
    Grade eben mal Tante Google mit "apache content filtering" als Suchbegriff bemüht, dabei unter anderem das hier gefunden Apache Content Filtering, denke das kann man entsprechend umbiegen.

    mfg
    HeadCrash
     
  6. #5 Just Matt, 07.01.2011
    Just Matt

    Just Matt Eroberer

    Dabei seit:
    16.09.2007
    Beiträge:
    64
    Zustimmungen:
    0
    Ort:
    München
    Also ich glaub mittlerweile auch, dass ich das auf Backend-Ebene lösen muss. Ich kann zwar die Datenbank-Einträge nach src="xyz" durchsuchen oder besser noch abfangen, aber das wird glaub ich ne ziemliche Übung. Ich habe relative und absolute Pfade. Sprich die Smileys in den Beiträgen, die ja bleiben sollen sind relativ und die etwaige Images die rausgefiltert werden sollen sind absolute. Na denn mal Prost Mahlzeit.

    Meine erste Überlegung war das ganze schon bei Eingabe über den Editor (TinyMCE) abzufangen, allerdings gehts dort nur über Javascript und da kenne ich mich noch weniger aus. Dann werde ich mir mal das Skript reinziehen und dort eine Funktion zwischensetzen müssen, die den Beitrag vor dem Speichern entsprechend ändert.

    oh hauerhauerha ...
     
  7. Anzeige

    Vielleicht findest du HIER Antworten.
    Registrieren bzw. einloggen, um diese und auch andere Anzeigen zu deaktivieren
  8. Debma

    Debma Debian user

    Dabei seit:
    29.04.2006
    Beiträge:
    29
    Zustimmungen:
    0
    nach src="http://*" absuchen, dann hast du alle absolute Pfade, am besten du bastelst das ganze in das Postscript rein, also jedes mal wenn jemand etwas postet wird der Text durchgescannt und src="http://*" durch einen link oder placeholder ersetzt.
     
  9. #7 HeadCrash, 08.01.2011
    HeadCrash

    HeadCrash Routinier

    Dabei seit:
    16.05.2009
    Beiträge:
    482
    Zustimmungen:
    1
    Ort:
    Bayern
    Externe Images mit mod_ext_filter ausfiltern

    Morgen,

    der Weg das schon bei der Eingabe abzufangen und am besten gleich eine entsprechende Meldung auszugeben, ist wahrscheinlich der sauberste.

    Habe mir jetzt trotzdem mal die Zeit genommen mit Apache mod_ext_filter zu experimentiern.

    Auf der Doku-Seite wird allerdings davor gewarnt, dass mod_ext_filter nicht unbeding Performant ist.

    Die auszuliefernde Seite:
    Code:
    atlantis:~# cat /srv/www/www.example.com/htdocs/apache-filter/index.html
    <html>
    <head>
    <title>"snowman"</TITLE>
    </head>
    
    <body>
    <img src="https://www.example.com/snowman/img01.jpg">
    </body>
    
    Quellcode aus dem Browser
    Code:
    <html>
    <head>
    <title>"snowman"</TITLE>
    </head>
    
    <body>
    <img src="noExtenalPicsPlease.jpg">
    </body>
    </html>
    
    Das große Voodoo der Apache Konfiguration :D

    Das Modul ext_filter laden
    Code:
    atlantis:~# a2enmod ext_filter
    Enabling module ext_filter.
    Run '/etc/init.d/apache2 restart' to activate new configuration!
    atlantis:~# /etc/init.d/apache2 restart
    Restarting web server: apache2 ... waiting .
    
    So und das ganze gangbar machen
    Code:
    ExtFilterDefine externalPics mode=output intype=text/html cmd="/bin/sed 's/<img src=\"http.*>/<img src=\"noExtenalPicsPlease.jpg\">/g'"
    
    <Directory /srv/www/www.example.com/htdocs/apache-filter>
      SetOutputFilter externalPics
    </Directory>
    
    Umgesetzt habe ich das jetzt mit einem Debian Lenny, aber da das ein reguläres Modul für den Apachen ist, sollte das Distributionsübergreifend funktionieren.

    mfg
    HeadCrash

    PS: alle Versuche den sed_Aufruf in eine eingen Datei auszugliedern scheiterten bei mir. Auszug aus dem Errorlog
    Code:
    [Sat Jan 08 11:47:16 2011] [error] [client a.b.c.d] (32)Broken pipe: apr_file_write(child input), len 0
    [Sat Jan 08 11:47:16 2011] [error] [client a.b.c.d] (32)Broken pipe: ef_unified_filter() failed
    
     
Thema:

Apache2: Verlinkung externer Grafiken unterbinden

Die Seite wird geladen...

Apache2: Verlinkung externer Grafiken unterbinden - Ähnliche Themen

  1. Apache2 mod_proxy

    Apache2 mod_proxy: Hallo Gemeinde, ich raff es einfach nicht. Ich habe mir den Apache2-Server als Proxy eingerichtet, damit ich mir hinter meiner Firewall über...
  2. Newbie:apache2/befehl htdigest Problem

    Newbie:apache2/befehl htdigest Problem: Hallo Leute, ich habe ein Problem mit diesem Befehl: htdigest -c /etc/apache2/passwords xxxxx xxxxx xxxx= usernamen sollen eingefügt werden...
  3. apache2: Virtualhost ohne subdomain

    apache2: Virtualhost ohne subdomain: Hi, ich möchte bei apache einen virtualhost für fqdn.de/testname einrichten. Folgendes habe ich (unter Anderem) in der entsprechenden Datei im...
  4. Problem mit Apache2 + MySQL Server

    Problem mit Apache2 + MySQL Server: Guten Mittag allen zusammen, ich möchte nun in ein Forum nachfragen bezüglich meines Problemes da ich leider derzeit einen Freund (der mir bisher...
  5. apache2 und ProxyPassReverse

    apache2 und ProxyPassReverse: Hey Leute, also irgendwas ist wieder im Busch :) vhost ausschnitt: ServerName fu.mydomain.com ProxyPass / http://localhost:7070/...