在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服务,请小心处理相关的配置,因为它们可能导致服务器容易受到攻击。
相关推荐
麟城Lincoln6 分钟前
【Linux笔记】nfs网络文件系统与autofs(nfsdata、autofs、autofs.conf、auto.master)
linux·网络·笔记·nfs·autofs
Funny-Boy12 分钟前
Reactor (epoll实现基础)
服务器·网络·c++
云计算-Security13 分钟前
Jenkins 执行器(Executor)如何调整限制?
运维·jenkins
***似水流年***23 分钟前
Linux任务管理与守护进程
linux·运维·服务器
python算法(魔法师版)36 分钟前
.NET NativeAOT 指南
java·大数据·linux·jvm·.net
天天爱吃肉82181 小时前
车载以太网驱动智能化:域控架构设计与开发实践
java·运维·网络协议·微服务
正经教主1 小时前
【基础】Windows开发设置入门4:Windows、Python、Linux和Node.js包管理器的作用和区别(AI整理)
linux·windows·python·包管理器
Zfox_1 小时前
RPM 包制作备查 &SRPM 包编译
linux·rpm·srpm
Excuse_lighttime2 小时前
JVM 机制
java·linux·jvm
IP管家2 小时前
企业级IP代理解决方案:负载均衡与API接口集成实践
服务器·网络·数据库·网络协议·tcp/ip·容器·负载均衡