关于PHP脚本修改Linux或Unix系统口令方法
来源:才华咖 本文已影响1.46W人
来源:才华咖 本文已影响1.46W人
PHP脚本修改Linux或Unix系统口令方法
PHP独特的语法混合了C、Java、Perl以及PHP自创的语法。它可以比CGI或者Perl更快速地执行动态网页。今天,小编为大家搜索整理了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保存和退出文件。
步骤3. 创建一个基于PHP的接口
现在你需要写一个php脚本。这里有一个php脚本实例。你可以根据你的需要来修改。至少你需要正确设置好的shell脚本位置。打开php脚本和找到shellscript一行:
$shellscript = “sudo /home/lighttpd/chpasswd”;修改shellscript指向到正确的位置。PHP的源代码从这里下载:
步骤4: 运行脚本
在你的web浏览器地址栏输入网地址 - 。你将会看到用户名和口令提示:
如果口令修改成功, 你会得到的确认提示:
由于一些原因, 如果口令修改失败, 你可以参考下面提示获得更多详细的错误信息:
步骤5: 安全
永远不要通过http协议直接运行上面的`脚本. 而是使用https协议。
把脚本放入到受口令保护的目录。
永远不要信任用户的输入。上面的php脚本只是一个例子。在现实的生产环境中, 你需要考虑采用更强大的用户输入确认。讨论PHP编程的安全超出了本文的范围。你可以参考一本好的PHP书籍或者使用你喜欢的搜索引擎搜索相关的网站。
在linux系统下使用命令更改IP地址的方法
Linux系统中hexdump的命令汇总
Linux认证系统管理:linux下搭建ftp
实用的Linux/Unix系统磁带管理命令
entOS 6.7 Linux系统的IP配置方法
PHP执行Linux系统命令函数的方法大纲
Linux系统如何修改IP、DNS和路由配置
Linux系统管理:linux修改键盘按键
Linux系统bunzip2命令如何使用
linux命令行修改IP的2个方法介绍
用PHP脚本在Linux系统上读取输入和对文件进行操作
PHP怎么执行Linux系统命令函数
基于ubuntu下nginx+php+mysql安装配置
Linux认证系统管理:linuxmail命令发送邮件失败
Ubuntu Linux系统下设置Static IP的方法
关于PHP脚本修改Linux或Unix系统口令方法
linux中php如何安装CURL
linux系统下sudo命令使用方法
Linux认证基础知识:linux操作系统目录结构
分享Linux操作系统提高PHP性能的工具APC
linux系统怎么添加计划任务执行php文件大纲
Linux系统下的uname命令
linux系统中快速查看进程pid的方法
Ubuntu Linux系统的分区方案示例
关于小学生作文修改的方法
在linux 操作系统中uniq命令的说明和使用
Linux系统使用命令行执行php文件传参的步骤详解
linux系统怎么添加计划任务执行php文件
linux下用phpize给PHP动态添加扩展
Linux系统中sleep的使用方法
2020监控系统维修合同样本
Linux认证系统管理:部署PHP项目应该注意的几点
风控相关系统及建设方法介绍
关于Linux查看系统版本的方法汇总
Linux/AIX系统实用监控命令
关于Linux系统命令中exit与exit的区别
Linux系统ftp程序常用命令
Linux系统下使用grep命令搜索多个单词的方法
Linux操作系统修改时间和修改时区的方法
linux系统下openmp多线程编程实例