我想让 www 数据可供直接使用,并将另一个用户合并到其中

我想让 www 数据可供直接使用,并将另一个用户合并到其中

假设我创建了系统,我创建了一个用户名提斯托.我基本上有, 和提斯托作为我直接操作的用户。

然后当我安装 Apache 时,它​​添加了第三个用户 -www-数据

当我跑步时ps aux | egrep '(apache|httpd)'我得到:

root      3192  0.0  1.4 327668 30364 ?        Ss   Nov23   0:04 /usr/sbin/apache2 -k start
www-data 28806  0.0  2.1 335512 43696 ?        S    06:25   0:01 /usr/sbin/apache2 -k start
www-data 28808  0.0  1.8 335196 37412 ?        S    06:25   0:00 /usr/sbin/apache2 -k start
www-data 28809  0.0  2.0 337408 41280 ?        S    06:25   0:00 /usr/sbin/apache2 -k start
www-data 28811  0.0  2.3 333112 49148 ?        S    06:25   0:00 /usr/sbin/apache2 -k start
www-data 32351  0.2  2.3 341040 49028 ?        S    06:50   0:01 /usr/sbin/apache2 -k start
www-data 32480  0.0  0.5 328160 10844 ?        S    06:58   0:00 /usr/sbin/apache2 -k start
www-data 32481  0.0  0.5 328280 11128 ?        S    06:58   0:00 /usr/sbin/apache2 -k start
www-data 32482  0.2  1.8 335116 37428 ?        S    06:58   0:00 /usr/sbin/apache2 -k start
www-data 32483  0.0  1.7 334784 36040 ?        S    06:58   0:00 /usr/sbin/apache2 -k start
www-data 32484  0.0  0.4 327716  8812 ?        S    06:59   0:00 /usr/sbin/apache2 -k start
tiesto   32586  0.0  0.0  14512  1032 pts/0    S+   07:01   0:00 grep -E --color=auto (apache|httpd)

我的问题:

嗯,我的问题可以由以下两个问题组成:

  1. 为什么当我这样做时su www-data,我得到:

此帐户目前不可用。

  1. 我该如何合并提斯托www-数据?(例如目录 inode、cron 任务等)?我只想获取用户名以外的所有内容提斯托,并代入www-数据,然后删除提斯托... 我想www-数据成为我的工作用户,与我合作的用户sudo anything,而不是提斯托.我可以称之为合并 提斯托---> 进入www-数据

答案1

www-data是一个系统帐户,旨在用作 Apache HTTP Server 运行时的帐户。它是不是旨在用于交互式工作。

su www-data为何不起作用的问题的直接技术答案是,该帐户www-data被设置nologin为其登录 shell ( man nologin)。默认情况下这样做是为了阻止使用该帐户进行交互式工作。当然,sudo -u www-data bash如果您绝对必须这样做,您可以随时这样做;但我不明白为什么有必要这样做。

在从 Debian 派生的系统上,Apache 默认在用户 下运行www-data。要使其在另一个用户帐户下运行,您必须编辑文件/etc/apache2/envvars。查找export APACHE_RUN_USER=www-dataexport APACHE_RUN_GROUP=www-data并更改它们以满足您的要求。

根据具体设置,在您的帐户下运行 Web 服务器可能会或可能不会产生安全隐患。更好的方法可能是让 Apache 在其下运行www-data(以限制其权限),并将 Apache 所提供服务的目录的所有权更改为您的帐户。可以将 Apache 应具有写访问权限的目录设为由用户www-data和您的组拥有,同时设置 set-group-id 位并为该组授予写访问权限。

现在,如果你仍然坚持你想要你的交互的www-data最简单的方法是获取帐户www-data或组所拥有的所有文件的所有权www-data,删除帐户和组www-data,然后重命名您的帐户和主组。我不会www-data详细解释如何执行这个无用、复杂且容易出错的过程。

相关内容