如何在Ubuntu Server上搭建FTP服务

在Ubuntu Server上搭建FTP服务可以使用流行的FTP服务器软件,列如 vsftpd(Very Secure FTP Daemon)。以下是完整的分步教程:


1. 更新系统包

确保你的系统是最新的:

sudo apt update && sudo apt upgrade -y


2. 安装 vsftpd

使用 apt 包管理器安装:

sudo apt install vsftpd -y


3. 配置 vsftpd

vsftpd 的配置文件位于 /etc/vsftpd.conf

(1)备份配置文件

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

(2)编辑配置文件

用文本编辑器打开文件:

sudo nano /etc/vsftpd.conf

在文件中确保以下设置:

  • 启用本地用户登录

    local_enable=YES
    

  • 允许文件上传

    write_enable=YES
    

  • 限制用户访问自己的目录

    chroot_local_user=YES
    

  • 添加安全性设置
    如果需要更多安全性:

    pasv_enable=YES
    pasv_min_port=10000
    pasv_max_port=10100
    

  • 禁用匿名用户登录(默认已禁用)
    确保以下配置存在:

    anonymous_enable=NO
    

保存并退出(按 Ctrl+O 保存,Ctrl+X 退出)。


4. 创建 FTP 用户

创建一个新用户以供 FTP 登录使用:

sudo adduser ftpuser

设置密码并完成其他信息。

更改用户的主目录

指定用户登录的目录,例如 /home/ftpuser

sudo mkdir -p /home/ftpuser/ftp/files
sudo chown -R ftpuser:ftpuser /home/ftpuser/ftp
sudo chmod -R 750 /home/ftpuser/ftp


5. 启动 vsftpd 服务

重启 vsftpd 服务以应用更改:

sudo systemctl restart vsftpd

设置开机启动:

sudo systemctl enable vsftpd


6. 检查防火墙

如果使用了 UFW 防火墙,确保开放 FTP 端口(21):

sudo ufw allow 21/tcp
sudo ufw allow 10000:10100/tcp
sudo ufw reload


7. 测试 FTP 服务

  • 使用命令行工具(如 ftp)连接:

    ftp <服务器IP地址>
    

  • 或使用 FTP 客户端软件(如 FileZilla):
    • 主机:服务器IP
    • 用户名:刚创建的 ftpuser
    • 密码:用户密码
    • 端口:21

可选配置:启用 TLS(加密连接)

为安全性,提议启用 TLS。

  1. 生成 SSL/TLS 证书:

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

  2. 编辑配置文件启用 TLS:
    /etc/vsftpd.conf 添加:

    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
    

  3. 重启服务:

    sudo systemctl restart vsftpd
    


完成后,你的 Ubuntu Server 就成功运行了一个 FTP 服务。

© 版权声明

相关文章

暂无评论

您必须登录才能参与评论!
立即登录
none
暂无评论...