Ubuntu 用vsftpd 配置FTP服务器

简介: 原文:Ubuntu 用vsftpd 配置FTP服务器网上的文章好难懂啊。。只想要简单粗暴,弄好能用就行啊,复杂的以后研究不行吗。。。折腾好久,其实弄出来能用不就这么点内容吗。。。 本文在Ubuntu Server 14.04 amd64系统测试。
原文: Ubuntu 用vsftpd 配置FTP服务器

网上的文章好难懂啊。。只想要简单粗暴,弄好能用就行啊,复杂的以后研究不行吗。。。折腾好久,其实弄出来能用不就这么点内容吗。。。

文在Ubuntu Server 14.04 amd64系统测试。

Made By:CSGrandeur

安装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服务。

 

 

 

目录
相关文章
|
25天前
|
Ubuntu JavaScript 关系型数据库
在阿里云Ubuntu 20.04服务器中搭建一个 Ghost 博客
在阿里云Ubuntu 20.04服务器上部署Ghost博客的步骤包括创建新用户、安装Nginx、MySQL和Node.js 18.x。首先,通过`adduser`命令创建非root用户,然后安装Nginx和MySQL。接着,设置Node.js环境,下载Nodesource GPG密钥并安装Node.js 18.x。之后,使用`npm`安装Ghost-CLI,创建Ghost安装目录并进行安装。配置过程中需提供博客URL、数据库连接信息等。最后,测试访问前台首页和后台管理页面。确保DNS设置正确,并根据提示完成Ghost博客的配置。
在阿里云Ubuntu 20.04服务器中搭建一个 Ghost 博客
|
1月前
|
Ubuntu 网络协议 Java
【Android平板编程】远程Ubuntu服务器code-server编程写代码
【Android平板编程】远程Ubuntu服务器code-server编程写代码
|
1月前
|
Linux 网络安全 数据安全/隐私保护
Linux vsFTPd服务详解——文件加密传输配置
Linux vsFTPd服务详解——文件加密传输配置
143 2
|
2月前
|
存储 Ubuntu 网络协议
|
2月前
|
负载均衡 Ubuntu 应用服务中间件
|
4天前
|
网络协议 安全 Linux
配置vsftpd服务
FTP是TCP/IP协议族中的应用层协议,用于可靠地传输文件,基于C/S架构,使用20(数据)和21(命令)端口。有两种传输模式:主动模式,客户端告知服务器数据端口,服务器发起连接;被动模式,服务器响应客户端的PASV命令,客户端建立数据连接。安装Linux的vsftpd服务涉及`yum install vsftpd`,创建用户,重启服务并设置开机启动。配置文件`vsftpd.conf`可调整访问权限和行为。通过FTP命令如`help`,`get`,`put`进行文件操作。匿名用户模式可允许无密码访问,需修改配置文件开启。
7 0
|
16天前
|
Ubuntu 开发工具
Ubuntu vim配置支持鼠标
Ubuntu vim配置支持鼠标
12 0
|
18天前
|
Ubuntu Linux 虚拟化
【Linux】ubuntu安装samba服务器
【Linux】ubuntu安装samba服务器
|
1月前
|
存储 Ubuntu 网络安全
|
1月前
|
Ubuntu 网络协议 Java
在Android平板上使用code-server公网远程Ubuntu服务器编程
在Android平板上使用code-server公网远程Ubuntu服务器编程