在 Google Compute Engine SSH 控制台中执行 chmod 644 后被锁定

Locked out after chmod 644 in Google Compute Engine SSH console

我已经在 Google Compute Engine 上安装了 wordpress。我有 SFTP 工作(FileZilla 和 WinSCP),但只有只读访问权限。我想上传一个大的主题文件,所以我尝试使用 chmod 644 给所有者 WRITE 权限。我从控制台使用 SSH 连接并输入 sudo chmod 644 /,现在在访问网站域时获得 403 禁止访问,只读 SFTP 无法连接,SSH 连接器也无法工作!

我相信我应该对文件夹使用 chmod 755,但现在 'locked out'。

有什么想法吗?

/wordpress 文件夹的所有权似乎默认授予名为 www-data 的用户组。解决问题的方法是使用 SSH 命令行控制台将我自己添加到 www-data 用户组。

首先,我删除了 "locked out" 项目并使用 PuTTY 的 SSH 密钥设置了一个新的 Wordpress 项目,并确认我已经恢复了只读 SFTP 访问权限。

然后,我从 GCE 用户界面访问 SSH 命令行控制台(select 你的项目 > 计算 > 虚拟机实例 > SSH 按钮(在 "connect" 下)。 顺便说一句,SSH 按钮不会导致 Safari 中的控制台,但会导致 Chrome!

进入控制台后,我通过输入将自己添加到 www-data 组:

sudo adduser your-username www-data

your-username 是我的 Google 云平台帐户电子邮件地址的第一部分(例如,如果 johnsmith@abc.com,your-username 就是 johnsmith)。电子邮件地址第一部分中的点可能需要替换为下划线(例如 john.smith = john_smith)。

根据 advice I was following,然后我通过输入以下内容将 /var/www 文件夹的所有权授予 www-data 组:

sudo chown -R www-data:www-data /var/www

最后,我授予 www-data 组对 /var/www 文件夹的写入权限,方法是输入:

sudo chmod -R g+w /var/www 

输入这 3 个命令后,我关闭了 SSH 命令行控制台,断开了 SFTP (filezilla) 并再次重新连接,可以将文件添加到 /wordpress 和子文件夹。

如果有安全背景的人可以确认这没问题,那就太好了and/or添加一个更好的方法来做到这一点。