远程访问与安全文件传输

学习远程访问与安全文件传输。本模块涵盖通过 SSH 连接、SSH 密钥认证、使用 SCP 和 RSYNC 进行安全文件复制、使用 SFTP 进行交互式文件传输、SSH 配置和别名。您将通过实践实验室和真实世界挑战掌握这些基本的 Linux 技能。

DevOps 工程师LinuxDevOps

💡 本教程由 AI 辅助翻译自英文原版。如需查看原文,您可以 切换至英文原版

简介

这门入门课程帮助你建立一套实用的 SSH 远程会话与加密文件传输工作流程。通过 5 个引导式实验,你将连接模拟服务器、建立密钥认证、使用 3 种工具传输文件,并通过 SSH 客户端 Alias 代替重复输入连接信息。

最终部署挑战会综合这些技能:创建密钥对,为准备好的部署账户安装公钥,定义 production Alias,并通过该 Alias 同步 Web 应用目录。

你将学到什么

  • 打开 SSH 会话,判断首次连接的主机指纹提示,验证身份并正常退出
  • 生成 2048 位 RSA 密钥对,并区分私钥与对应公钥
  • 使用 ssh-copy-id 安装公钥,并确认登录时不再提示输入账户密码
  • 使用 scp 上传和下载单个文件
  • 使用归档与详细输出选项的 rsync 通过 SSH 同步目录
  • 在 SFTP 会话中使用 lls、ls、lcd、put 和 get 操作本地与远程两侧
  • 在 ~/.ssh/config 中定义可复用的主机、真实地址和用户设置
  • 通过 SSH Alias 将准备好的 webapp 目录部署到模拟生产账户

本课程适合谁

本课程适合希望通过实践掌握 SSH 访问和安全命令行文件传输基础的 Linux 初学者、开发者,以及有志于从事系统或 DevOps 管理的学习者。

前置要求: 具备基本的终端导航、文件创建与查看能力,并能够编辑文本文件;无需 SSH 管理经验。

学习环境: LabEx 提供的 Ubuntu 环境终端,包含本地 SSH 服务、准备好的 labuser 和 deployer 账户、练习文件,以及隔离的个人 SSH 配置。

常见问题

课程如何组织?

前 5 个实验提供引导式练习。第 6 项是部署挑战,你需要在较少提示下配置密钥和 production Alias,再通过它使用 rsync -av 复制完整的 webapp 目录。

我需要一台单独的远程服务器吗?

不需要。所有远程会话和传输都连接到 localhost 上准备好的账户,因此无需另一台机器或云账户,也能练习客户端与服务器工作流程。

为什么实验使用无口令的 RSA 密钥?

实验明确要求 2048 位 RSA 密钥和空口令,以便在隔离环境中演示自动登录。真实系统中的算法、密钥长度、口令和 Agent 策略应遵循组织安全要求。

什么时候应该使用 scp、rsync 或 SFTP?

课程用 scp 直接复制单个文件,用 rsync 同步目录,用 SFTP 进行交互式会话,在本地与远程两侧浏览并通过 put 和 get 选择文件。

教师

labby
Labby
Labby is the LabEx teacher.