| |||||
| |||||
本文链接: https://blog.csdn.net/xietansheng/article/details/84145618
vsftpd(Very Secure FTP Daemon)是一个在 Linux/Unix 系统上运行的一款开源免费的 FTP 服务器软件。vsftpd 支持支持 匿名用户、本地用户、虚拟用户 3种登录方式。vsftpd 高速安全,支持带宽限制,支持IPv6,可分配虚拟IP,支持创建虚拟用户。
相关网站:
1. FTP 服务器搭建
1.1 安装 vsftpd(Ubuntu)
- 1
查看 vsftpd 是否正在运行并监听 21 端口
- 1
其他 vsftpd 服务管理命令
- 1
- 2
- 3
- 4
vsftpd 服务安装完成并启动后,即可直接使用当前 Liunx 系统用户名和密码进行访问:
- 1
- 2
1.2 vsftpd 配置
vsftpd 配置文件路径: /etc/vsftpd.conf
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
配置完成后,sudo service vsftpd restart重启服务,用本地用户(Linux系统标准用户)的 用户名 和 密码 登录FTP。
1.3 限制用户登录 /etc/ftpusers
/etc/ftpusers文件内的用户名禁止登录 FTP,文件内已有的默认禁止的用户名有 root、daemon、bin、sys 等。如果需要禁止某个用户登录,可将用户名添加到该文件(每行一个用户名)。该文件由 PAM 模块的/etc/pam.d/vsftpd配置文件指定:
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
vsftpd 也有自己的限制用户登录的管理机制,详见/etc/vsftpd.conf文件中userlist_file字段介绍。
PS: 如果有本地用户没有在 /etc/ftpusers 文件内,却依然无法登录,打开sudo vim /etc/pam.d/vsftpd,找到下面这句话,注释掉,重启服务,再尝试登录:
- 1
1.4 其他 vsftpd 配置字段说明(vsftpd.conf)
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 11
- 12
- 13
- 14
- 15
- 16
- 17
- 18
- 19
- 20
- 21
- 22
- 23
- 24
- 25
- 26
- 27
- 28
- 29
- 30
- 31
- 32
- 33
- 34
- 35
- 36
- 37
- 38
- 39
- 40
- 41
- 42
- 43
- 44
- 45
- 46
- 47
- 48
- 49
- 50
- 51
- 52
- 53
- 54
- 55
其他详细配置介绍参考:
2. 守护程序 xinetd
上面所说的 vsftpd 服务均是以比较常用的 standalone 模式独立运行,除此之外还可以以 super daemon 的模式由 xinetd 管理运行。
xinetd 是 Linux 守护进程服务程序,将服务集中管理。许多服务进程只有偶尔才需要用到,为了节省资源,可以交由 xinted 代理监听相应的端口,一旦有请求到达这个端口,先到达 xinted,xinted 根据请求的端口,临时启动相应的服务进程处理请求,响应完成后,xinted 再关闭相应进程,继续监听端口。
- 使用 super daemon 模式,必须修改
/etc/vsftpd.conf中的配置
- 1
- 2
- 安装 xinetd
- 1
- 配置守护进程
- 1
把下面配置添加到文件尾部:
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 11
- 停止 vsftpd 服务,启动 xinetd 服务
- 1
- 2
- 查询端口是否在监听
- 1
3. 访问 FTP
3.1 命令行 FTP 客户端
- 登录 FTP
- 1
- 2
- 3
- 4
- 5
- 6
- 7
- 8
- 9
- 10
- 上传文件
- 1
- 2
- 下载文件
- 1
- 2
- 创建目录、删除目录/文件、重命名
- 1
- 2
- 3
- 4
3.2 图形界面 FTP 客户端
FTP图形界面客户端,推荐使用 FileZilla,支持 Windows、Linux、MAC 多个平台,免费开源,界面友好,使用简单。
FileZilla 官网: https://filezilla-project.org
4. vsftpd.conf
最后附上 /etc/vsftpd.conf 配置文件的默认原文, 供配置参考(不同版本,不同系统安装后,默认值和默认状态可能不一样):
