如何在solaris11中限制特定OS用户的ssh并发会话数?

时间:2019-06-14 04:02:08

标签: ssh solaris sparc

审核合规性要求我们将OS用户的ssh会话的最大数目限制为我们的solaris11服务器最多1个会话。我们的目标是类似于Windows服务器,其中OS Windows帐户一次只能用于一个RDP会话,因此,如果另一位同事使用同一帐户登录到同一Windows服务器,则我当前的RDP会议将被切断。我想通过solaris,如果另一个同事使用相同的OS帐户登录,那么他应该无法登录,并且他的连接将被拒绝,直到我退出会话为止。

当我用Google搜索它时,看到提到了名为/etc/limits/etc/security/limits.conf的文件,但是我的solaris服务器中没有这些文件。

文件/etc/ssh/sshd_config中的参数MaxSessions似乎也无法满足我的需求。

因此,我看到了一个线程,发布问题的人员在其中创建了一段代码,并将其添加到OS用户主目录中的.profile文件中。我为一位测试OS用户做了同样的事情。请参见下面的代码。我将其插入文件的开头。

userlogins=`who | grep $LOGNAME | wc -l`

if [ "$userlogins" -eq 1 ]; then
    exit 1
else
    echo "You have reached the maximum number of ssh sessions for this user."
fi

我似乎无法使其正常运行,并且我感觉在登录过程中可能未使用.profile。

我们将非常感谢社区的任何投入。我想在此发表免责声明,因为我是一个初学者,确实看到了一个建议在其中使用PAM模块的线程,但是我对PAM不太了解,所以我在寻找一种比较简单的方法尽可能做到这一点。

0 个答案:

没有答案