SSH 客户端断开连接后运行脚本

问题描述 投票:0回答:1

我正在尝试研究如何在 SSH 客户端断开连接后在 FreeBSD 上执行脚本的可能解决方案。我找到了许多解决方案,但除了一个之外,所有解决方案实际上都处理不同的问题“即使客户端断开连接,如何保持客户端脚本运行”。我不想要这样。我确实想在用户断开连接后运行不同的脚本;特别是,我想计算所有文件的 SHA256 哈希值,比较与以前版本的差异并将其邮寄给管理员。

我发现似乎可以做我想要的事情的唯一解决方案是https://stackoverflow.com/a/57004045/6755416,但它相当粗略(例如,它引用的问题不再包含背景信息)并且我完全不确定它是否可以应用于我的用例(特别是,我的 sshd 禁用了 PAM 身份验证,我想保持它禁用)。

另一方面,我的用例不需要立即做出反应。我会很好,例如使用 cron 每 15 分钟运行一个脚本,以某种方式检测自上次检查以来 SSH 客户端会话是否已终止,如果是,则执行我需要的任何操作。此外,只有少数用户帐户需要执行脚本,并且这些帐户将手动配置;此外,用户会尝试合作(我更担心用户忘记执行清理,而不是处理恶意用户)。

请问我有什么选择?

ssh freebsd disconnect
1个回答
0
投票

如果您使用

bash
,您可以在用户文件的主目录中添加
.bash_logout
,该文件将在用户优雅地从系统注销时执行。对于
csh
/
tcsh
,文件为
.logout

© www.soinside.com 2019 - 2024. All rights reserved.