Zusatz in VHost-Dateien

  • Wie kann man LiveConfig dazu bringen, dass in den Dateien im Verzeichnis /etc/apache2/sites-available überall ein kleiner Zusatz (rot markiert) eingefügt / ergänzt wird?


    Code
    ...
    DocumentRoot "/var/www/web1/htdocs/"
    <Directory "/var/www/web1/htdocs/">
    Options SymLinksIfOwnerMatch MultiViews
    AllowOverride AuthConfig FileInfo Indexes Limit Options=Indexes,MultiViews,SymLinksIfOwnerMatch
    Order allow,deny
    allow from all
    [COLOR='#FF0000']Deny from env=BlockCountry[/COLOR]
    </Directory>
    ...


    Wie man sieht, geht es hier um mod_geoip, welches global für alle Accounts aktiviert werden soll.
    Ein manuelles einfügen wäre hier sicher nicht die Lösung, testweise hat es tadellos funktioniert.
    Gibt es evlt. eine einfache Lösung?
    Vielen Dank!

  • /var/www/$vertrag/.httpd.conf mit gewünschtem Inhalt anlegen, eine der Seiten in LC neu speichern.


    Ansonsten muss vermutlich eine der LUA-Dateien gepatched werden. Ob das persistent bleibt, ist aber fraglich ;)


    Danke! Aber genau das wollte ich manuell bei über 2000 Accounts auf rund 30 Servern nicht tun. ;)


    Ich denke die "custom.lua" ist schon ein guter Gedanke, aber was käme da rein? Hat jemand einen Tipp / oder anders gefragt: ist es über diesen Weg überhaupt möglich?

  • Ist eventuell OT, aber eine Lösung, welche sich bei uns bestens bewährt:


    Wir nutzen zum Sperren ganzer Länder die CSF Firewall von Configserver. http://configserver.com/cp/csf.html
    Die Firewall kann man in Clustern betreiben und so zentral steuern. Die Verwaltung ist auch über salt oder ähnl. möglich.
    Bitte nicht als Werbung auffassen, sondern nur als einen anderen möglichen Lösungsweg. Die Firewall ist übrigens kostenlos!


    Beste Grüße


    eiclinde

  • Ich persönlich halte absolut gar nichts davon, Besucher auf Basis des Quell-Landes auszuschließen (das bringt uns dann nämlich auf die selbe Ebene wie China, Saudi-Arabien, Nordkorea etc...). Wenn es konkrete Angriffe gibt empfehle ich eine individuelle IP-Filterung (z.B. fail2ban auf eine zentrale Log-Datei einrichten). Spätestens mit IPv6 ist GeoIP derzeit ohnehin nur sehr begrenzt brauchbar. Und bei dem zunehmenden IPv4-Handel und -Partitionierung ist auch da die Gefahr von "false positives" steigend.


    Unabhängig davon kenne ich die CSF-Firewall nicht im Detail und kann daher auch nichts dazu sagen.
    Individuelle Änderungen an der Apache-Konfiguration können sonst direkt in apache.lua vorgenommen werden (wird aber bei jedem Update überschrieben), oder man biegt die betroffene Funktion per custom.lua auf eine eigene Funktion um.


    Viele Grüße


    -Klaus Keppler

  • kk: Könnte man für die custom.lua Variante vielleicht ein Beispiel in der Knowledgebase bereitstellen, wie man für einen gewissen Hostnamen eine Änderung mit in der Webserverkonfiguration mit aufnimmt und nicht durch einen globalen Include löst?


    Die Frage kommt ja hier im Forum relativ häufig auf und ich möchte nicht mit if() Abfragen in der "~/conf/nginx.conf" arbeiten (http://wiki.nginx.org/IfIsEvil). Leider steig ich bei dem LUA-Kram noch nicht ganz durch.

  • weltmeister:


    Sollte an sich mit @fx998's script möglich sein:


    1. An sich die Installationshinweise aus "Idee Beispiel für indivuduelle Anpassung für Apache mit custom.lua" befolgen.


    2. Eine "custom" Datei für den speziellen virtual Host anlegen (subdomain.hostname.tld mit dem eigentlichen Domainnamen ersetzen):


    Code
    $ vi /etc/apache2/sites-available/[B][subdomain.hostname.tld][/B].local


    Code
    <Directory "/var/www/1/htdocs/">
      Deny from env=BlockCountry
    </Directory>


    3. Liveconfig / lcclient neustarten.


    4. Virtual Host über das Webinterface neu aufbauen (irgendwas in der Domainkonfiguration ändern => Klick auf "speichern")


    (ungetestet und ohne Gewähr)

Jetzt mitmachen!

Sie haben noch kein Benutzerkonto auf unserer Seite? Registrieren Sie sich kostenlos und nehmen Sie an unserer Community teil!