Linux系统FTP如何使用?操作步骤与方法指南

Linux系统下FTP(File Transfer Protocol,文件传输协议)是常用的文件传输方式,主要用于客户端与服务器之间的文件上传、下载等操作,本文将详细介绍Linux环境下FTP的使用方法,包括客户端连接、服务器配置及常用操作。

linux系统ftp如何使用

FTP工具概述

Linux系统中,FTP操作主要通过客户端工具和服务器软件实现,客户端工具包括ftp(内置命令行工具)、lftp(增强型客户端,支持断点续传、多线程等),服务器软件常用vsftpd(very secure FTP daemon,安全且轻量)。

客户端使用:以ftp命令为例

安装FTP客户端

大多数Linux系统默认已安装ftp工具,若未安装可通过包管理器安装:

  • Ubuntu/Debian:sudo apt update && sudo apt install ftp
  • CentOS/RHEL:sudo yum install ftp

连接FTP服务器

使用ftp命令连接服务器,格式为ftp [服务器IP/域名] [端口](端口默认为21):

ftp 192.168.1.100

连接后需输入用户名和密码,若服务器允许匿名登录,用户名可输入anonymous,密码留空或填邮箱。

linux系统ftp如何使用

常用FTP操作命令

连接成功后,进入FTP交互界面,可通过以下命令操作:

命令 功能描述 示例
ls 列出当前目录文件 ls
cd [目录] 切换目录 cd /upload
get [文件] 下载文件到本地当前目录 get test.txt
put [文件] 上传本地文件到服务器当前目录 put local_file.txt
mget [文件] 批量下载文件(支持通配符) mget *.zip
mput [文件] 批量上传文件 mput *.jpg
mkdir [目录] 创建服务器目录 mkdir new_folder
delete [文件] 删除服务器文件 delete old.txt
! [命令] 执行本地系统命令 ! ls(查看本地目录)
help 查看所有可用命令 help
bye/quit 退出FTP连接 bye

被动模式(PASV)设置

若客户端处于内网或防火墙限制,需启用被动模式以确保数据传输正常:

passive  # 开启被动模式

FTP服务器配置:以vsftpd为例

安装vsftpd

  • Ubuntu/Debian:sudo apt install vsftpd
  • CentOS/RHEL:sudo yum install vsftpd

配置vsftpd

核心配置文件为/etc/vsftpd/vsftpd.conf,常用配置项如下:

anonymous_enable=NO      # 禁止匿名登录
local_enable=YES         # 允许本地用户登录
write_enable=YES         # 允许文件上传(需用户有写权限)
chroot_local_user=YES    # 限制用户只能访问自家目录(安全加固)
allow_writeable_chroot=YES  # 允许chroot目录可写(需配合write_enable=YES)
listen=YES               # 独立模式运行
pasv_min_port=10000      # 被动模式最小端口
pasv_max_port=10100      # 被动模式最大端口

配置完成后保存,重启服务:sudo systemctl restart vsftpd(CentOS/RHEL)或sudo service vsftpd restart(Ubuntu/Debian)。

linux系统ftp如何使用

防火墙与用户设置

  • 开放FTP端口(21)及被动模式端口(10000-10100):
    sudo ufw allow 21/tcp    # Ubuntu
    sudo firewall-cmd --permanent --add-port=21/tcp
    sudo firewall-cmd --reload  # CentOS
    sudo firewall-cmd --permanent --add-port=10000-10100/tcp
    sudo firewall-cmd --reload
  • 创建FTP专用用户(可选):
    sudo useradd -m ftpuser  # 创建用户并创建家目录
    sudo passwd ftpuser       # 设置密码

安全注意事项

  1. 避免明文传输:FTP默认使用明文传输密码和数据,建议改用FTPS(FTP over SSL)或SFTP(基于SSH的文件传输)增强安全性。
  2. 限制用户权限:通过chroot限制用户访问目录,避免越权操作。
  3. 定期更新:保持vsftpd版本最新,及时修复安全漏洞。

相关问答FAQs

Q1:Linux FTP连接失败,提示“Connection refused”怎么办?
A:可能原因包括:服务器未启动vsftpd服务(sudo systemctl status vsftpd检查);防火墙拦截(开放21端口及被动模式端口);服务器IP或端口错误,可通过telnet 服务器IP 21测试端口是否可达,排查服务状态和防火墙规则。

Q2:如何限制FTP用户只能访问指定目录(如/home/ftpuser/upload)?
A:可通过配置vsftpd.conf实现:

  1. 创建目标目录并设置权限:sudo mkdir -p /home/ftpuser/upload && sudo chown ftpuser:ftpuser /home/ftpuser/upload;
  2. 在vsftpd.conf中添加:local_root=/home/ftpuser/upload(指定用户登录后的根目录)和allow_writeable_chroot=YES;
  3. 重启vsftpd服务,用户登录后将只能操作/home/ftpuser/upload目录。

原创文章,发布者:酷番叔,转转请注明出处:https://cloud.kd.cn/ask/28374.html

赞 (0)
酷番叔酷番叔
上一篇 2025年9月22日 16:08
下一篇 2025年9月22日 16:19

相关推荐

  • linux 如何返回上级目录

    Linux 中,使用 `cd ..

    2025年8月18日
    29800
  • Linux如何发送报文?网络调试与安全分析技巧

    基础工具:快速发送测试报文ping 命令(ICMP报文)用途:测试网络连通性,命令示例:ping -c 4 192.168.1.1 # 发送4个ICMP请求包到指定IP参数扩展:-s 指定包大小:ping -s 1024 192.168.1.1(发送1KB大包)-I 指定网卡:ping -I eth0 8.8……

    2025年8月5日
    24800
  • linux系统如何查看盘符

    Linux 系统中,可使用df -h命令查看各盘符及其使用情况,简洁

    2025年8月18日
    24200
  • linux下如何t用户下线

    在Linux系统中,让用户下线是一个常见的系统管理操作,可能涉及系统维护、安全清理或资源分配等场景,用户下线本质上是终止用户相关的进程或断开其与系统的连接,具体操作需根据用户登录方式(本地终端、SSH等)和需求(强制/优雅)选择合适的方法,以下从基础概念到具体操作,详细说明Linux下用户下线的实现方式,查看用……

    2025年9月18日
    24900
  • U盘插上怎么查不到设备标识?

    制作Linux系统U盘启动盘详细指南准备工作硬件需求容量≥8GB的U盘(推荐USB 3.0接口)备用存储设备(用于备份U盘原有数据)软件资源Linux镜像文件:从官方渠道下载ISO文件(如Ubuntu官网、Fedora官方站点)启动盘制作工具(任选其一):Windows:Rufus(推荐)、BalenaEtch……

    2025年8月9日
    24800

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

联系我们

400-880-8834

在线咨询: QQ交谈

邮件:HI@E.KD.CN

关注微信