在有人连接到 FTP 后运行脚本

在有人连接到 FTP 后运行脚本

我想每次有人在 Linux 上打开 FTP 会话时运行一个 bash 脚本。理想情况下,该解决方案应该与任何 FTP 服务器兼容。也许有一种方法可以检测某个端口何时接受凭据。有什么想法吗?

答案1

您可以编写一个脚本来解析 ftp 守护进程(例如 vsftpd 和 proftpd)的日志文件,并在找到符合您要求的行时执行某些操作。但是,每个守护进程都会有所不同,因为它们都有自己的日志样式。除此之外,还会有延迟,因为您可能需要轮询文件以查看其是否已更改。

可能更便携的解决方案和更好的响应时间是制作一个 PAM 模块(尽管工作量更大)许多守护进程都内置了 PAM 支持。因此,当有人登录 ssh 时,它将查询 PAM,并且 PAM 配置将选择用于登录的 LDAP 或 UNIX 文件。然后它有类似 cracklib 的密码模块来检查它是否有效。

简而言之,一旦你创建了 pam 模块,你可以将此行附加到特定服务的 pam 配置中。会话需要 /lib/security/pam_yourmodule.so

http://www.linux.com/archive/feature/113567快速了解 PAM。

相关内容