Toon posts:

iptables time-matching probleem Debian

Pagina: 1
Acties:

Verwijderd

Topicstarter
Ik ben aan het proberen MSN, ICQ, etc.. verkeer te blokkeren. Enkel tijdens de middagpause 12u30 - 13u00 zou het verkeer toch toegelaten worden.

Ik heb na veel zoeken (en zeer weinig vinden) de time matching POM plugin gevonden.

Echter deze blijkt niet te werken op m'n Debian box.

Kernel: 2.4.18-1-686
Iptables: 1.2.6a-5 (stable)

De /lib/iptables/libipt_time.so is aanwezig en ik vermoed dat deze functioneel is. Op m'n fedora box geeft iptables hierop een library file not found error dus vermoed ik dat het standaard goed is op Debian.

En dan nu mijn falende commando (met enkele testwaarden):

# iptables -t nat -A POSTROUTING -m time --timestart 20:20 --timestop 20:40 --days Sun -s 10.0.0.0/255.255.255.0 -d messenger.hotmail.com -j DROP

iptables: No chain/target/match by that name

Het voorbeeld commando op http://netfilter.gnumonks...omlist/pom-base.html#time

# iptables -A INPUT -m time --timestart 8:00 --timestop 18:00 --days Mon,Tue,Wed,Thu,Fri

Geeft hetzelfde resultaat. Weet iemand waar het probleem ligt? Te oude kernel / iptables?

Ik wil liefst niet gaan werken met cron oid om dynamisch rules te gaan verwijderen / toevoegen, deze time matching lijkt mij de juistere oplossing.

  • Wilke
  • Registratie: December 2000
  • Laatst online: 17:23
Geen idee waar het aan ligt, wel een idee om dit 10x zo makkelijk (hoewel misschien iets minder mooi) op te lossen:

Schrijf 2 scriptjes, eentje die het verkeer blokkeert, een andere die het weer toelaat. Roep het script dat 't toelaat aan om 12:30 (via cron), en het script dat het blokkeert om 13:00 (ook via cron, uiteraard).

/edit: lezen!! Dat zeg je dus zelf ook al.

Waarom het niet werkt: ik zou nog eens flink rondspitten in de kernel configuratie, en dan het onderdeel 'netfilter configuratie'. Hier moet je ws. nog het een en ander aanvinken zodat de POSTROUTING chain bestaat. Welke optie dit precies is weet ik niet uit m'n hoofd, maar dat kun je vast wel uitvinden :)

[ Voor 46% gewijzigd door Wilke op 15-02-2004 23:28 ]


Verwijderd

Topicstarter
POSTROUTING is niet het probleem denk ik... laat ik die hele sectie mbt time-matching weg dan voert iptables het commando uit. En effectief een login met MSN is dan niet meer mogelijk.

Het probleem is die foutmelding... Hij klaagt over chain, target of match... de chain bestaat want er zijn andere rules die deze perfect kunnen gebruiken, de target drop bestaat ook, zelfde verhaal. Nu rest er nog die time match... De library blijkt aanwezig... en iptables commando geeft geen library fout zoals bij Fedora wel het geval is. Waar ligt het nu aan... beetje tasten in het duister op deze manier. Enige debugging opties die ik zou kunnen meegeven?

[ Voor 56% gewijzigd door Verwijderd op 15-02-2004 23:49 ]


  • imdos
  • Registratie: Maart 2000
  • Laatst online: 16:46

imdos

I use FreeNAS and Ubuntu

Is het niet een probleem dat je een oudere iptables versie gebruikt :?

Ik snap dat je alles stable wilt houden maar probeer voor de test eens iptables 1.2.9 met de patch-o-matic patches van netfilter.org

pvoutput. Waarom makkelijk doen, als het ook moeilijk kan! Every solution has a new problem


Verwijderd

Topicstarter
Heb net 1.2.9-4 geinstalleerd (SID backport van iptables en alle libs) en nog steeds die melding. |:(

  • MikeN
  • Registratie: April 2001
  • Laatst online: 20-02 17:03
http://www.iptables.org/p...m-base.html#pom-base-time

Die patch zit nog niet in de 2.4.x kernel, dus je zult echt zelf een kernel moeten compilen met de patch-o-matic patches. Dan moet het wel gaan lukken.

  • igmar
  • Registratie: April 2000
  • Laatst online: 31-01 23:50

igmar

ISO20022

Verwijderd schreef op 15 februari 2004 @ 23:00:
De /lib/iptables/libipt_time.so is aanwezig en ik vermoed dat deze functioneel is. Op m'n fedora box geeft iptables hierop een library file not found error dus vermoed ik dat het standaard goed is op Debian.
Dit is slechts de interface waar iptables tegen praat. Het bevat echter niet de onderliggende kernel netfiter code.
code:
1
# iptables -t nat  -A POSTROUTING  -m time --timestart 20:20 --timestop 20:40 --days Sun -s 10.0.0.0/255.255.255.0 -d messenger.hotmail.com -j DROP


iptables: No chain/target/match by that name
Je kernel kent die chain niet, waarschijnlijk te wijten aan het feit dat je een kernel patch mist, of een module niet geladen hebt.

Verwijderd

Topicstarter
Ik ben net begonnen aan een custom kernel compile... we zullen meteen weten of dat de oorzaak was.... iig thx om dit te verduidelijken, door het feit dat de debian packagers de POM libs mee compileren bij iptables was ik in de waan dat hetzelfde met de kernel patches gebeurde voor de stock debian kernels. Ook nergens in de man pages of README.debian files stond hier informatie over.

Verwijderd

Topicstarter
Kernel compile failde na het toevoegen van de patchen en het inschakelen van Time Matching (EXPERIMENTAL) in de menuconfig.

  • Wilke
  • Registratie: December 2000
  • Laatst online: 17:23
Mja, dan moet je uitzoeken hoe dat komt en proberen het te verhelpen..als je de foutmelding niet post gaat 't zeker niemand lukken om je te helpen he!

Kon je de patch wel 'clean' applyen (dus zonder problemen/foutmeldingen e.d.)?

Verwijderd

Topicstarter
Ik had ff geen tijd meer om het verder te onderzoeken. Sorry voor mijn onvolledige posting.

Het probleem is dat er in POM zodanig veel patches zitten dat ik begonnen was met ze allemaal te apply'en tot dat ik een afzonderlijke time match patch voorbij zag komen op het scherm.
Er zijn inderdaad wel een aantal van die patches die niet succesvol uitgevoerd werden, maar het lijkt precies of dat geen probleem was en ik kon verder gaan met het apply'en van andere patchen. De time matching patch zelf gaf geen errors.
Nu ja... ik zal het eens opnieuw moeten proberen (goed dat ik nu weet dat die time matching pas ergens op het einde van het lijstje staat). De kernel compile failde pas na 70 min compilen (Celly400), straks even opnieuw proberen op de Celly2Ghz met SCSI disks @ work. Door deze lange wachttijd werd het mij gisterennacht ff teveel, vandaar ook de onvolledige post deze namiddag.

Binnenkort meer info...

Verwijderd

Topicstarter
Het boeltje is eindelijk gecompileerd geraakt, ik heb deze keer enkel de time patch van het hele POM archief toegepast. Het laden van time matching rules lukt nu wel maar blijkbaar enkel met de INPUT en OUTPUT chain. Bij commando's waar ik mijn NAT table invoeg (POST- en PREROUTING) krijg ik "Invalid argument" als respons van iptables.

Is wat ik wens te bereiken wel met de INPUT en OUTPUT chains te doen? (ik begrijp mijn rules wel en kan op basis daarvan wel wat tweaken, vrij goed zelfs maar de volledige werking van iptables ben ik NOG niet meester :))

Het is dus de bedoeling dat NAT'ed clients 10.0.0.* achter de gateway 10.0.0.1 tussen de tijdstippen 9-12 en 13-17 geen pakketjes mogen versturen naar bepaalde hosts. Je kan maar 1 bereik ingeven voor match time dus zou ik dit in 2 rules opsplitsen per host.

Ik deed dit via de POSTROUTING chain van NAT (zie eerste post) is er dus een andere manier via INPUT of OUTPUT? Ik heb wat geprobeerd, maar zonder resultaat.

Wie heeft er een idee?
Pagina: 1