Sziasztok!
Gyors segítség kellene, hogy milyen iptables paranccsal lehet:
a) egy helyi interface egy adott portjához hozzáférést minden IP számára megengedni,
b) egy helyi interface egy adott portjához hozzáférést egy IP kivételével az összes többi számára letiltani
c) milyen iptables paranccsal lehet a fenti b) szabályt törölni,
mégpedig úgy, hogy ne akadjon össze a susefirewall-al.
A porton olyan szolgáltatás érhető el, amit ha egyidejűleg több IP-ről is próbálnak használni, akkor összeakadnak úgy, hogy végül egyik sem tudja a szolgáltatást igénybe venni. Ezért szeretném azt megoldani, hogy ténylegesen egy időben csak egy IP használhassa. Ezt úgy biztosítanám, hogy a portot alapból kinyitnám az összes IP számára (a), majd amikor az első IP-ről csomag érkezik rá, akkor az összes többi IP számára letiltanám a hozzáférést (b). Ha viszont arról az IP-ről x ideig nem jön csomag, akkor ismét megnyitnám a többi IP számára is, törölve a korábban beillesztett tiltó szabályt (c). Gondolom nincs olyan progi, amivel pont ezt az automatikus működést meg lehetne oldani, úgyhogy most egy tcpdump logját figyelő bash szkriptben gondolkodom (perl jobb lenne, de nem értek hozzá).
Erősen tanakodom az x idő optimális hosszán is; minél rövidebb, annál jobb, de nem lehet túl rövid se. Itt alapvetően http kapcsolatok szabályozásáról van szó; nincs véletlenül valami http timeout, aminek a szokásos értéke fogódzót adna, mennyi inaktivitás után célszerű a portot elvenni?