我已经设置了 ssh,因此我的用户只能访问 sftp 和端口转发,如何限制每个用户的并发登录数?
在我的sshd_config
文件中,我已UsePAM
设置为是,并且在/etc/security/limits.conf
文件中,我有:
username - maxlogins 1
我也尝试过:
username hard maxlogins 1
这些都不起作用,用户仍然可以多次登录。
答案1
令人惊讶的是,maxlogins 直接仅适用于 shell 登录,即由 sshd(安全 Shell)处理的登录。由于您对 SFTP/端口转发感兴趣,因此您必须使用其他东西。
您可以修改此相关问题中给出的脚本来检测 sftpserver 进程或 scponly。它还应该可以检测过多的端口转发。不幸的是,它不像简单的指令那样干净。
答案2
你使用pam_限制在您的 PAM 中是否存在这个?
在sshd 配置文件:
session required pam_limits.so
答案3
您可以尝试最大会话数_/etc/ssh/sshd_config_ 中的选项。
man sshd_config