在 Debian 上“禁止 FTP 写权限”通常取决于你使用的 FTP 服务软件。最常见的是 vsftpd,下面以它为主说明,并补充 proftpd / pure-ftpd 的要点。
编辑配置文件:
sudo nano /etc/vsftpd.conf
确保包含:
write_enable=NO
重启服务:
sudo systemctl restart vsftpd
设为
NO后,所有 FTP 用户都不能上传、删除、重命名。
write_enable=NO
anon_upload_enable=NO
anon_mkdir_write_enable=NO
write_enable=YES
userlist_enable=YES
userlist_file=/etc/vsftpd.user_list
userlist_deny=NO
然后在 /etc/vsftpd.user_list 中写入允许写的用户。
编辑配置:
sudo nano /etc/proftpd/proftpd.conf
禁止写权限:
<Limit WRITE>
DenyAll
</Limit>
重启:
sudo systemctl restart proftpd
禁止写:
sudo pure-pw usermod 用户名 -u ftpuser -d /home/ftp -r
sudo systemctl restart pure-ftpd
或全局只读(不推荐生产):
echo "yes" > /etc/pure-ftpd/conf/NoRename
echo "yes" > /etc/pure-ftpd/conf/NoDelete
即使 FTP 允许写,目录权限也能限制:
chmod 555 /srv/ftp
chown root:root /srv/ftp
ftp localhost
尝试 put 文件,应提示 Permission denied。
如果你能告诉我:
我可以给你更精确的配置。