我有一台服务器,它不断接收来自不同 IP 范围的另外两台服务器的请求。我需要知道如何设置一个 cronjob,它每秒不断检查每台服务器建立的连接数,并不断将结果更新到 txt 文件中。
答案1
while true; do netstat -punta | grep ESTABLISHED | awk '{print $5}' | awk -F: '{print $1}' | sort -n | uniq -c | sort -n; sleep 1; done
但不能使用 cron。应该通过 systemd 或其他方式加载它。
你可能想要这样的东西:
iptables -A INPUT -m tcp -p tcp -m state --state NEW -j LOG --log-prefix "New Connection"
从那里您可以开始控制 contrack 正在发生的事情。 https://unix.stackexchange.com/questions/139285/limit-max-connections-per-ip-address-and-new-connections-per-second-with-iptable
真的不清楚你的实际的问题是,但如果你问这个而不是尝试做你想做的事,我们也许能够提供更多帮助。