news 2026/4/15 23:12:21

sshd除了远程shell外还有哪些功能

作者头像

张小明

前端开发工程师

1.2k 24
文章封面图
sshd除了远程shell外还有哪些功能

1. 远程 Shell 访问 (Interactive Shell Login)

这是 SSH 最基础、最常用的功能。

  • 具体作用:登录到远程服务器的命令行界面,获得一个交互式 Shell(如 bash、zsh),就像直接坐在那台机器前操作一样。
  • 用法ssh [选项] [用户]@[主机名或IP]
  • 使用步骤
    1. 打开你的本地终端(Linux/macOS 的 Terminal,Windows 的 PowerShell 或 CMD)。
    2. 输入命令格式ssh username@server_ip
    3. 如果是首次连接,会提示你确认服务器指纹,输入yes
    4. 输入对应用户的密码(如果使用密钥认证且已设置密码,则需要输入密钥密码;如果未设置,则直接登录)。
  • 例子
# 登录到 IP 为 192.168.1.100 的服务器,用户名为 alice ssh alice@192.168.1.100 # 使用特定端口(例如 2222)登录 ssh -p 2222 alice@192.168.1.100
* **成功后**:你的终端提示符会变化,表示你现在发出的所有命令都在远程服务器上执行。

2. 远程命令执行 (Remote Command Execution)

  • 具体作用:在远程服务器上执行单条一组命令,然后立即返回结果并关闭连接。不进入交互式 Shell。
  • 用法ssh [用户]@[主机] “[命令]”
  • 使用步骤
    1. 在本地终端中,将你要执行的命令用引号括起来,放在ssh连接语句的后面。
    2. 执行后,会先进行认证,然后远程执行该命令,输出结果会显示在你的本地终端上。
  • 例子
# 查看远程服务器的当前时间和登录用户 ssh alice@192.168.1.100 "date && who" # 重启远程服务器上的 web 服务 ssh alice@192.168.1.100 "sudo systemctl restart nginx" # 将远程文件的内容输出到本地屏幕 ssh alice@192.168.1.100 "cat /etc/os-release"

3. SFTP (SSH File Transfer Protocol)

  • 具体作用:提供一个安全的、交互式的文件传输通道,用于上传、下载、删除、重命名、创建目录等文件操作。这是最推荐的文件传输方式
  • 用法sftp [用户]@[主机]
  • 使用步骤
    1. 在本地终端输入sftp user@host建立连接。
    2. 进入一个交互式的 sftp 提示符(如sftp>)。
    3. 使用特定的命令来管理文件:
      • put [本地文件]:上传文件到服务器。
      • get [远程文件]:从服务器下载文件。
      • ls:列出服务器上的文件。
      • lls:列出本地当前目录的文件。
      • cd [远程路径]:切换服务器上的目录。
      • lcd [本地路径]:切换本地的当前目录。
    4. 输入exitbye退出。
  • 例子
# 连接SFTP服务 sftp alice@192.168.1.100 # (进入sftp交互界面后) sftp> lcd /home/localuser/Documents # 切换到本地Documents目录 sftp> cd /tmp # 切换到服务器/tmp目录 sftp> put report.pdf # 上传本地report.pdf文件到服务器/tmp sftp> get server_log.txt # 下载服务器的server_log.txt到本地当前目录 sftp> bye # 退出`

4. 本地端口转发 (Local Port Forwarding,-L)

  • 具体作用:将本地计算机的一个端口“映射”或“隧道”到远程网络中的另一台机器的某个端口。所有发送到本地端口的数据都会被加密并通过 SSH 连接转发到最终的目标。
  • 用法ssh -L [本地IP:][本地端口]:[目标主机]:[目标端口] [用户]@[SSH服务器]
  • 使用步骤
    1. 在本地终端执行转发命令。SSH 连接会建立并保持,只要连接存在,转发就有效。
    2. 在本地计算机上,访问localhost:[本地端口]
    3. 流量路径:本地应用 -> localhost:本地端口 -> SSH加密隧道 -> SSH服务器 -> 目标主机:目标端口
  • 例子
    场景:你在家,想访问公司内网db.internal.com的 MySQL 数据库(端口3306),但该数据库不对外开放。你有一台可以访问的跳板机gateway.company.com
# 在本地终端执行: ssh -L 3307:db.internal.com:3306 alice@gateway.company.com # 现在,在你本地的机器上 # 你可以用MySQL客户端连接 localhost:3307 # 这个连接实际上被安全地转发到了内部的 db.internal.com:3306 mysql -u dbuser -p -h 127.0.0.1 -P 3307

5. 远程端口转发 (Remote Port Forwarding,-R)

  • 具体作用:将远程 SSH 服务器的一个端口“反向”映射回本地计算机(或本地网络中的另一台机器)的某个端口。让外部能够通过访问 SSH 服务器来访问你本地的服务。
  • 用法ssh -R [远程IP:][远程端口]:[本地目标主机]:[本地目标端口] [用户]@[SSH服务器]
  • 使用步骤
    1. 在本地计算机上执行转发命令。
    2. 让其他人访问SSH服务器IP:远程端口
    3. 流量路径:外部用户 -> SSH服务器:远程端口 -> SSH加密隧道 -> 本地计算机:本地目标端口
  • 例子
    场景:你在本地电脑(localhost)上开发了一个 Web 应用,运行在 3000 端口。你没有公网 IP,但有一台云服务器public.com。你想让朋友预览你的网站。
# 在你的本地电脑上执行: ssh -R 8080:localhost:3000 alice@public.com
# 现在,你的朋友(或你自己)在浏览器访问 # http://public.com:8080 # 这个请求就会被转发到你本地电脑的 3000 端口

6. SSH 代理转发 (SSH Agent Forwarding,-A)

  • 具体作用:让你本地ssh-agent管理的密钥,通过一条 SSH 连接(跳板机),去认证下一台服务器。你的私钥永远不会离开你的本地电脑,提高了安全性。
  • 用法ssh -A [用户]@[跳板机]
  • 使用步骤
    1. 确保你的私钥已经添加到本地的ssh-agentssh-add ~/.ssh/id_rsa)。
    2. 使用-A选项登录跳板机。
    3. 从跳板机上,你可以继续ssh到其他内部服务器,而无需在跳板机上存储你的私钥。
  • 例子
# 在本地电脑上启动agent并添加密钥 eval "$(ssh-agent -s)" ssh-add ~/.ssh/id_rsa # 输入你的密钥密码 # 使用代理转发连接到跳板机 ssh -A alice@jump-server.company.com # 现在,在 jump-server 的终端里,你可以直接连接内网其他服务器 # 跳板机会向你的本地agent请求签名来完成认证 ssh db-admin@internal-db-server
版权声明: 本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若内容造成侵权/违法违规/事实不符,请联系邮箱:809451989@qq.com进行投诉反馈,一经查实,立即删除!
网站建设 2026/4/15 14:56:55

计算机系统要素:测试文件解读

// 加载16位与门的硬件描述文件 load And16.hdl, // 指定测试输出文件 output-file And16.out, // 指定对比的标准答案文件 compare-to And16.cmp, // 定义输出格式:a(二进制16位)、b(二进制16位)、out(二进制16位) output-list a%B1.16.1 b%B1.16.1 out%B1.16.1;//…

作者头像 李华
网站建设 2026/4/16 14:02:43

第3章:复习篇——第1节:创建和管理数据库

目录 一、使用datagrip软件创建数据库 1.数据库分类 2.数据库的文件组成 (1)数据库文件 (2)数据库文件组 二、使用T-SQL语句创建数据库 1.组成 2.语法格式与说明 (1)格式 (2&#xff…

作者头像 李华
网站建设 2026/4/15 18:26:37

#软件工程团队作业——冲刺计划3

| 项目 | 内容 ||----------|--------------------------|| 课程 | 软件工程团队项目 || 团队名称 | 智能学习资源管理平台团队 || 作业目标 | 完成冲刺计划3 || 参考文献 | Flask官方教程 |## 目录1. 完成学习资源…

作者头像 李华
网站建设 2026/4/16 13:05:17

数据质量系统的设计

数据质量问题,几乎是所有数据团队绕不开的“慢性病”:指标突然跳水,却找不到原因业务同学质疑数据,但只能“手工查表”ETL 跑完才发现数据错了,已经被下游用了真正成熟的数据团队,一定会建设一套系统化的数…

作者头像 李华
网站建设 2026/4/16 14:32:03

OSG-OpenSceneGraph安装配置VS2022(全网最简单)

网上几乎所有教程都需要先下载源码进行编译,过程复杂繁琐,而且容易踩坑报错。今天出一期懒人版配置OSG方法,放心食用。一、下载博主已经编译好的OSG库通过百度网盘分享的文件:vs2022 6... 链接:https://pan.baidu.com/…

作者头像 李华
网站建设 2026/4/16 12:57:00

基于单片机的智能购物车设计

一、设计背景与核心需求 传统超市购物车仅具备承载功能,存在商品统计繁琐、找货耗时、排队结账拥堵等问题,影响购物效率与体验。基于单片机的智能购物车,融合自动识别、路径导航、结算支付等功能,可实现商品自动计价、智能导购、快…

作者头像 李华