如何检测特定的 ssh 登录是通过运行脚本进行的还是输入密码的用户?
我想检测基于脚本的登录。 “auth.log”没有给我这个信息。还有其他可用的日志机制吗?
答案1
不直接。
如果登录和第一个命令(以及下一个命令)之间有很短的时间间隔,您可以猜测某些会话是由机器人进行的,但是智能机器人也可以伪造人类的犹豫并执行带有拼写错误的命令。
通常为用户提供一种“合法”的方式来自动执行某些任务就足够了。如果您作为系统管理员,将为您的用户提供一些机器人的官方登录信息,提供执行脚本的简单方法,并对在自己的帐户下编写脚本的用户进行金钱惩罚......
在公司层面上它通常是有效的。它不会让您免受专业黑客的侵害,但可以减少业余黑客的数量。