欢迎来到山村网

php创建带有效期的linux账户

2019-03-09 08:13:11浏览:955 来源:山村网   
核心摘要:  所以只能想办法让 webserver 调用这个命令了,平时想要提高权限只有 su 和 sudo这两个命令,所以我就把思路放在这上面了,可是

  所以只能想办法让 webserver 调用这个命令了,平时想要提高权限只有 su 和 sudo 这两个命令,所以我就把思路放在这上面了,可是结果调用了这两个命令后也还是不行,在网上搜了搜知道可以修改 sudo 的配置来达到我想要的效果,好了不再废话了,下面进入正题.

  首先 确认是否安装了 sudo 命令

  然后修改 /etc/sudoers

  因为 /etc/sudoers 是只读文件所以要用 visudo 来修改

  在结尾加上一行

  用户名 ALL=NOPASSWD:/usr/sbin/useradd

  其上面的用户名改为你的执行 webserver 程序的用户名

  比如 apache 默认的用户名就是 apache

  然后再用下面的php代码就可以了(在主要的地方已经标上注释了)

  PHP代码:(请把<后面的空格去掉,否则无法正常使用)

  代码如下:

  header("content-Type: text/html; charset=utf-8");

  header("Cache-Control: no-cache, must-revalidate");

  header("Pragma: no-cache");

  echo '< pre>';

  $submit = $_GET['submit'];

  $username = $_GET['username'];

  $pass = $_GET['pass'];

  $password = crypt($pass); //用crypt将密码加密

  $edate = $_GET['edate'];

  $self = $_SERVER['PHP_SELF'];

  echo '< form methode="GET" action="" >';

  echo ' 用户名 < input type="text" name="username">< /input>';

  echo ' 密码 < input type="text" name="pass">< /input>';

  echo ' 有效期 < input type="text" name="edate">< /input>';

  echo ' < input type="submit" class="ssubmit" name="submit" value="submit">< /input>';

  echo '< /form>';

  If ($submit == "submit")

  {

  $expire_date = date("Y-m-d",time()+($edate*24*60*60));

  echo $username;//用户名

  echo '< br/>';

  echo $pass;//密码明文

  echo '< br/>';

  echo $edate;//有效期

  echo '< br/>';

  echo $expire_date;//截止日期

  echo '< br/>';

  system("/usr/bin/sudo /usr/sbin/useradd -e $expire_date -p $password $username");

  }

  echo '< /pre>';

  主要函数说明

  代码如下:

  $username 用户名

  $pass 密码明文

  $password 用crypt将密码加密

  $edate 有效期

  $expire_date 截止日期

(责任编辑:豆豆)
下一篇:

无线网络WPA/WPA2密码破解资料教程

上一篇:

魅族智能路由器(mini版)快速上网如何设置

  • 信息二维码

    手机看新闻

  • 分享到
打赏
免责声明
• 
本文仅代表作者个人观点,本站未对其内容进行核实,请读者仅做参考,如若文中涉及有违公德、触犯法律的内容,一经发现,立即删除,作者需自行承担相应责任。涉及到版权或其他问题,请及时联系我们 xfptx@outlook.com