zoukankan      html  css  js  c++  java
  • 切换自己为www-data用户

    突发奇想的想把切换为www-data用户去看看会怎么样.然后做了一个尝试

    由于我安装了lamp环境,所以有www-data用户,用它可以来执行web php ,以及安全放心的跑cli(避免权限过高执行危险命令)

    所以先看看自己这个www-data用户情况

    查看组

    cat /etc/group|grep www
    www-data:x:33:

    查看用户

    sudo cat /etc/shadow | grep www
    www-data:*:18667:0:99999:7:::

    好了,说明用户和组都存在.

    然后想想怎么切换过去,直接su一下发现我没有密码啊,那得修改密码,先把自己切换为root,然后就可以 sudo passwd 这个用户,重置密码后切会正常用户

    sudo su
    # sudo passwd www-data
    New password: 
    Retype new password: 
    passwd: password updated successfully
    # su my_account(我正常用的帐号)
    $ whomai

    之后就尝试切换一下

    su www-data
    Password: 
    This account is currently not available.

    看来我进不去哦,这个帐号被限制了,看看是什么情况,

    cat /etc/passwd|grep www
    www-data:x:33:33:www-data:/var/www:/usr/sbin/nologin

    好吧,不让我登录,那我改改

    改成这样

    cat /etc/passwd|grep www
    www-data:x:33:33:www-data:/var/www:/bin/bash

    然后再尝试

    sudo vi /etc/passwd
    $ su www-data
    Password: 
    $ whoami
    www-data

    这回成功了,可以了

    想切回来就 su 你的帐号 就行了

    # su my_account(我正常用的帐号)
    $ whomai

    我觉得应该是将需要让php执行的代码改为www-data用户组,然后那些用hyperf 或者swoole或者你自己写的php cli命令行执行的脚本都改为这个www-data:www-data组,然后切换为这个www-data帐号去执行 php script.php  这样是比较安全的.

    如果没有什么读写权限,你就把这个脚本文件的所有者改为www-data,这样就有权限了,比如读写缓存 创建文件等等.

  • 相关阅读:
    Redis的数据结构
    Centos6.5安装Redis3.0备忘记录
    Centos6.5安装MySQL5.6备忘记录
    QueryRunner使用之可变条件的处理
    List集合遍历整理
    js获取select标签选中的值
    linuxC/C++面试问题总结整理
    live555学习(一)通读Makefile编译live555
    入园博客开篇
    springboot 整合 MongoDB 实现登录注册,html 页面获取后台参数的方法
  • 原文地址:https://www.cnblogs.com/lizhaoyao/p/14989940.html
Copyright © 2011-2022 走看看