logging - Wireguard:如何记录网络活动?
问题描述
如何在wireguard中启用网络活动记录?
我搜索了查看服务器上日志的方法,但在/var/log
.
由于它作为 systemd 服务运行,因此我可以看到一些最少的信息
sudo systemctl status wg-quick@wg0
但这提供的信息很少。
也试过:
journalctl -u wg-quick@wg0
但这并没有比上一个命令显示更多。
理想情况下,我希望能够看到对等连接和(可选)正在发出的请求。
到目前为止,我发现的唯一有用的诊断命令是sudo wg show wg0
(或只是sudo wg
),但我希望有一种方法可以提高详细程度并使其实时显示。
更新:
可以通过使用第三方网络工具(例如tcpdump | grep 10.66.66
(假设隧道设置在10.66.66.x
)和nethogs
解决方案
从内核 5.6 开始,您可以像这样使用动态调试功能:
# modprobe wireguard
# echo module wireguard +p > /sys/kernel/debug/dynamic_debug/control
然后,您可以使用dmesg
或journalctl
使用dmesg -wH
(-w
跟随,-H
人类可读)或journalctl -kf
.
您的内核应该使用CONFIG_DYNAMIC_DEBUG
标志编译,您可以通过查看/boot/config-$(uname -r)
或/proc/config.gz
或/boot/config
(取自[此处])之类的文件进行检查(https://superuser.com/questions/287371/obtain-kernel-config-from-currently-running- linux系统)
基于这个答案
推荐阅读
- html - 敲除在点击文本时切换/展开文本
- android - 如何从 Firebase 数据库中填充 ListView 中的多个 TextView?
- javascript - 未捕获的 ReferenceError:showCurrentPage 未在 HTMLButtonElement.onclick 中定义
- sharepoint - 适用于移动应用程序的 SharePoint Online
- ios - 在先前已拒绝状态且上诉仍处于打开状态时提交新的应用程序版本
- javascript - 数据绑定 v-if 动态条件
- geometry - 具有可变边框的 GLSL 圆角矩形
- python - 尝试在另一个内部运行函数时接收“int”对象不是可下标的错误
- sql - 查询不仅基于日期时间字段中的日期返回所有记录
- jwplayer - Jwplayer 中基于令牌的身份验证