博学而笃志 切问而近思 仁在其中
详情
使用PHP脚本修改Linux或Unix系统口令
作者:Aliot     发布时间:2017-07-02 14:06:20     评论:0     阅读:3

本文介绍如何使用PHP脚本修改Linux或Unix系统口令

需要的工具和安装:

你必须安装下面的工具和软件:

– 修改口令的Shell脚本

– Sudo 访问权

– Apache or Lighttpd web 服务器

– PHP服务端程序

步骤#1: 安装可以修改用户口令的shell脚本

该脚本可以实际用于修改Linux用户的口令(已在Linux和FreeBSD测试).

例子: shell脚本代码

#!/bin/sh
#
exec expect -f “$0″ ${1+”$@”}
set password [lindex $argv 1]
spawn passwd [lindex $argv 0]
sleep 1
expect “assword:”
send “$password ”
expect “assword:”
send “$password ”
expect eof

运行shell脚本(下载链接)

$ chpasswd username password

下载该脚本, 然后拷贝到你的web根目录或者web服务器的其它位置(用户可读):

$ cp chpasswd /var/www/

或者, 如果你使用Lighttpd web服务器:

$ cp chpasswd /home/lighttpd

步骤#2: 通过sudo以root身份执行命令

Apache或Lighttpd web服务器进入后台运行后会马上使用非root权限. 这样可以很好的防止口令修改, 就像passwd命令需要root权限才能修改其它用户帐号的口令.

通常, Apache 2使用www-data用户, Lighttpd使用lighttpd用户(皆为普通用户, 非root用户). 使用root用户登陆, 然后执行下面的命令:

# visudo

现在你的web服务器允许执行口令修改脚本(chpasswd). 如果你使用Apache web服务器, 执行下面的命令:

www-data ALL=NOPASSWD: /var/www/chpasswd

或者, 如果你使用Lighttpd web服务器, 执行下面的命令:

httpd ALL=NOPASSWD: /home/lighttpd/chpasswd

保存和退出文件.


相关文章
loading......
最新动态
所有评论

loading......

网站声明:
本站部分内容来自网络,如您发现本站内容
侵害到您的利益,请联系本站管理员处理。
联系站长
373515719@qq.com
关于本站:
编程参考手册