网站首页 > 文章精选 正文
FTP服务器(File Transfer Protocol Server)是在互联网上提供文件存储和访问服务的计算机,它们依照FTP协议提供服务。 FTP是File Transfer Protocol(文件传输协议)。顾名思义,就是专门用来传输文件的协议。
在当下这个网盘到处限速收费的情况下,自己搭建一个FTP服务器,也是一个不错的选择。
1、搭建环境
阿里云服务器:ubuntu 16.04/18.04
2、安装ftp服务器工具
- 安装vsftpd
sudo apt-get update
sudo apt-get install vsftpd
- 设置成开机服务
systemctl enable vsftpd.service
- 启动ftp服务
systemctl start vsftpd.service
- 运行命令,查看ftp服务的端口号
netstat -antup | grep ftp
3、参数配置
- 配置文件路径:
/etc/vsftpd.conf
- 基本配置如下:
# 禁止匿名用户登录
anonymous_enable=NO
# 允许系统用户登录
local_enable=YES
# 启用可以修改文件的 FTP 命令
write_enable=YES
# 本地用户创建文件的 umask 值
local_umask=022
# 允许为目录配置显示信息,显示每个目录下面的message_file文件的内容
dirmessage_enable=YES
# 开启日记功能
xferlog_enable=YES
# 使用标准的20端口来连接ftp
connect_from_port_20=YES
# 使用标准日志格式
xferlog_std_format=YES
# 如果启动这项功能,则所有列在chroot_list_file之中的使用者不能更改根目录
chroot_list_enable=YES
# 指定限制的用户文件
chroot_list_file=/etc/vsftpd/chroot_list
# ftp服务器将处于独立启动模式
listen=YES
# 设置一个本地用户登录后进入到的目录
local_root=/home/ftp
# 设置PAM认证服务的配置文件名称,该文件保存在“/etc/pam.d/”目录下
pam_service_name=vsftpd
# ftp将检查userlist_file设置文件中指定的用户是否可以访问vsftpd服务器
userlist_enable=YES
# 只允许user_list文件中记录的ftp用户能登录vsftp服务,其他的ftp用户都不可以登录。
userlist_deny=NO
# 定义限制/允许用户登录的文件
userlist_file=/etc/vsftpd/allowed_users
# ftp服务器将使用tcp_wrappers作为主机访问控制模式
tcp_wrappers=YES
# 连接ftp服务费使用的端口
listen_port=21
如需开启被动模式,增加如下配置参数
#开启被动模式。
pasv_enable=YES
allow_writeable_chroot=YES
#设置被动模式下,建立数据传输可使用的端口范围的最小值。
#建议您把端口范围设置在一段比较高的范围内,例如50000~50010,有助于提高访问FTP服务器的安全性。
pasv_min_port=50000
#设置被动模式下,建立数据传输可使用的端口范围的最大值。
pasv_max_port=50010
因为ftp服务器是搭建在阿里云上的,所以要根据以上配置设置下安全组规则,开启20/21;50000/50010的端口。
- allowed_users chroot_list文件配置
在/etc/vsftpd下,创建两个文件,没有文件夹的创建该文件夹
1)allowed_users 是允许的用户文件,允许的用户,把账户名写入即可
2)chroot_list 是限制的用户文件,没有限制的,保留空文件即可
配置完成后重启ftp服务
sudo systemctl restart vsftpd.service
查看服务器运行状态
sudo systemctl status vsftpd.service
这样ftp服务器就配置好了,用工具登陆试下
4、可能的错误如下
如果在启动ftp服务时,出现如下错误
关闭配置/etc/vsftpd.conf中ipv6设置再重启服务即可
listen_ipv6=NO
- 上一篇: 服务器常用端口都有哪些?
- 下一篇: 服务器远程端口是什么意思?什么是服务器远程端口?
猜你喜欢
- 2025-08-06 谁来教我渗透测试——黑客应该掌握的Windows基础
- 2025-08-06 centos7 部署SFTP
- 2025-08-06 面试干货:TCP/IP 协议的经典面试知识点总结
- 2025-08-06 《TCP/IP协议栈最全对比!一文搞懂TCP/UDP/IP/ICMP/ARP》
- 2025-08-06 FTP(文件传输协议)的主动模式与被动模式
- 2025-08-06 网络应用服务器(三)
- 2025-08-06 网络工程师必备的《网络端口大全》,收藏起来这一份就够了
- 2025-08-06 VPN技术(IPsec/L2TP/SSLVPN/PPTP)学习笔记
- 2025-08-06 什么是FTP?怎么连接FTP
- 2025-08-06 做黑客具有网络端口知识
- 最近发表
- 标签列表
-
- newcoder (56)
- 字符串的长度是指 (45)
- drawcontours()参数说明 (60)
- unsignedshortint (59)
- postman并发请求 (47)
- python列表删除 (50)
- 左程云什么水平 (56)
- 编程题 (64)
- postgresql默认端口 (66)
- 数据库的概念模型独立于 (48)
- 产生系统死锁的原因可能是由于 (51)
- 数据库中只存放视图的 (62)
- 在vi中退出不保存的命令是 (53)
- 哪个命令可以将普通用户转换成超级用户 (49)
- noscript标签的作用 (48)
- 联合利华网申 (49)
- swagger和postman (46)
- 结构化程序设计主要强调 (53)
- 172.1 (57)
- apipostwebsocket (47)
- 唯品会后台 (61)
- 简历助手 (56)
- offshow (61)
- mysql数据库面试题 (57)
- fmt.println (52)