返回

WinSCP + SUDO 搞定:如何在 Linux 上安全传输文件?

Linux

使用 WinSCP 和 SUDO 在 Linux 上安全地传输文件

引言

在系统管理中,传输文件是日常操作。当需要将文件从 Windows 机器传输到 Linux 机器时,使用像 WinSCP 这样的工具可以轻松完成。但是,当目标 Linux 机器上的用户没有写入权限时,使用 SUDO 命令提升特权就显得很有必要。这篇文章将分步指导你如何在 WinSCP 中运行 SUDO 命令,以便安全地将文件从 Windows 传输到 Linux。

先决条件

  • 已安装并配置 WinSCP
  • 拥有目标 Linux 机器 root 权限的 SSH 密钥

第 1 步:连接到 Linux 服务器

启动 WinSCP 并输入目标 Linux 服务器的信息,包括主机名/IP 地址、用户名和端口号。点击 "Login" 按钮建立连接。

第 2 步:导航到目标目录

连接成功后,在 WinSCP 的右侧窗格中,导航到要传输文件的目标 Linux 目录。

第 3 步:打开终端窗口

在 WinSCP 菜单栏中,选择 "Commands" > "Open Terminal"。这将在 WinSCP 中打开一个终端窗口。

第 4 步:输入 SUDO 命令

在终端窗口中,输入以下命令:

sudo su

按 Enter 键。系统将提示你输入 root 密码。输入密码并按 Enter 键。

第 5 步:传输文件

现在你已经提升到 root 权限,可以在 WinSCP 的左侧窗格中导航到要传输的文件。选择文件并将其拖放到右侧窗格中目标目录的窗口中。

第 6 步:退出终端窗口

传输完成后,在终端窗口中输入以下命令退出 root 权限:

exit

第 7 步:断开连接

传输完成后,你可以点击 WinSCP 窗口右上角的 "Disconnect" 按钮断开与 Linux 服务器的连接。

注意:

  • 确保你拥有目标 Linux 服务器 root 权限的 SSH 密钥。
  • 始终小心使用 SUDO 命令,因为它会授予你系统上的最高权限。
  • 传输文件时使用安全连接,例如 SFTP 或 FTPS。

结论

通过按照这些步骤,你可以使用 WinSCP 运行 SUDO 命令,以便将文件从 Windows 传输到 Linux,即使目标 Linux 机器上的用户没有写入权限。通过提升到 root 权限,你可以获得所需的权限来执行写入操作并成功传输文件。

常见问题解答

  1. 为什么需要使用 SUDO 命令?
    当目标 Linux 机器上的用户没有写入权限时,需要使用 SUDO 命令来提升特权。

  2. 如何获得目标 Linux 机器 root 权限的 SSH 密钥?
    你可以使用 SSH 密钥生成工具,如 PuTTYgen 或 ssh-keygen,来生成 SSH 密钥。

  3. 使用 WinSCP 传输文件是否安全?
    是的,WinSCP 提供了安全的文件传输,因为它使用 SSH 协议来加密数据。

  4. 如何通过 WinSCP 启用 SFTP?
    在 WinSCP 的首选项中,转到 "SFTP" 选项卡并选中 "Enable SFTP subsystem" 旁边的复选框。

  5. 我可以使用其他工具来传输文件吗?
    是的,除了 WinSCP 之外,还有其他工具可以传输文件,例如 FileZilla、Cyberduck 和 Transmit。