VPS侦探论坛

 找回密码
 注册
查看: 5442|回复: 1

pureftpd上传的文件只能为www用户,不论用户的uid、gid为多少

[复制链接]
发表于 2012-5-22 20:32:54 | 显示全部楼层 |阅读模式

目前场景是这样,www 用户的 UID=500 GID=500
我在MySQL里面添加的pureftpd用户为test uid=ftp-uid    gid=ftp-gid


我需要实现的需求如下

/home/wwwroot     ftp:ftp 0755
也就是其它账号无法写入,主要是为了防止www(nginx)用户进行写入操作,某些php文件夹必须由管理员开启 777才能让PHP写
而通过pureftpd则可以上传和修改等。


而不论怎么修改Mysql中的uid和gid,上传用户总是以www(500)的身份上传

#ps -ef

root      2940     1          0 20:00 ?        00:00:00 pure-ftpd (SERVER)
www     2958      2940    0 20:03 ?        00:00:00 pure-ftpd (IDLE)          这个和下面的进程是有连接时自动生成的,此进程是www 用户
root      2960      2958   0 20:03 ?        00:00:00 pure-ftpd (PRIV)



故只有将/home/wwwroot改为www:www 0755时,FTP才能上传,而这样,php也有了写入权限。很为纠结。
(大家别说改成www:www 0555,这样ftp都无法上传。)

就算将/home/wwwroot 改为 xxx:xxx 0777 通过 FTP上传的文件也会是www:www,和mysql中的uid和gid完全不一致。

[ 本帖最后由 boot 于 2012-5-22 20:43 编辑 ]
美国VPS推荐: 遨游主机LinodeLOCVPS主机云搬瓦工80VPSVultr美国VPS主机中国VPS推荐: 阿里云腾讯云。LNMP付费服务(代装/问题排查)QQ 503228080
发表于 2012-5-24 23:08:23 | 显示全部楼层


FTP  和  目录,都别用 WWW 权呀。  不然,你再怎么设,都可以写。  安全是个问题。

就算你设为  000 PHP都可以写      

你说的 FTP上传的文件也是 www,是因为你在 pureftpd 设为 FTP 属性为 www了。

还去 mysql 改个啥。 为何不直接去  pureftpd 改FTP发放为  FTP的呢。


有个注意的是:你在 pureftpd  改 FTP属性为 FTP后,你要在SSH里把网站目录和所有文件的属性也都设为FTP属性。

                           使用 chown -R 命令来修改目录和目录下的所有文件属性为 你的FTP权限。

                          只有这么做了,你设置 755 才会有做用。网站目录需要写入权的,你就设置 777。

只有这样才能防安全,和防跨站!
Linux下Nginx+MySQL+PHP自动安装工具:https://lnmp.org
您需要登录后才可以回帖 登录 | 注册

本版积分规则

小黑屋|手机版|Archiver|VPS侦探 ( 鲁ICP备16040043号-1 )

GMT+8, 2024-9-23 01:21 , Processed in 0.025446 second(s), 17 queries .

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表