在Unix中远程更改用户密码的最佳方法是什么?

时间:2020-03-06 14:54:59  来源:igfitidea点击:

在Unix中远程更改用户密码的最佳方法是什么?
这必须由用户在Web应用程序或者Windows应用程序中执行,而无需使用SSH或者用户与服务器之间的任何直接连接(不允许使用直接命令行)。

谢谢

Webmin似乎是一个很好的应用程序,但是我发现正确配置它非常困难。我的Unix用户无法登录Webmin或者Usermin。

我们知道Webmin和Usermin的其他替代方法吗?

谢谢

解决方案

使用Webmin(更具体地说是UserMin模块)。

Webmin提供了一个小型Web服务器,因此我们只需要稍微安装和配置它即可。我们将获得的不仅仅是更改密码,还可以删除用户不希望拥有的功能。

我们可以编写运行passwd的服务器端脚本,也可以使用允许运行Shell命令的任何语言来执行此操作。

@里奇·布拉德肖(Rich Bradshaw)

只要确保我们不引入安全性问题即可。解决方案应使用https加密(永远不要以明文形式发送密码)。应该保护它免受shell注入攻击(从输入中删除任何换行符,使其正确逃逸,等等)。更多细节取决于所选的实现。

过去,我是通过使用Expect编写的脚本来一次在多台服务器上更改密码的。它非常适合这项工作,但是我们将需要服务器通过SSH进行侦听。

编写后,该脚本将在本地工作站上执行并将连接到远程主机,执行我们编写的交互操作,然后我们应该会很熟练。一直以来,如果我们使用的是SSH,使用加密就已经可以信任了。只是不要将密码保存在脚本中:我们应该能够提示输入密码(即使通过命令行参数获取密码也被认为是不明智的做法。)

期望也是一种很棒的语言:很有趣!