amazon-web-services - EC2 用户权限

标签 amazon-web-services amazon-ec2 permissions

我刚刚设置了我的第一个 AWS EC2 服务器实例,但遇到了上传图片脚本的权限问题。
“var/www”(和所有子目录)所有者是“ec2-user”,但是 apache 服务器以“apache”身份运行。
因此,由 php 脚本(使用 mkdir)动态创建的所有目录都将 'apache' 作为所有者(它似乎没有写权限)
我当然可以将 apache 用户更改为“ec2user”,但我担心这可能存在安全风险。这样做的正确方法是什么?
谢谢你的帮助。

最佳答案

为 Apache Web 服务器设置文件权限

1- 使用以下命令将 www 组添加到您的 EC2 实例:

[ec2-user ~]$ sudo groupadd www

2- 将 ec2-user 用户添加到 www 组:
[ec2-user ~]$ sudo usermod -a -G www ec2-user

3- 要刷新您的权限并包含新的 www 组,请注销:
[ec2-user ~]$ exit

4- 重新登录并验证 www 组是否与组一起存在:
[ec2-user ~]$ groups
> ec2-user wheel www

5- 更改 /var/www 的组所有权目录及其内容到 www 组:
[ec2-user ~]$ sudo chown -R root:www /var/www

6-更改/var/www的目录权限及其子目录以添加组写入权限并在将来创建的子目录上设置组 ID:
[ec2-user ~]$ sudo chmod 2775 /var/www
[ec2-user ~]$ find /var/www -type d -exec sudo chmod 2775 {} +

7- 递归更改 /var/www 中文件的权限目录及其子目录添加组写权限:
[ec2-user ~]$ find /var/www -type f -exec sudo chmod 0664 {} +

关于amazon-web-services - EC2 用户权限,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27611608/

相关文章:

amazon-web-services - 单个 Docker 镜像从 VSTS 构建/发布定义推送到 AWS 弹性容器注册表 (ECR)

amazon-web-services - 使用 Amazon Route53 复制 DNS 服务器

Linux:我可以在哪里 secret 存储数据以实现限时演示?

linux - 如何获取运行目录中的文件夹列表并将它们分别分配给一个变量?

php - Amazon S3 客户使用 PHP SDK 提供加密

amazon-web-services - 如何将Hive表从Hadoop Datalake导入到AWS RDS?

amazon-web-services - AWS S3FS 如何

.net - 如何使用 .NET 计算 EC2 服务器上的 TIME_WAIT 连接数

amazon-ec2 - 重新启动 EC2 实例时会发生什么?

java - Android MANAGE_EXTERNAL_STORAGE 权限被 Google Playstore 拒绝用于社交网络应用