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假设在公网 无法访问

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

相关推荐
不知几秋2 小时前
数字取证-内存取证(volatility)
java·linux·前端
欧先生^_^5 小时前
Linux内核可配置的参数
linux·服务器·数据库
海尔辛5 小时前
学习黑客5 分钟读懂Linux Permissions 101
linux·学习·安全
王RuaRua6 小时前
[数据结构]5. 栈-Stack
linux·数据结构·数据库·链表
曼岛_7 小时前
[架构之美]linux常见故障问题解决方案(十九)
linux·运维·架构
tan180°7 小时前
Linux进程信号处理(26)
linux·c++·vscode·后端·信号处理
大神的风范7 小时前
从0开始学linux韦东山教程第三章问题小结(4)
linux·服务器
sz66cm7 小时前
Linux基础 -- SSH 流式烧录与压缩传输笔记
linux·笔记·ssh
YOYO--小天7 小时前
RS485和RS232 通信配置
linux·嵌入式硬件
大蚂蚁2号8 小时前
windows文件共享另一台电脑资源管理器网络文件夹无法找到机器
运维·服务器·网络