Кого Вы знающий?
nmap?
Чем Вы должен взять последний nmap источник, сравнить то, что является различием между окнами, и openbsd (выберите-O nmap), ищите это настройки через sysctl на bsd, чем значения по умолчанию изменения в/etc/sysctl.conf.
Вероятно, где-нибудь необходимо будет восстановить ядро.
Я не делаю сделал это сам.
Но как мое мнение, у Вас должно быть 7-8 ядер для linux/netbsd/windows nt-95-xp-vista и т.д.
Чем изменение на начальной загрузке/boot/currentkernel к/boot/random_one, и быть радо то, что при следующей начальной загрузке Ваша система будет, похоже полностью на другую ОС.
Наконец-то я нашел решение, которое искал. Iptables
имеет модуль rateest
, который делает именно это. Например:
# collects all ingress traffic to RATEEST target
iptables -A INPUT -j RATEEST --rateest-name RE1 --rateest-interval 500.0ms --rateest-ewmalog 1s
# creates a log entry(jumps to LOG target) if rate is greater than 10Mbps
iptables -A INPUT -m rateest --rateest RE1 --rateest-gt --rateest-bps 10Mbps -j LOG --log-prefix "Ingress bandwidth >10Mbps "
Вы можете использовать VNStat
с опцией -втором, затем сравнить с порогом и Напишите журнал, если превышено.
-tr time
Calculate how much traffic goes through the selected interface during the giventimeseconds. Thetimewill be 5 seconds if a number parameter isn't included.
netstat -i
только для начала. Посмотрите на заголовки для RX-OK и TX-OK. Установите это с CRON, и все это.
#!/bin/bash
# Mar 2015
# Get bytes transmitted and received on eth0 and log msg.
echo " "
bytein=`netstat -i | grep eth0 | awk '{print $4 }'`
byteout=`netstat -i | grep eth0 | awk '{print $8 }'`
total=$((${bytein} + ${byteout}))
# echo "IN=$bytein, OUT=$byteout, TOTAL=$total"
max=1000000
outfile=/var/log/messages
msg="Bandwidth has exceeded $max bytes"
if [ $total -gt $max ]; then
echo "$msg" >> $outfile
echo $msg
fi
Какая большая картина ОП? Я мог видеть, что делает это для разных пользователей, чтобы ограничить их пропускную способность, почему это для интерфейса ETH0?