当前位置:首页>Linux>Windows/Linux环境 ftp配置与操作

Windows/Linux环境 ftp配置与操作

  • 2026-09-09 17:51:42
Windows/Linux环境 ftp配置与操作

Windows/Linux环境 ftp配置与操作

在通过ftp服务从Windows向Linux传输文件(压缩包,FPGA bit文件等关键场合)时,发现压缩包损坏,无法正常解压,由此对ftp,Linux控制台访问时的一些操作注意事项进行了总结。同时,一般访问ftp为了系统安全性,希望只使用特定用户账号访问指定目录,因此,对非当前Windows账号登录ftp服务的方式进行了汇总。

linux登录

 > ftp 192.168.200.12
 > master@ubuntu:~/test$ ftp 192.168.200.12
Connected to 192.168.200.12.
220 Microsoft FTP Service
Name (192.168.200.12:master): 
...
# 登录后,使用Linux命令进行目录检索,使用get命令下载文件
ftp>get temp.zip
# 也可以指定目录
ftp>get temp.zip
# 常用操作
ftp>ls          # 列目录
ftp>cd 目录名    # 进入子目录
ftp>get 文件名   # 下载文件,存放目录pwd
ftp>put 本地文件 # 上传文件
ftp>bye# 退出

Windows部署

  • 1.开启ftp服务
  • 2.点击右侧编辑网站->绑定->修改对外公开的IP地址和端口,默认21
  • 3.点击右侧基本设置->连接为->特定用户->设置->当前用户名和密码
  • 4.如果需要指定目录或更改目录,在右侧基本设置->物理路径->选择共享网络目录
  • 5.以上操作完后左侧ftp名称右键重启,或在最右侧-》管理ftp站点-》重新启动

FTP 里一共就 两种核心传输模式,再加 2 种连接模式,搞懂这 4 个就永远不会传坏文件、连不上服务器。

一、传输模式(决定文件会不会损坏)

1. ASCII 模式(默认,危险!)

  • 用途:纯文本文件.txt / .sh / .c / .cpp / .h / .py / .html / .log 等
  • 行为:自动换行符转换(Windows \r\n ↔ Linux \n)
  • 危险: 一旦用来传 压缩包、图片、程序、固件 → 直接损坏文件你刚才的 zip 损坏就是这个原因

启用(一般不用手动开):

ascii

2. Binary 模式(二进制模式,必须记牢)

  • 用途:所有非文本文件.zip / .7z / .rar / .dll / .exe / .so / .jpg / .png / .pdf / .xls / .docx
  • 行为:原样传输,一字不差,不修改任何字节
  • 结论:不确定是什么文件 → 一律用 binary

启用:

binary

二、连接模式(决定能不能连上、卡不卡)

1. PORT 模式(主动模式,老式)

  • FTP 客户端告诉服务器:“来连我”
  • 内网/防火墙环境下 经常失败

2. PASV 模式(被动模式,现代必用)

  • 客户端主动连服务器的数据端口
  • 防火墙、NAT、云服务器、局域网共享 100% 要用 PASV

你在 Linux ftp 里连 Windows FTP 经常连不动,就输:

passive

或

quote pasv

三、最简单记忆口诀

  1. 文本文件 → ascii
  2. 压缩包/程序/图片 → 必须 binary
  3. Windows ↔ Linux 互传 → 一律先敲 binary
  4. 连不上数据通道、一直卡 → 敲 passive

Linux打开图形界面

Linux 图形界面访问 FTP,最顺手的方式是用系统自带文件管理器,或用专业客户端 FileZilla。下面按桌面环境给出最简步骤。

通用推荐:GNOME/KDE 自带文件管理器(免安装)

1)GNOME(Ubuntu、Fedora 等默认)

  • 打开“文件”(Files/Nautilus)
  • 两种入口:
    • 地址栏直接输:ftp://服务器IP(如 ftp://192.168.1.100)
    • 左侧“其他位置”→“连接到服务器”,地址填同上
  • 弹出凭证框:输用户名/密码;匿名 FTP 直接点连接
  • 连接后可像本地目录一样拖拽上传/下载

2)KDE(KDE Plasma 桌面)

  • 打开 Dolphin 文件管理器
  • 地址栏输:ftp://服务器IP
  • 输入用户名/密码后连接
  • 支持拖拽、书签、分栏视图

地址写法要点

  • 标准格式:ftp://user@host/path 或 ftp://host
  • 带端口:ftp://host:2121
  • 带账号密码(一次性):ftp://user:pass@host

更稳更强:FileZilla(跨平台专业客户端)

安装(Debian/Ubuntu)

sudo apt update && sudo apt install filezilla

连接步骤

  • 打开 FileZilla → 文件 → 站点管理器 → 新站点
  • 协议选“FTP”;主机填 IP;端口 21;输账号密码
  • 连接后左右双栏:拖拽传输;支持断点续传、队列、权限修改
  • 频繁访问可保存站点

关键提醒(避免传坏文件)

  • 传 zip/7z/exe/图片等二进制文件:必须先输 binary
  • 跨系统连接不顺时:输 passive 切换被动模式

最快一步

打开文件管理器,地址栏粘贴:

ftp://192.168.1.100

回车后输账号密码,即可像本地目录一样操作。

不同Windows系统如何创建ftp专用账号

出现“未发现本地用户和组”,90% 是 Windows 家庭版(专业/企业版才有 lusrmgr.msc),或权限/加载异常。按系统版本给你两套直达方案:

一、先确认系统版本

  • 按 Win+R → 输 winver → 回车
  • 看版本:
    • 家庭版(Home) → 走家庭版方案;
    • 专业版/企业版 → 走专业版方案

二、专业版/企业版

方法 1:直接打开

Win+R → 输 lusrmgr.msc → 回车(直接打开本地用户和组)

方法 2:修复计算机管理

  1. 右键“开始” → 选“计算机管理”
  2. 若左侧无“本地用户和组”:
    • Win+R → 输 mmc → 打开控制台
    • 点“文件” → “添加/删除管理单元”
    • 选“本地用户和组” → “添加” → 选“本地计算机” → “确定”
    • 保存控制台(如保存到桌面),以后用它打开

方法 3:以管理员身份运行

  • 右键“开始” → “Windows 终端(管理员)”
  • 执行:runas /user:Administrator compmgmt.msc

三、家庭版

家庭版没有 lusrmgr.msc,用以下命令行/设置替代:

1)PowerShell 命令行(推荐,可建 FTP 用户)

  1. 以管理员身份打开 PowerShell
  2. 建 FTP 用户(例:用户 ftpuser,密码 Pass@123456):
 # 创建用户(需强密码)

 New-LocalUser -Name "ftpuser" -Password (ConvertTo-SecureString "Pass@123456" -AsPlainText -Force) -PasswordNeverExpires
 # $true,因系统差异,我的环境是Win11,在上述命令后面不需要添加$true
 # 添加到用户组(获取权限)
 Add-LocalGroupMember -Group "Users" -Member "ftpuser"
 # 可选:添加到管理员组(更高权限)
 # Add-LocalGroupMember -Group "Administrators" -Member "ftpuser"
  1. 验证:Get-LocalUser 可看到刚建的用户

2)系统设置(管理用户)

  • Win+I → “账户” → “家庭和其他用户”
  • 可添加/删除用户、改权限,但不能精细管理组,配合命令行更稳

3)第三方工具(图形化,省心)

  • 下载:Computer Management 替代工具(如 AOMEI Partition Assistant 标准版)
  • 打开工具 → 找“用户管理” → 可建用户、改组,与 lusrmgr.msc 类似

四、常见问题排查

  1. 命令打不开:确认是家庭版 → 走家庭版方案
  2. 权限不足:用管理员终端执行命令
  3. 系统文件损坏: 管理员终端执行:
 sfc /scannow
 DISM /Online /Cleanup-Image /RestoreHealth

完成后重启重试

五、后续 FTP 配置衔接

建完用户后,继续做 IIS FTP 授权:

  1. 打开 IIS → 你的 FTP 站点 → “FTP 身份验证”:禁用匿名,启用基本身份验证
  2. “FTP 授权规则” → 添加允许规则:选“指定用户”,填刚建的 ftpuser
  3. 给 FTP 物理目录加权限:右键目录 → “属性” → “安全” → 添加 ftpuser,分配读取/写入
  • 一句话总结:
    • 专业版用 lusrmgr.msc 或修复 MMC 单元;
    • 家庭版用 PowerShell 命令行建用户,或用第三方工具。
    • 建完用户后按上面步骤配置 IIS,即可指定非当前账户登录 FTP。

要在 Linux 图形界面(或命令行)访问 Windows FTP 时指定非当前 Windows 账户,核心是两点:

  1. Windows 端:先建好独立 FTP 用户(本地账户)
  2. Linux 端:连接时强制填入该用户名+密码

下面分 Windows 配置 和 Linux 访问 两部分讲清楚。

使用非当前Windows账号登录

一、Windows 端:创建专用 FTP 用户(IIS)

Windows 自带 IIS FTP 只能用 Windows 本地用户/域用户 登录,不能凭空造账号。

1. 创建 Windows 本地用户

  • 按 Win+R → 输入 compmgmt.msc → 打开 计算机管理
  • 左侧:系统工具 → 本地用户和组 → 用户
  • 右侧空白右键 → 新用户:
    • 用户名:ftpuser(自定义)
    • 密码:设强密码
    • 取消:用户下次登录时须更改密码
    • 勾选:密码永不过期、用户不能更改密码
    • 点 创建 → 关闭

2. 配置 IIS FTP 站点(关键)

  • 打开 IIS(Win+R → inetmgr)
  • 选中你的 FTP 站点 → FTP 身份验证:
    • 禁用 匿名身份验证
    • 启用 基本身份验证
  • 再进入 FTP 授权规则 → 添加允许规则:
    • 选择:指定用户
    • 填入:刚才建的 ftpuser
    • 勾选 读取 / 写入(按需)
  • (重要)给 FTP 物理目录加权限:
    • 右键 FTP 目录 → 属性 → 安全
    • 添加用户 ftpuser → 赋予 读取/写入 权限

二、Linux 端:用指定用户登录(图形+命令)

方法 1:文件管理器(Nautilus/Dolphin)最常用

  1. 打开文件管理器
  2. 地址栏直接写(强制指定用户):
 ftp://ftpuser@192.168.1.100
  • ftpuser = 你在 Windows 建的专用用户
  • 192.168.1.100 = Windows FTP 地址
  1. 弹出框:
    • 用户名:已自动填 ftpuser
    • 密码:输入 Windows 上的密码
    • 连接

带端口写法(非21):

ftp://ftpuser@192.168.1.100:2121

方法 2:连接到服务器

  • 文件管理器 → 左侧 其他位置
  • 底部 连接到服务器
  • 服务器地址填:
  ftp://ftpuser@192.168.1.100
  • 点 连接 → 输密码

方法 3:命令行(ftp / lftp)指定用户

(1)系统 ftp

ftp 192.168.1.100
# 连接后手动指定用户
user ftpuser
# 再输密码

(2)lftp(推荐,支持 binary/passive)

lftp ftpuser@192.168.1.100
# 或带密码(一次性)
lftp ftpuser:密码@192.168.1.100

# 进入后必开
binary
passive
ls

以上就是针对ftp服务传输二进制文件时遇到问题的解决方案分享汇总。

如果对发布的文章感兴趣,欢迎留言评论。合作事宜请关注◀️  🍩微信朋友圈。应粉丝朋友要求,精选了一些专业类书籍,有需要的朋友请前往▶️  🏪阿斌的橱窗。  声明:本文内容仅供参考交流。引用、转发本文需注明原文来源,不得擅自篡改、截取内容用于商业用途。部分引用内容如有侵权,请通过微信联系删除。       
热爱生活分享技术心向远山

最新文章

随机文章