云服务器如何搭建FTP服务?

常见问题

云服务器如何搭建FTP服务?

2025-04-10 08:34


零基础教程:手把手

                                            

零基础教程:手把手教你用云服务器搭建FTP服务

在数字化时代,FTP(文件传输协议)服务仍然是企业文件共享和远程访问的重要工具。本文将详细介绍如何利用云服务器快速搭建安全稳定的FTP服务,包含从服务器选购到最终配置的全套流程。

一、准备工作

在开始搭建FTP服务前,需要做好以下准备工作:

  1. 选择合适的云服务器:推荐1核2G配置起步,带宽建议5Mbps以上
  2. 操作系统选择:CentOS 7/8或Ubuntu 18.04/20.04 LTS
  3. 安全组配置:提前开放20、21端口(主动模式)或被动模式端口范围
  4. 域名准备(可选):建议绑定域名方便记忆和使用

二、安装VSFTPD服务

VSFTPD是Linux下最常用的FTP服务器软件,安装步骤如下:

1. 更新系统软件包

# CentOS/RHEL
sudo yum update -y
sudo yum install vsftpd -y

# Ubuntu/Debian
sudo apt update
sudo apt install vsftpd -y

2. 启动服务并设置开机自启

sudo systemctl start vsftpd
sudo systemctl enable vsftpd

三、配置VSFTPD

编辑配置文件前建议先备份:

sudo cp /etc/vsftpd/vsftpd.conf /etc/vsftpd/vsftpd.conf.bak

1. 基础配置

修改/etc/vsftpd/vsftpd.conf文件:

anonymous_enable=NO
local_enable=YES
write_enable=YES
local_umask=022
dirmessage_enable=YES
xferlog_enable=YES
connect_from_port_20=YES
xferlog_std_format=YES
listen=YES
listen_ipv6=NO
pam_service_name=vsftpd
userlist_enable=YES
tcp_wrappers=YES

2. 被动模式配置(重要)

pasv_enable=YES
pasv_min_port=30000
pasv_max_port=31000
pasv_address=你的服务器公网IP

四、用户管理与权限设置

1. 创建FTP专用用户

sudo useradd -d /var/ftp/ftpuser -s /sbin/nologin ftpuser
sudo passwd ftpuser
sudo chown -R ftpuser:ftpuser /var/ftp/ftpuser

2. 用户限制(可选)

限制用户只能访问指定目录:

sudo usermod -d /var/ftp/ftpuser ftpuser
echo 'ftpuser' | sudo tee -a /etc/vsftpd/user_list
echo 'ftpuser' | sudo tee -a /etc/vsftpd/chroot_list

五、防火墙与安全配置

1. 防火墙设置

# CentOS 7/8
sudo firewall-cmd --permanent --add-port=21/tcp
sudo firewall-cmd --permanent --add-port=30000-31000/tcp
sudo firewall-cmd --reload

# Ubuntu
sudo ufw allow 21/tcp
sudo ufw allow 30000:31000/tcp
sudo ufw reload

2. SSL加密(推荐)

生成SSL证书:

sudo openssl req -x509 -nodes -days 365 -newkey rsa:2048 \
-keyout /etc/ssl/private/vsftpd.pem \
-out /etc/ssl/private/vsftpd.pem

配置SSL:

ssl_enable=YES
allow_anon_ssl=NO
force_local_data_ssl=YES
force_local_logins_ssl=YES
ssl_tlsv1=YES
ssl_sslv2=NO
ssl_sslv3=NO
rsa_cert_file=/etc/ssl/private/vsftpd.pem
rsa_private_key_file=/etc/ssl/private/vsftpd.pem

六、测试与连接

1. 重启服务

sudo systemctl restart vsftpd

2. 连接测试

推荐使用FileZilla等FTP客户端,连接参数:

  • 主机:服务器IP或域名
  • 用户名:ftpuser
  • 密码:设置的用户密码
  • 端口:21
  • 传输模式:被动模式

七、常见问题解决

1. 连接超时:检查安全组规则和防火墙设置

2. 530 Login incorrect:确认用户是否在/etc/vsftpd/user_list中

3. 550 Permission denied:检查目录权限和SELinux设置

通过以上步骤,您已经成功在云服务器上搭建了一个安全可靠的FTP服务。定期检查日志文件/var/log/vsftpd.log可以及时发现并解决问题。


标签:
  • 云服务器
  • FTP搭建
  • VSFTPD配置
  • 莱卡云