Ubuntu 22.04 ftp搭建

1、安装ftp服务

sudo apt-get install vsftpd

2、FTP安装完成后,会默认为我们创建用户名为ftp的用户,默认无密码。我们需要为其设置密码。输入

sudo passwd ftp

3、创建ftp用户的home目录

sudo mkdir /home/ftp

4、设置ftp目录的权限

sudo chmod 777 /home/ftp

sudo chown ftp:ftp /home/ftp

5、配置FTP服务 主要就是下面这些(有些可能不需要)

取消如下配置前的注释符号

local_enable=YES(是否允许本地用户登录)

write_enable=YES(是否允许本地用户写的权限)

chroot_local_user=YES(是否将所有用户限制在主目录)

chroot_list_enable=YES(是否启动限制用户的名单)

chroot_list_file=/etc/vsftpd.chroot_list(可在文件中设置多个账号)

修改如下配置

anonymous_enable=NO (不允许匿名访问,必须登录)

chown_uploads=YES (允许上传改变)

添加如下内容

allow_writeable_chroot=YES

如果不需要多用户访问 ,可以再添加ftp访问目录

local_root=/home/ftp (访问目录)

6、重启ftp

sudo service vsftpd restart

7、测试

在终端中输入ftp localhost,然后输入用户名与密码实现登录

ftp localhost

8、多用户

在上面步骤5配置的目录/etc/vsftpd.chroot_list下面新建不同用户 ,注意文件名要跟ftp用户名一样

ftp文件内容

/etc/vsftpd/user_conf/ftp

local_root=/home/ftp

write_enable=YES

anon_upload_enable=NO

anon_mkdir_write_enable=NO

anon_other_write_enable=NO

ftpdown只有下载权限

/etc/vsftpd/user_conf/ftp

local_root=/home/ftp

write_enable=NO

anon_upload_enable=NO

anon_mkdir_write_enable=NO

anon_other_write_enable=NO

问题:

1、ftp总是出现密码错误

将/etc/vsftpd.conf配置文件的pam_service_name=vsftpd改为pam_service_name=ftp,即可解决。

pam_service_name=ftp 修改完成,重启ftp

2、内网使用客户端工具或者windows在文件夹路径中无法访问 首先要确保端口能正常访问 ftp服务器要开放对应的端口 通过tcping *** 21能看到对应的端口是打开的

提示:"打开FTP服务器上的文件夹是发生错误,请检查是否有权限访问该文件夹。"

在控制面板里找到 "Internet 选项"

把使用被动 FTP 功能关掉就 OK

winSCP 修改

3、ftp假设在公网 无法访问

要看看对应的安全组是否有放开对应端口 登录到对应的云服务后台 修改安全组规则

相关推荐
kikikidult29 分钟前
(2025.07)解决——ubuntu20.04系统开机黑屏,左上角光标闪烁
笔记·ubuntu
小哥山水之间30 分钟前
基于dropbear实现嵌入式系统ssh服务端与客户端完整交互
linux
m0_6530313640 分钟前
腾讯云认证考试报名 - TDSQL数据库交付运维专家(TCCE MySQL版)
运维·数据库·腾讯云
ldj202044 分钟前
2025 Centos 安装PostgreSQL
linux·postgresql·centos
翻滚吧键盘1 小时前
opensuse tumbleweed上安装显卡驱动
linux
cui_win2 小时前
【内存】Linux 内核优化实战 - net.ipv4.tcp_tw_reuse
linux·网络·tcp/ip
biass2 小时前
jenkins角色权限
运维·jenkins
tomorrow.hello2 小时前
Jenkins Pipeline(二)
运维·jenkins
做一个AC梦2 小时前
Docker安装失败:Docker Desktop installation failed
运维·docker·容器
Shan12052 小时前
浅谈Docker Kicks in的应用
运维·docker·容器