我们目前有几个用户在通过SSH登录服务器时使用admin用户。他们都有自己的用户,但不幸的是他们偶尔会使用管理员。我们可以将其锁定,并采取措施确保用户永远不会被使用,但是我想看看是否有办法强制每个登录输入他们使用该用户的原因,然后才能使用只要用户使用admin用户,就可以登录并访问服务器。
通过这种方式,我们可以轻松地将访问日志文件与员工姓名进行比较,以及他们使用该用户的原因。
有什么想法吗?
答案 0 :(得分:0)
这是一个想法
#!/bin/bash
# if the user tries Ctrl+C to avoid this check
trap INT no_shell_for_you
no_shell_for_you() { exec /bin/false; }
read -p "Your username please: " username
if getent password "$username" >/dev/null 2>&1; then
echo "Welcome, $username"
# log $username somewhere
exec /bin/bash -l
else
no_shell_for_you
fi
/etc/shells
sudo chsh -s /full/path/to/admin_user/bin/get_real_user.sh admin_user
这是未经测试的。在第3步之前彻底测试 。