Ari*_*man 4 security users webserver
我运行一个小型网络服务器,基本上只是为了托管小型数据项目和文件。此服务器具有公共 IP 地址。
我希望能够通过 FTP 进入并将文件直接上传到/var/www/*,因此我正在考虑允许www-data用户拥有密码并直接登录。这也可以避免每次在 Web 目录中执行任何操作时都必须更改文件所有权(我目前以 root 身份执行该操作,因此那里也存在安全风险)。
允许 www-data 用户登录是否存在安全风险?如果是这样,最好的选择是什么?
一种安全风险是您可能会杀死或以其他方式处理网络服务器本身(因为您当时使用的是同一个用户)。这可能不是您想要的。使用 root 时可能也是如此,对吧。
两种解决方案:
在下面/var/www为自己创建一个子目录,将其分享给自己,然后使用自己的用户。(或创建一个新的)
例子:
root@box# mkdir /var/www/joes-toys
root@box# chown joeuser:joegroup /var/www/toys
root@box# chmod u=rwx,g=rx,o=rx
Run Code Online (Sandbox Code Playgroud)将您的用户(您自己的用户或新用户)放入 www-data 组并确保该组具有写入权限 /var/www
例子:
root@box# adduser joeuser www-data
root@box# chgrp -R www-data /var/www
root@box# chmod -R g+w /var/www
Run Code Online (Sandbox Code Playgroud)PS:现在不要使用未加密的FTP!使用 sftp(来自 ssh 套件)或至少使用 ftps(ftp over ssl)。