【问题标题】:The best way to use tcpdump in schedule在 schedule 中使用 tcpdump 的最佳方式
【发布时间】:2019-03-01 03:55:17
【问题描述】:

我是 linux 的新用户,现在我的任务是在特定时间捕获数据包。

例如,我想抓包然后保存到pcap文件(每个文件限制50mb)。我可以使用这个命令:

tcpdump -C 50 -w mypackets.pcap

但我不知道如何在特定时间段内运行它。 例如,在每个周一到周五运行(期间为 2019/02/01 ~ 2019/02/28) 2019/02/28 之后,该进程将被杀死。

我已阅读 the doc ,但似乎没有控制此选项的参数

有什么好主意吗?

【问题讨论】:

    标签: ubuntu cron tcpdump


    【解决方案1】:

    如果您希望安排进程何时运行,那么您可能需要查看crontab

    例如,以下 cron 作业将导致 tcpdump 在每周一启动并在每周五终止:

    $ crontab -e ○ 0 0 * * mon tcpdump -C 50 -w mypackets.pcap 0 0 * * sat killall -s SIGINT tcpdump ESC:wq crontab:安装新的 crontab

    或者,如果您只想捕获整个月(例如三月),那么您可以改用以下内容:

    $ crontab -e ○ 0 0 1 月 * tcpdump -C 50 -w mypackets.pcap 0 0 1 四月 * killall -s SIGINT tcpdump ESC:wq crontab:安装新的 crontab

    当您不再需要 cron 作业时,您需要手动删除它们。请务必在您真正需要它们运行之前测试您的 cron 作业,这样您就知道它们会在您真正需要它们时按预期工作。

    您可能还想考虑使用dumpcap 而不是tcpdump,因为dumpcap 允许您使用-a duration:value 指定在指定秒数后停止捕获strong> 选项,因此您不一定需要显式停止它,因为它会在经过该时间后自行终止。

    【讨论】:

      猜你喜欢
      • 2017-04-21
      • 2012-09-07
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2020-03-25
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多