通过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

欢迎加入QQ群-->: 979659372 Python中文网_新手群

推荐PyPI第三方库


热门话题
java Android同步不同页面上的按钮   java评测每个类收集的垃圾对象实例数   java(Spring MVC+Hibernate 4+Test 4)自动连线DAO返回NULL   java Android编辑文本和虚拟键盘   java Selenium与BrowserMobProxy   JAVAlang.NoClassDefFoundError:com/sun/jersey/spi/inject/Errors$关闭原因?   java为什么在我成功登录后仍然会出现“不正确的帐户或密码或用户类型”   安卓应用程序在重新启动java时崩溃。网UnknownHostException:无法解析主机   多线程在Java中同步共享静态对象的正确方法是什么?   未调用自定义注释的java类验证(约束类)   java如何将指定目录的存档文件放入所需位置?   java如何识别Selenium中的每个编辑文本字段,如果它们的Xpath都相同   使用gwtmockito/mockito的java简单单选按钮单元测试?