突发奇想的想把切换为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,这样就有权限了,比如读写缓存 创建文件等等.

切换自己为www-data用户的更多相关文章

  1. linux普通帐号可以临时切换到root(添加用户到sudoers中)

    一般,进入terminal之后,默认是普通账户能操作的功能,能访问的目录有限,需要临时切换到root账户 那么此时就需要配置sudoers文件,可以让普通用户通过sudo命令临时切换到root账户 首 ...

  2. linux 下切换Python版本(某用户,共存,替换)

    当你安装 Debian Linux 时,安装过程有可能同时为你提供多个可用的 Python 版本,因此系统中会存在多个 Python 的可执行二进制文件.你可以按照以下方法使用 ls 命令来查看你的系 ...

  3. mac os 下如何清除/切换svn eclipse插件的用户

    以mac os x为例(Unix/Linux类似), 1.打开命令行窗口,即用户的根目录(用户的home目录) $ ls -al ... drwxr-xr-x   6 linxyz  staff   ...

  4. CentOS6.9切换root用户su root输入正确密码后一直提示Incorrect password,如何解决?

    su是切换用户命令,su root时,输入正确的root命令,却提示Incorrect password,当前用户为普通用户,遇到此问题该如何解决呢? 如果设置了wheel组,使用su root命令是 ...

  5. linux系统切换用户

    无权限上传文件解决办法 1.当前登录的普通用户:user1/password1 2.切换到管理员(user2)用户: sudo su - user2 输入user2用户的密码:password2 或者 ...

  6. Linux基础命令---切换用户su

    su 临时切换身份到另外一个用户,使用su切换用户之后,不会改变当前的工作目录,但是会改变一些环境变量. 此命令的适用范围:RedHat.RHEL.Ubuntu.CentOS.SUSE.openSUS ...

  7. cpu与寄存器,内核态与用户态及如何切换

    cpu:相当于计算机的大脑负责运算和发送命令: 寄存器:寄存器是cpu当中的一个有限存储部件,cpu从内存调用数据时,寄存器会将从内存调用的数据进行更新在寄存器中以一个字或变量进行存储. 寄存器总共分 ...

  8. Linux普通到root用户切换-转

    1.Linux中的用户切换:su和su - 的区别 大部分Linux发行版的默认账户是普通用户,而更改系统文件或者执行某些命令,需要root身份才能进行,这就需要从当前用户切换到root用户,Linu ...

  9. 四十四.Linux基本防护 用户切换与提权 SSH访问控制 SELinux安全 、SSH访问控制 SELinux安全

     1.Linux基本防护措施 与用户相关的配置文件 /etc/passwd   /etc/shadow  /etc/group /etc/gshadow  /etc/login.defs /etc/s ...

  10. LINUX使用 su 命令临时切换用户身份

    1.su 的适用条件和威力 su命令就是切换用户的工具,怎么理解呢?比如我们以普通用户beinan登录的,但要添加用户任务,执行useradd ,beinan用户没有这个权限,而这个权限恰恰由root ...

随机推荐

  1. NumPy 使用

    NumPy 相当于 Python 中的 MATLAB import numpy as np # 被除数数组 dividends = np.array([10, 20, 30, 40, 50]) # 除 ...

  2. Go 匿名字段介绍

    在 Go 语言中,结构体(struct)是一种用于将多个不同类型的数据组合在一起的数据结构.你提到的语法: type RiderNode struct { service.SimpleService ...

  3. 微信小程序之无需服务端支持实现内容安全检查

    微信小程序之无需服务端支持实现内容安全检查 微信小程序审核未通过,原因如下: 为避免您的小程序被滥用,请你完善内容审核机制,如调用小程序内容安全API,或使用其他技术.人工审核手段,过滤色情.违法等有 ...

  4. Docker高级:Redis集群实战!4主4从缩容到3主3从,怎么处理?

    在上一篇,我们学会了redis集群的扩容.从3主3从扩容到4主4从. 那么,接着,活动过去了.流量没有那么大了.需要缩容了.从4主4从缩容到3主3从了.那么这个时候又该怎么处理呢? PS本系列:< ...

  5. [Udemy] AWS Certified Data Analytics Specialty - 3.Processing

    Lambda Lambda 经常起胶水的作用,就是粘合不同的service. 如下图例子 另外Requirement #1 也是一个例子,还有Requirement #3 除了Kinesis Data ...

  6. 通用能力及AI核心能力表现优异!合合信息智能文档处理系统(IDP)高评级通过中国信通院评估

    数字经济快速发展的背后,全球数据总量呈现出爆发式增长趋势.智能文档处理(IDP)技术能够高效地从多格式文档中捕捉.提取和处理数据,帮助机构和企业大幅提升文档处理效率,节约时间和人力成本.近期,合合信息 ...

  7. Google Maps Embed API & JavaScript API

    前言 很多年前写过一篇 Google Map 谷歌地图, 这篇算是翻新版本. Google Map Registration Google Maps Platform 是整个 Google Map 的 ...

  8. ASP.NET Core – Configuration & Options

    前言 之前就写过 Asp.net core 学习笔记 ( Configuration 配置 ) 只是有点乱, 这篇作为整理版. 项目中会有许许多多的 Config 要设定. 比较好的管理方式是把它们放 ...

  9. 深度DFS 和 广度BFS搜索算法学习

    目录 广度优先的动态图 深度优先的动态图 广度和深度的具体步骤 深度和广度的应用场景 图的两种遍历方式: 深度优先遍历(DFS--Depth First Search) 广度优先遍历(BFS--Bre ...

  10. `std::string_view`(c++17) 和 `std::stringstream` 使用区别·

    std::string_view 和 std::stringstream 都是 C++ 中处理字符串的工具,但它们的设计目标和使用场景非常不同.我们可以通过几方面进行对比. 1. 设计目的和核心功能 ...