我们有一个运行Ubuntu 10.04的Linux机器。 它的主要function是一个Web服务器,并configuration(我认为)一个传统的LAMP堆栈。 开发人员可以访问一个通用目录“dev”,其中包含一个作为web根目录的子目录。 所有开发人员都有单独的SSH访问 当开发人员在“开发”目录树中创build文件,或从存储库中将文件拉入“开发”时,我们希望文件权限为rwxrwxr-x。 相反,新创build的文件的权限为rw-r-r–。 通过修改ACL并在“dev”上用粘性位等设置组和用户标识,我设法获得了具有rw-rw-r–权限的新创build的文件。 我假设问题是在/ etc / profile中使用全局值022设置的umaskconfiguration。 我不想在全球范围内更改umask,也不希望每个开发者允许更宽松的默认权限。 我看不到用ACL和umask实现我们想要的东西的方法,除非我缺less一些东西。 对于开发共享项目的Web开发人员来说,这确实是一个相当普遍的要求。 有一个首选或推荐的方法? 最初,我把gid设置为“dev”,如下所示。 chmod g+s dev ls -l drwxrwsr-x 8 755 admin 4096 Jan 19 13:24 dev “dev”上的默认ACL如下。 getfacl dev # file: dev # owner: 755 # group: admin # flags: -s- user::rwx group::rwx other::rx 我为“pipe理员”组(应用开发人员)应用ACL。 setfacl -Rm d:g:admin:rwX getfacl dev […]
如何在debian挤压中更改ssh和sftp的umask。 I have changed the umask from 022 to 002 in /etc/profile and /etc/login.defs and modified Subsystem sftp /usr/lib/openssh/sftp-server to Subsystem sftp /usr/lib/openssh/sftp-server -u 002 in /etc/ssh/sshd_config 当我通过一个shell连接时,一切似乎都正常,但是在通过上传文件时,我仍然得到了错误的权限。 你有什么想法我可以解决这个问题? 我pipe理解决这个问题,按照如何设置所有types的连接ssh的umask Added: # Setting UMASK for all ssh based connections (ssh, sftp, scp) session optional pam_umask.so umask=0027 in /etc/pam.d/sshd and /etc/pam.d/login I also reverted to Subsystem […]
这是一个testing机器,而不是生产。 我在用户的.bashrc中包含了以下内容: umask 000 当我去我的主目录中创build一个文件,使用vi test.txt,文件获得许可rw-rw-rw。 我也尝试手动设置umask: umask a=rwx 我做错了什么,因为我需要在文件和目录上相当于CHMOD 0777或0755? 再一次,这是一个testing的情况,所以目前安全是不重要的。 编辑:来想一想,这是不可能的? 由于用于文件的umask被减去666,所以最低的umask是000,因此,666的CHMOD是一个文件可以得到的最高? 没有办法使用umask给文件CHMOD 755或777?
在Ubuntu 14.04中设置一个新的Web服务器,并试图为PHP生成的文件争夺文件权限。 默认情况下, /var/www中的所有目录和文件都拥有/分组到www-admin。 目录权限是rwxrwsr-x ,文件权限是rw-rw-r– 。 然后,我们将有限数量的目录组设置为www-data – 这样PHP(通过Apache)就可以在这个位置写入日志和caching文件。 但是,我不能让PHP服从0002的umask,所以PHP生成的文件只能写入www-data用户。 这是一个问题,因为我们使用持续集成和其他一些清理过程。 到目前为止,我有: 在/etc/pam.d/common-session中将umask设置为0002 在/etc/pam.d/common-session-noninteractive中将umask设置为0002 在/etc/profile中将umask设置为0002 在/etc/apache2/envvars中将umask设置为0002 在/etc/login.defs中将umask设置为0002 在/etc/passwd使用sudo chfn -o "umask=002" daemon_username 而我仍然卡住。 我已经停止/启动服务,甚至重新启动电脑 – 没有喜悦。
我一直无法为www-data (apache的用户)设置一个umask。 我试图把umask 002 ,就像在我发现的很多其他例子中,在/etc/init.d/apache2脚本中,或者在/etc/apache2/envvars… 。 然后我重新启动我的Apache服务器。 举个例子,重启后,如果我这样做: sudo su – www-data touch file 该文件总是获得默认的rw-r -r–权限( umask 022 ),而我想要rw-rw-r–( umask 002 )。 在Ubuntu Hardy(8.04)中改变这一直是一个不可能完成的任务。 有人可以帮我吗? 谢谢
通过FTPlogin时,默认的umask是027。 我想将其更改为002,以便具有相同组的进程可以使用上传的文件。 man'ftpd'页面说pass -u 002到ftpd命令。 但我的问题是我无法findftpd从哪里开始。 所以我的问题是,如何在启动时将-u 002传递给ftpd? 我找不到/etc/init.d/脚本。 详细信息:红帽企业Linux服务器版本5.3(Linux 2.6.18-128.1.1.el5) RPM安装:ftp-0.17-35.el5(rpm -qa | grep ftp) 其中ftpd:/ usr / kerberos / sbin / ftpd
我有一个目录,可以读取和写入几个unix组。 这是通过使用ACL来实现的。 假设我是这样做的: mkdir /tmp/test setfacl -d -mg:group1:rwx /tmp/test 伟大的作品,整个组(和我添加的其他组)可以读/写这个目录。 但有一个例外:当有人使用mkdir -p创build子文件夹时,此目录是使用unix权限0755创build的,因为默认的umask是022.这会导致组中的其他用户无法再写入此问题子文件夹,因为ACL现在看起来像这样: group:group1:rwx #effective:rx 出于某种原因,使用“mkdir”(不带-p参数)时不会发生这种情况。 一种解决scheme是将umask设置为002,但这确实是一件坏事,因为这也会影响在受ACL控制的目录之外创build的文件和目录,并且这些文件在默认情况下不应该是组可写的。 所以我想知道是否有另一种可能性来解决这个问题。 完全禁用/忽略ACL控制的目录的旧的unix样式权限内容是完美的。 或者禁用这个“有效的ACL”的东西。 那可能吗? 还是有另一种方法来解决这样的程序,如“mkdir -p”造成的不可写目录的问题? 最后,我想要一个完全(和recursion)可读写的目录,根据我已经configuration的ACL,这应该永远不会改变(只有通过修改ACL本身)。 注意:重现问题: $ mkdir /tmp/test $ setfacl -d -mg:group1:rwx /tmp/test $ umask 0022 $ mkdir /tmp/test/aa $ mkdir -p /tmp/test/bb $ ls -log /tmp/test drwxrwxr-x+ 2 4096 Mar 9 23:38 aa drwxr-xr-x+ 2 […]
为什么是一个$ perms而不是$ mask,而不是$ perms和$ mask呢? 换句话说,为什么在那里没有一个; 为什么不是作为一个面具实施? 举个例子,666和700,给600?
在这些链接中发现的build议适用于我: 如何为所有types的连接设置ssh的umask http://ubuntuforums.org/showthread.php?t=1107974#5 简介:使用PAM注入umask,在/etc/pam.d/sshd中使用以下行 session optional pam_umask.so umask=0027 但是,这只适用于取消有关文件/目录的宽容性。 即我发现它的工作,但只是为了进一步限制umask。 例如,设置umask为0077的作品。 但是,越来越宽容,如允许默认的组写入访问,不起作用。 似乎有一些潜在的默认umask,我不能重写。 我也尝试在下列地方更换umask: /etc/init.d/ssh =>除非升级到OpenSSH 5.4,否则不会工作(在最新的OpenSSH中,有一个额外的指令来设置umask的内部sftp选项) /etc/init/ssh.conf =>没有工作 /etc/login.defs =>不起作用 /etc/pam.d/sshd =>不起作用 / etc / profile =>不起作用。 configuration文件不是由SFTP命中的,因为它不是交互式shell / etc / ssh / sshd_config =>不起作用 没有工作。 我怎样才能允许更多的OpenSSH Chrooted SFTP的掩蔽? 要求: 仅适用于configuration (即不打补丁,不升级发行版) 适用于Ubuntu 10.04LTS 适用于OpenSSH_5.3p1 Debian-3ubuntu4,OpenSSL 0.9.8k 2009年3月25日
我在Ubuntu 10_04 LTS上以用户www-data身份运行apache。 我已经用'umask 002'设置了/ etc / apache2 / envvar,这样守护进程创build的任何新文件/目录都会启用组写入权限。 有时,我需要从命令行创build文件/目录,所以我做了“sudo -u www-data”命令,但是我不知道如何让这些文件在创build时启用组写入权限。 在/ etc / passwd中,Ubuntu的主目录被列为'/ var / www'。 所以,根据Ubuntu的文档( https://help.ubuntu.com/community/EnvironmentVariables ),我已经尝试添加“umask 002”到以下位置: /var/www/.profile /var/www/.bashrc /var/www/.bash_profile 在/ var / WWW / bash_login 而全球环境文件: 在/ etc /环境 /etc/bash.bashrc 即使在所有这些文件中添加“umask 002”并重新启动,运行“sudo -u www-data touch testfile”结果为“-rw -r -r–”权限。 (我试图将www-data shell设置为/ bin / sh和/ bin / bash。) 有没有什么方法可以设置,以便“sudo […]