VCP Webservice Problem - Firewall Regel hinzufügen funktioniert nicht

  • Alle Regeln sind mit State New, Established, Related erstellt. Trotzdem tauchen auch jetzt noch, nach fast 48 Stunden immer wieder diese IP-Adressen auf dem Server auf. Und wie geschrieben, wenn ich testweise ein Regel für das Netz von meinem Provider erstelle, greift diese sofort nach Aktivierung, selbst wenn ich mich kurz vorher auf dem vServer angemeldet habe und die Verbindung demzufolge noch offen ist. Und ich kontrolliere auch immer mal wieder mit netstat, welche Verbindungen offen sind. Aktuell 18:30 z.B.:

    Code
    1. tcp 0 0 localhost.localdo:10011 localhost.localdo:44329 ESTABLISHED
    2. tcp 0 52 v2201110103146458.y:ssh p57ABDA38.dip.t-di:7662 ESTABLISHED
    3. tcp 0 0 v2201110103146458.y:www 199.15.234.159:50259 TIME_WAIT


    Das ist natürlich nicht die komplette Liste, nur der relevante Teil. Es sind also lediglich 2 Verbindungen von/nach außerhalb da. Eine ist meine SSH Verbindung zum Server und die andere von 199.15.234.159 auf den Webserver.
    Jetzt, 18:38 sieht das ganze so aus:

    Code
    1. tcp 0 0 v2201110103146458.y:www 199.15.234.60:57903 TIME_WAIT
    2. tcp 0 0 localhost.localdo:10011 localhost.localdo:44329 ESTABLISHED
    3. tcp 0 0 v2201110103146458.y:ssh p57ABDA38.dip.t-di:7662 ESTABLISHED
    4. tcp 0 0 v2201110103146458.y:www 95-25-190-29.broa:58849 TIME_WAIT
    5. tcp 0 0 v2201110103146458.y:www 95-25-190-29.broa:58856 TIME_WAIT


    Die WWW-Verbindung von 199.15.236.60 und meine SSH Verbindung sind nach wie vor vorhanden, aber jetzt sind noch 2 WWW Verbindungen von 95.25.190.29 hinzugekommen.

    Für dieses Netz habe ich bereits eine Regel (Nr 47) definiert: INPUT, Quell-IP: 95.24.0.0/14, Quell-Port: any, Protokoll any, Ziel-IP: 46.38.235.xx, Ziel Port: any, Zusatz State NEW,ESTABLISHED,RELATED, DROP. Dass heißt, der IP Bereich von 95.24.0.0 bis 95.27.255.255 müßte mit dieser Regel gesperrt sein und diese Verbindung hätte niemals zustande kommen dürfen, zumindest wenn ich es von innerhalb des vServers betrachte.

    Und ehe jemand fragt, ob es noch andere IP Adressen gibt unter denen der Server erreichbar ist, nein gibt es nicht. Ifconfig zeigt nur eth0 und lo als Schnittstellen. Und für eth0 sieht die Ausgabe so aus:

    Code
    1. eth0 Link encap:Ethernet HWaddr 00:26:b9:89:27:6d
    2. inet addr:46.38.235.xx Bcast:46.38.239.255 Mask:255.255.248.0
    3. UP BROADCAST RUNNING PROMISC MULTICAST MTU:1500 Metric:1
    4. RX packets:6479178223 errors:0 dropped:0 overruns:0 frame:0
    5. TX packets:9428141500 errors:0 dropped:0 overruns:0 carrier:0 collisions:0 txqueuelen:1000
    6. RX bytes:1869983070235 (1.7 TiB) TX bytes:5176936380702 (4.7 TiB)
    7. Interrupt:36 Memory:d6000000-d6012800



    Wenn ich es richtig verstanden habe, läuft die Firewall außerhalb des vServers und wie es da mit dem Verbindungsstatus aussieht, kann ich nicht kontrollieren.

    Ich sehe nur, dass die Regel nicht greift.

  • IPtables funktioniert auch ohne Angabe eines Protokolls, wenn ich das weglasse gilt die Regel für alle Protokolle.
    Bsp:

    Code
    1. $ iptables -A INPUT -s <IP-ADRESSE> -j DROP


    ergibt dann folgendes:

    Code
    1. $ iptables -L INPUT -n
    2. Chain INPUT (policy ACCEPT)
    3. target prot opt source destination
    4. DROP all -- <IP-ADRESSE> 0.0.0.0/0


    Außerdem funktioniert es ja, wenn ich eine Regel für das Netz von meinem Provider erstelle. Ich komme dann nicht mehr auf den Server.


    Und es gibt dann noch ein Problem, ich will den Server komplett unerreichbar machen, dass heißt ich müßte jede Regel 3 mal anlegen (tcp, udp und icmp). Ich habe jetzt schon 50 Regeln definiert, wenn ich das alles umstellen wollte auf die einzelnen Protokolle, bin ich bei 150 Regeln und damit oberhalb des Limits von 100 Regeln.


    Denn Server komplett unsichtbar machen hat auch seinen Grund, wenn ich ein böser Bube wäre und auf einen Server eindringen wollte, der plötzlich über tcp nicht mehr erreichbar ist, würde ich nachprüfen
    a: lebt der Server noch (ping, icmp) und wenn ja
    b: gibt es alternative Möglichkeiten, den Server doch noch mit meinem Müll zu befruchten, also einen detaillierten Portscan starten und dann dort nach Sicherheitslöchern fahnden oder versuchen von einer anderen Adresse aus den Server zu erreichen.


    Die bots die zur Zeit meinen Server attackieren scheinen eher von der dummen Sorte zu sein und versuchen nur auf den Webserver über port 80 zu kommen aber wer weiß, vielleicht schaut der Botnetzbetreiber ja auch mal Logs an, zumindest sehe ich in den Logs schon ein erstes Ausweichen auf andere Adressbereiche.


    Als admin sollte man ja immer vom worst case ausgehen und erst einmal alles verbieten und dann nur das erlauben, was benötigt wird. Leider ist das in der Praxis nicht immer umsetzbar, weil sonst manche Sachen einfach nicht mehr funktionieren. Ich kann den Server einfach nicht so dicht machen, wie ich gerne wollte, schon gar nicht wenn mir nur 100 Regeln zur Verfügung stehen.