通过web ui更改unix密码
ws.webpasswd的Python项目详细描述
这个包为unixpasswd命令提供了一个web ui,例如 只有sftp用户帐户仍然可以更改其密码。
警告:密码通过popen以明文形式从cgi进程传递到 在sudo下运行的助手进程。所以也许不要在 对抗性环境,人们可能会监视您的进程列表或其他内容。
用法
设置Web服务器以运行CGI脚本。下面是一个apache示例 配置片段:
ScriptAlias /passwd /path/to/venv/bin/webpasswd-cgi
由于更改另一个用户的密码需要根访问权限,因此还需要 为webpasswd-changehelper设置无密码sudo执行。 添加这样的规则,例如在/etc/sudoers.d/webpasswd:
www-data ALL=NOPASSWD:/path/to/venv/bin/webpasswd-change
(www-data表示执行cgi脚本的web服务器作为用户运行。)
您可以将以下环境变量传递给cgi脚本:
WEBPASSWD_CHANGE: | |
---|---|
Path to ^{tt2}$ helper. If unset, assumes a virtualenv installation (so it’s located next to ^{tt6}$) | |
WEBPASSWD_STYLESHEET: | |
URL to a stylesheet to link to instead of using the built-in styles |
运行测试
您需要添加一个用户帐户webpasswd,并在 测试运行按指示重置其密码。
更改
2.0.1(2018-03-05)
- 内部处理PATH_INFO。
2.0.0(2018-03-04)
- 使用python pam重写,flask,python-3兼容,pip可安装。
1.0.0(2008-07-10)
- 第一个工作版本,使用pypam.so和webpy.org