gpt4 book ai didi

Linux:如何使用 Apache 用户进行 SSH 连接?

转载 作者:行者123 更新时间:2023-12-04 19:41:04 25 4
gpt4 key购买 nike

作为一名 Web 开发人员,我在从 SSH 客户端更新 PHP(和其他)文件时总是遇到问题,因为我是以用户身份登录的,或者只是 root 用户登录的。
在那次更新之后,我总是必须从终端“chown -R apache:apache *”手动运行以使文件可访问。

我尝试创建一个用户 ID 并将其添加到组 'apache' 并将 apache 用户添加到我的用户 ID 的组中。这仅适用于服务器文件系统上的现有文件,因为新创建的文件具有权限 rwxr--r-- 不允许我的用户写入,即使它位于“apache”组中。

我想为 Apache 用户登录(不需要 shell),所以我可以使用基于 SSH 的文件浏览器(如 Forklift)以 Apache 身份登录或使用 sshfs 以 Apache 用户身份挂载。

另一种方法是使 umask 我的用户 id 始终从 sshfs mount 或文件浏览器(使用我的用户 id 而不是 root 安装)设置新创建文件的属性,默认情况下它们具有权限 rwxrwxr--(即 0775)。

有没有办法可以将文件上传到服务器(更新现有的操作创建新的)而不必担心 Apache 的权限?

最佳答案

您必须设置 setgid
例如,执行以下步骤:

adduser hugo
addgroup apache
usermod -a -G apache hugo

mkdir /tmp/example
chown hugo:apache /tmp/example
chmod g+s /tmp/example

su hugo
cd /tmp/example
touch my_file
ls -l

关于Linux:如何使用 Apache 用户进行 SSH 连接?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/62298261/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com