ubuntu配置vsftpd-----局域网ftp工具

Ubuntu版本:Ubuntu 18.04.1 LTS

目的:快速创建一个ftp,满足以下功能

1.局域网内所有用户,均可以通过ftp工具连接到ftp指定路径

2.局域网所有用户可以上传和下载

3.普通用户不能删除ftp文件

4.特定用户可以删除ftp文件

 

搭建和配置过程

1.安装工具

$ sudo apt install vsftpd

2.修改配置文件

$ sudo gedit /etc/vsftpd.conf

listen=NO

listen_ipv6=YES

anonymous_enable=NO

local_enable=YES
write_enable=YES
allow_writeable_chroot=YES

dirmessage_enable=YES

use_localtime=YES

xferlog_enable=YES

connect_from_port_20=YES

xferlog_file=/var/log/vsftpd.log

xferlog_std_format=YES

chroot_local_user=YES

secure_chroot_dir=/var/run/vsftpd/empty

pam_service_name=vsftpd
rsa_cert_file=/etc/ssl/certs/ssl-cert-snakeoil.pem
rsa_private_key_file=/etc/ssl/private/ssl-cert-snakeoil.key
ssl_enable=NO
local_root=/home/erge/workspace

3.创建用于存放ftp文件的工作路径

$ mkdir -p /home/erge/workspace     #这个路径跟上面的配置文件,最后一行的路径保持一致即可

4.创建一个新Ubuntu用户,这里命名为  ftperge

$ sudo useradd -d /home/erge/workspace -M ftperge
$ sudo passwd ftperge     

5.修改ftp权限

$ chmod -R 777 workspace/

 

6.修改配置文件,解决ftp登录错误:530 login incorrect

$ sudo gedit /etc/pam.d/vsftpd

#注释掉最后一行

#auth    required pam_shells.so

 

7.重新启动服务,看下效果

$ sudo service vsftpd restart 

 

此时可以正常连接ftp了,上传、下载、删除 文件都没有问题

 

现在的关键问题是,如何让普通登录者没有删除文件的权限

 

posted @ 2022-03-06 20:23  洱海  阅读(296)  评论(0编辑  收藏  举报
.First { margin: 10px 0; font-family: 'Microsoft Yahei'; text-align: left; padding: 6px 20px; color: #fff; background: #55895B; font-size: 20px; border-radius: 4px; clear: both; } .Second { margin: 10px 0; font-family: 'Microsoft Yahei'; padding: 6px 20px; background: #93C8A2; color: white; font-size: 18px; border-radius: 4px; clear: both; } .Third { margin: 10px 0; padding: 6px 20px; font-family: 'Microsoft Yahei'; margin: 15px 0; font-size: 16px; color: black; background: #C6EFD2; border-radius: 4px; clear: both; } .note { margin: 10px 0; padding: 15px 20px 15px 60px; background: #FCFAA9 url('http://images.cnblogs.com/cnblogs_com/libaoheng/305804/o_yellow-pin.png') no-repeat 20px 0; font-size: 15px; font-family: 'Microsoft Yahei'; box-shadow: 0 0 8px #aaa; clear: both; } .demo { text-align: left; padding: 6px 20px; overflow: auto; border-radius: 4px; background: orange; color: #fff; font-size: 16px; clear: both; } .cnblogs_Highlighter { border: solid 1px #ccc; clear: both; } .cnblogs_code { background: #EFFFF4; border: solid 0px #939393; font-size: 14px; clear: both; padding: 10px 20px; } .cnblogs_code pre { font-size: 14px; } .cnblogs_code span { font-family: Courier New; font-size: 14px; }