在Linux上开启FTP服务

在Linux上设置FTP服务,您可以使用几种不同的FTP服务器软件,如vsftpdProFTPDPure-FTPd。以下是使用vsftpd(非常安全的FTP守护程序)的基本步骤:

安装 vsftpd

首先,需要确保vsftpd已经安装。在Debian/Ubuntu系统上,您可以使用如下命令安装:

bash 复制代码
sudo apt update sudo apt install vsftpd

对于Red Hat/CentOS系统,使用以下命令:

bash 复制代码
sudo yum install vsftpd

配置 vsftpd

安装完毕后,接下来您需要配置FTP服务器。主配置文件通常位于/etc/vsftpd.conf

  1. 打开配置文件进行编辑:

    bash 复制代码
    sudo nano /etc/vsftpd.conf
  2. 定制化配置文件。您可能想修改以下设置以更好地控制FTP服务的行为:

    • anonymous_enable=NO 禁止匿名登录。
    • local_enable=YES 允许经过身份验证的用户登录。
    • write_enable=YES 允许用户上传文件。(要谨慎启用)
    • chroot_local_user=YES 将用户限制在其家目录。
    • pam_service_name=ftp 指定PAM服务名称以用于用户认证。
  3. 退出并保存文件。如果在nano中,可按Ctrl + X,然后按Y保存更改。

启动和使能 vsftpd

完成配置后,需要重新启动vsftpd以使更改生效,并将其设置为开机自启:

bash 复制代码
sudo systemctl restart vsftpd sudo systemctl enable vsftpd

开放防火墙端口

如果您的系统上运行有防火墙(如ufwfirewalld),您需要允许FTP通信:

对于使用ufw的系统:

bash 复制代码
sudo ufw allow 20/tcp sudo ufw allow 21/tcp sudo ufw reload

对于使用firewalld的系统:

bash 复制代码
sudo firewall-cmd --permanent --add-service=ftp sudo firewall-cmd --reload

创建FTP用户(可选)

为了增强安全性,您也许会想创建专门用于FTP访问的用户。

bash 复制代码
sudo adduser ftpuser

设定密码,并为新用户配置必要的权限。

连接测试

最后,尝试从客户端连接到FTP服务器以确保一切工作正常。您可以使用ftp命令行客户端或任何其他的FTP客户端软件:

bash 复制代码
ftp your_server_ip

输入用户名和密码进行登录测试。

注意事项

  • FTP默认不是加密协议,数据传输时可能会被截获。请考虑使用SFTP(SSH文件传输协议),它提供了加密的连接,大多数现代FTP客户端都支持SFTP。
  • 如果您需要提供匿名FTP服务,请小心处理相关的配置,因为它们可能导致服务器容易受到攻击。
相关推荐
VOOHU 沃虎几秒前
AI服务器多相电源设计:组合电感如何提升CPU/GPU供电效率
服务器·网络·信息与通信
Trouvaille ~9 分钟前
【MySQL篇】从零开始:安装与基础概念
linux·数据库·mysql·ubuntu·c·教程·基础入门
Curtain_Gin9 分钟前
windows vim 配置
linux·编辑器·vim
Dontla12 分钟前
(龙虾)OpenClaw(原 Clawdbot / Moltbot)常见部署方式介绍(Linux部署、Windows桌面部署)
linux·运维·服务器
Ghost Face...13 分钟前
Linux USB 全栈解析:OTG + Type-C + PD 内核架构(架构师级)
linux·c语言·架构
菜鸟z级31 分钟前
在新电脑装ubuntu包
linux·运维·ubuntu
一个人旅程~35 分钟前
旧笔记本电脑安装win10精简版LTSB&win10LTSC&linuxmint作为三系统的操作指导书(以DELL n4020为例)
linux·windows·经验分享·电脑
yumgpkpm39 分钟前
华为昇腾910B上用Kubernetes(K8s)部署LLM(Qwen3-32B)的详细步骤,保姆级命令及方法、下载链接等
运维·服务器·华为·stable diffusion·aigc·copilot·llama
蓝牙先生43 分钟前
22_backlightLinux内核模块
linux·c语言
木鱼布1 小时前
CentOS7配置vsftpd
linux·运维