服务器 > 服务器 > ftp服务器

Ubuntu 用vsftpd 配置FTP服务器教程详解

68人参与 2024-05-19 ftp服务器

本文在ubuntu server 14.04 amd64系统测试。

安装ftp

sudo apt-get install vsftpd

配置vsftpd.conf

sudo nano /etc/vsftpd.conf

#禁止匿名访问
anonymous_enable=no
#接受本地用户
local_enable=yes
#允许上传
write_enable=yes
#用户只能访问限制的目录
chroot_local_user=yes
#设置固定目录,在结尾添加。如果不添加这一行,各用户对应自己的目录,当然这个文件夹自己建
local_root=/home/ftp

看网上说加一行“pam_service_name=vsftpd”,我看我这个配置文件本来就有,就不管了。

添加ftp用户

sudo useradd -d /home/ftp -m ftpuser
sudo passwd ftpuser

调整文件夹权限

这个是避免“500 oops: vsftpd: refusing to run with writable root inside chroot()”

sudo chmod a-w /home/ftp
sudo mkdir /home/ftp/data

这样登录之后会看到data文件夹,虽然稍麻烦,原因不表了。。查资料这么辛酸已经不易。。

改pam.d/vsftpd

这时候直接用useradd的帐号登录ftp会530 login incorrect

sudo nano /etc/pam.d/vsftpd

注释掉

#auth required pam_shells.so

重启vsftpd

sudo service vsftpd restart

这时就可以用刚才建的ftpuser这个用户登录ftp了,看到的是local_root设置的/home/ftp,并且限制在该目录。

可以在浏览器用ftp://xxx.xxx.xxx.xxx访问,也可以用ftp软件比如flashfxp,密码就是ftpuser的密码。

关于用户访问文件夹限制

由chroot_local_user、chroot_list_enable、chroot_list_file这三个文件控制,转别人的一段话:

首先,chroot_list_enable好理解,就是:是否启用chroot_list_file配置的文件,如果为yes表示chroot_list_file配置的文件生效,否则不生效;

第二,chroot_list_file也简单,配置了一个文件路径,默认是/etc/vsftpd.chroot_list,该文件中会填入一些账户名称。但是这些账户的意义不是固定的,是跟配置项chroot_local_user有关的。后一条中说明;

第三,chroot_local_user为yes表示所有用户都*不能*切换到主目录之外其他目录,但是!除了chroot_list_file配置的文件列出的用户。chroot_local_user为no表示所有用户都*能*切换到主目录之外其他目录,但是!除了chroot_list_file配置的文件列出的用户。也可以理解为,chroot_list_file列出的“例外情况”的用户。

如果客户端登录时候提示“以pasv模式连接失败”

编辑/etc/vsftpd.conf

最后添加

pasv_promiscuous=yes

然后再重启vsftpd服务。

以上所述是小编给大家介绍的ubuntu 用vsftpd 配置ftp服务器教程详解,希望对大家有所帮助

(0)
打赏 微信扫一扫 微信扫一扫

您想发表意见!!点此发布评论

推荐阅读

Centos7 安装步骤及注意事项

05-19

Ubuntu 安装 vsftpd FTP详细步骤

05-19

centos 搭建ftp服务器详解及简单介绍

05-19

vsftpd 出现530 and 500 错误问题解决办法

05-19

window8.1下FTP服务器安装配置图文教程

05-19

史上最详细的vsftpd配置文件详解

05-19

猜你喜欢

版权声明:本文内容由互联网用户贡献,该文观点仅代表作者本人。本站仅提供信息存储服务,不拥有所有权,不承担相关法律责任。 如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 2386932994@qq.com 举报,一经查实将立刻删除。

发表评论