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

问题描述 投票:0回答:1

作为一个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挂载或文件浏览器(用我的用户id挂载,而不是root)新建的文件的属性,默认它们有rwxrwxr--(即0775)的权限。

有什么方法可以让我把文件上传到服务器上(更新现有的操作,创建新的操作)而不用担心Apache的权限?

linux apache ubuntu permissions centos
1个回答
0
投票

你必须设置 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
© www.soinside.com 2019 - 2024. All rights reserved.