如何在Ubuntu 22.04上搭建ftp服务器

2023-08-21 09:07:40 来源:嵌入式那些事

本文将在Ubuntu 22.04上搭建ftp服务器,对于其他版本Ubuntu系统或者其他系列的Linux发行版,配置都差不多。


(资料图)

下述内容配置好了匿名用户和Ubuntu本地用户登录ftp服务器,并能上传和删除文件。

安装vsftpd

sudoaptinstallvsftpd

vsftpd服务在安装完成后会自动启动。通过下述命令可以查看vsftpd的状态:

sudosystemctlstatusvsftpd

Snipaste_2023-05-07_16-14-31

配置vsftpd

可以通过编辑/etc/vsftpd.conf文件来配置vsftpd服务器。大多数ftp配置在配置文件中都有描述。有关所有可用选项,可以官方vsftpd页面进行查询。

执行下述命令打开/etc/vsftpd.conf文件:

sudovim/etc/vsftpd.conf

配置FTP登录方式

将/etc/vsftpd.conf文件中的anonymous_enable和local_enable设置成如下的配置:

anonymous_enable=YESlocal_enable=YES

anonymous_enable:控制是否允许匿名登录。

local_enable:控制是否允许Ubuntu的本地用户登录(ftp客户端可以使用Ubuntu的用户名和密码登录到ftp服务器中)。

限制用户访问其他目录

为防止FTP用户访问其主目录之外的其他目录,在/etc/vsftpd.conf文件中,取消chroot_local_user=YES的注释:

chroot_local_user=YES

并且在/etc/vsftpd.conf文件的末尾添加下述内容,设置ftp用户的主目录为/home:

local_root=/home

允许上传和删除操作

在/etc/vsftpd.conf文件中,取消write_enable的注释,以允许对文件系统进行更改,例如上传和删除文件。

#用户是否有写的权限write_enable=YES

在/etc/vsftpd.conf文件中,打开匿名用户的一些配置,如果下述配置在/etc/vsftpd.conf文件中没有,可以在配置文件中进行添加:

#允许匿名用户上传anon_upload_enable=YES#允许匿名用户创建目录文件anon_mkdir_write_enable=YES#允许匿名用户删除文件anon_other_write_enable=YES

设置匿名用户的默认目录

在/etc/vsftpd.conf文件中,增加anon_root的配置,内容如下:

anon_root=/home/ailsonjack/share

anon_root:设置匿名用户的默认路径。

到这里已经完成了对/etc/vsftpd.conf文件的配置,保存退出/etc/vsftpd.conf文件的编辑。

在/home/ailsonjack文件夹中创建share文件夹,命令如下:

cd/home/ailsonjackmkdirshare

为了保证匿名用户能够顺利的上传和删除文件,需要在share文件夹中创建ftp文件夹,之后改变ftp文件夹的权限为777,匿名用户就只能在ftp文件夹中进行文件的上传或者删除。

cdsharemkdirftpchmod777ftp/

使配置生效

设置完成/etc/vsftpd.conf文件之后,执行下述命令重启vsftpd来使设置生效:

sudosystemctlrestartvsftpd

禁用防火墙

为了确保ftp服务器能够正常工作,我这里简单的关闭防火墙,命令如下:

sudoufwdisable

关闭防火墙之后,可以执行下述命令查看防火墙的状态:

sudoufwstatus

至此,Ubuntu搭建ftp服务器算是完成了,试试吧。

审核编辑:汤梓红

标签:

上一篇:恩智浦i.MXRT1xxx系列MCU的Serial NAND启动
下一篇:最后一页