use Filesys::DiskSpace;
...
my ($used, $avail) = (df "/")[2,3];
if ($avail < 100 && # less than 100k free?
$tcp->{dest_port} == 119 && # NNTP
($tcp->{flags} & SYN) && # SYN
!($tcp->{flags} & ACK) # !ACK
$msg->indev_name) # incoming
{
$ipq->set_verdict($msg->packet_id, NF_DROP);
syslog "crit", "Throttling inbound connections";
}
|