0

我想在我的 RHEL6 服务器上有一个数据库用户。由于 DB 用户只是 DB 用户,我不希望该用户能够登录到 shell。我知道我可以将用户定义为 nologin,但这样用户也无法更改他/她的密码。

那么如何防止用户登录,同时允许他/她更改密码?

4

2 回答 2

1

使用IPA进行集中用户管理。它允许用户即使无法登录也可以更改密码。

于 2013-11-04T11:00:22.887 回答
0

我想出了一个快速而肮脏的方法来做到这一点。首先,用户应该有权登录。然后,运行以下命令:

$ sudo useradd -m -d /home/username -s /bin/bash -c "login is forbidden for this user" username -N -g users
$ chown root:users /home/username
$ chmod 555 /home/username  
$ echo "trap '' 2" >> /home/username/.bash_profile
$ echo "passwd" >> /home/username/.bash_profile
$ echo "logout" >> /home/username/.bash_profile
$ passwd username

现在用户“用户名”可以登录以更改密码。然后在更改密码后立即注销。除了更改他/她的密码之外,他/她不能做任何事情。CTRL+C 也被阻止。

于 2013-11-04T17:39:52.287 回答