小编boo*_*dev的帖子

如何为 WWW 文件夹设置 linux 权限?

更新摘要

/var/www 目录归root:root其所有,这意味着没有人可以使用它并且完全没有用。既然我们都想要一个实际工作的 Web 服务器(并且没有人应该以“root”身份登录),那么我们需要解决这个问题。

只有两个实体需要访问。

  1. PHP/Perl/Ruby/Python都需要访问文件夹和文件,因为它们创建了许多文件夹和文件(即/uploads/)。这些脚本语言应该在 nginx 或 apache 下运行(或者甚至是像 FastCGI for PHP 这样的其他东西)。

  2. 开发商

他们如何获得访问权限?我知道有人在某个地方以前做过这件事。然而,有数十亿个网站,您会认为会有更多关于此主题的信息。


我知道 777 是所有者/组/其他的完全读/写/执行权限。因此,这似乎不需要正确,因为它为随机用户提供了完全权限。

需要使用哪些权限,/var/www以便:

  1. 像 git 或 svn 这样的源代码控制
  2. 像“网站”这样的组中的用户(甚至添加到“www-data”
  3. 像 apache 或 lighthttpd 这样的服务器
  4. 和 PHP/Perl/Ruby

所有人都可以在那里读取、创建和运行文件(和目录)吗?

如果我是对的,Ruby 和 PHP 脚本不会直接“执行”-而是传递给解释器。所以不需要对/var/www...中的文件执行权限?因此,似乎正确的许可chmod -R 1660将使

  1. 这四个实体可共享的所有文件
  2. 所有文件都不能被错误地执行
  3. 完全阻止目录中的其他人
  4. 将所有未来文件的权限模式设置为“粘性”

这样对吗?

更新 1:我刚刚意识到文件和目录可能需要不同的权限 - 我在上面谈论文件,所以我不确定目录权限需要是什么。

更新 2:文件夹结构/var/www发生了巨大变化,因为上述四个实体之一总是添加(有时删除)多个级别的文件夹和子文件夹。他们还创建和删除其他 3 个实体可能需要读/写访问权限的文件。因此,权限需要对文件和目录都做上述四件事。由于它们都不需要执行权限(请参阅上面有关 ruby​​/php 的问题),我认为rw-rw-r-- …

linux permissions chmod

72
推荐指数
4
解决办法
14万
查看次数

如何使用临时存储在 Amazon EC2 上创建交换分区?

这是输出df -k

Filesystem           1K-blocks      Used Available Use% Mounted on
/dev/xvda1            10317860   7059008   2734732  73% /
none                    847584         0    847584   0% /dev/shm
/dev/xvdb            153899044    192068 145889352   1% /mnt/ephemeral
Run Code Online (Sandbox Code Playgroud)

我正在使用 Centos EBS 启动映像。

我已经阅读了有关此的各种问题,但他们告诉要安装新驱动器。但我认为该驱动器已经安装在/dev/xvdb. 我对么?

我可以用这个吗:

mkswap -f /dev/xvdb
#add in /etc/fstab
/dev/xvdb       swap    swap    defaults        0       0
swapon /dev/xvdb
Run Code Online (Sandbox Code Playgroud)

它会起作用吗?

linux partition centos swap amazon-ec2

9
推荐指数
1
解决办法
7386
查看次数

运行 sudo -H -u 的 ec2-user 密码

我必须运行这个命令来初始化gitosis

sudo -H -u git gitosis-init < /home/ec2-user/id_rsa.pub
Run Code Online (Sandbox Code Playgroud)

但这要求我输入 ec2-user 的密码:

$ sudo -H -u git gitosis-init < id_rsa.pub
[sudo] password for ec2-user: 
Run Code Online (Sandbox Code Playgroud)

我没有密码,因为我使用默认的 .pem 密钥文件登录。

我知道我可以以 git 用户身份登录并执行此操作,但是还有其他方法吗?

更新:

使用 Linux AMI 12.09(微实例),在区域 us-east-1(弗吉尼亚北部)

password sudo git amazon-ec2

3
推荐指数
1
解决办法
5718
查看次数

标签 统计

amazon-ec2 ×2

linux ×2

centos ×1

chmod ×1

git ×1

partition ×1

password ×1

permissions ×1

sudo ×1

swap ×1