AskOverflow.Dev

AskOverflow.Dev Logo AskOverflow.Dev Logo

AskOverflow.Dev Navigation

  • 主页
  • 系统&网络
  • Ubuntu
  • Unix
  • DBA
  • Computer
  • Coding
  • LangChain

Mobile menu

Close
  • 主页
  • 系统&网络
    • 最新
    • 热门
    • 标签
  • Ubuntu
    • 最新
    • 热门
    • 标签
  • Unix
    • 最新
    • 标签
  • DBA
    • 最新
    • 标签
  • Computer
    • 最新
    • 标签
  • Coding
    • 最新
    • 标签
主页 / ubuntu / 问题 / 29942
Accepted
Wayne Werner
Wayne Werner
Asked: 2011-03-12 08:22:22 +0800 CST2011-03-12 08:22:22 +0800 CST 2011-03-12 08:22:22 +0800 CST

ssh 锁定时如何摆脱它?

  • 772

我经常从学校 ssh 到我家的盒子,但通常当我换班并且我的电脑挂起时,管道会坏掉。但是,ssh 只是锁定 - Ctrl+ c,Ctrl+z和Ctrl+d无效。

不得不重启我的终端很烦人,更烦人的是不得不关闭并重新创建一个新的屏幕窗口。

所以我的问题是,有没有一种简单的方法可以让 ssh 正常死掉(即当管道“正常”失败时,它会退出并显示有关管道损坏的消息)?还是我必须弄清楚PID是什么并手动杀死它?

ssh
  • 3 3 个回答
  • 192770 Views

3 个回答

  • Voted
  1. Best Answer
    geekosaur
    2011-03-12T09:18:37+08:002011-03-12T09:18:37+08:00

    普通密钥通过ssh会话转发,因此这些都不起作用。相反,请使用转义序列。杀死当前会话随后命中Enter,,,~。.

    (请记住,在~设置为作曲字符的国际键盘中,您必须敲击两次:Enter, ~, ~, .)

    更多这些转义序列可以用Enter, ~,列出?:

    Supported escape sequences:
         ~.   - terminate connection (and any multiplexed sessions)
         ~B   - send a BREAK to the remote system
         ~C   - open a command line
         ~R   - request rekey
         ~V/v - decrease/increase verbosity (LogLevel)
         ~^Z  - suspend ssh
         ~#   - list forwarded connections
         ~&   - background ssh (when waiting for connections to terminate)
         ~?   - this message
         ~~   - send the escape character by typing it twice
    (Note that escapes are only recognized immediately after newline.)
    

    您可以通过点击关闭 Escape 序列列表Enter。

    请注意,由于点击~~会导致ssh发送~而不是拦截它,因此您可以通过点击N次来处理N个嵌套ssh连接。(这仅适用于直接跟在 . 之后的 s 。)也就是说,终止5 层深度的会话并保持其他 4 层不变。~ ~EnterEnter~~~~~.ssh

    • 614
  2. ulidtko
    2011-03-12T10:51:12+08:002011-03-12T10:51:12+08:00

    您可能还想为 SSH设置应用程序级别的 keep-alives ,以防止它因连接问题而冻结。我的~/.ssh/config包含这个:

    Host *
    ServerAliveInterval 15
    # ServerAliveCountMax 3
    

    这使得 ssh 客户端每 15 秒发送一次应用程序级保持活动。每当其中三个连续失败(默认值ServerAliveCountMax)时,客户端将连接视为挂起并关闭它。

    与另一个选项相反TCPKeepAlive,这是在加密通道中检查的并且不可欺骗。


    值得注意的是,这些保持活动还有助于,嗯,保持长时间空闲的连接,即防止您将半关闭的tcp 会话挂起几个小时而不受影响。

    如果您经常遇到此问题,我强烈建议您打开此功能,但您也应该了解它可能带来的轻微安全风险。如果攻击者知道空闲连接的时间间隔和内容,已知明文攻击可能会变得更容易。这可能是默认情况下未启用它的原因。

    • 66
  3. scottl
    2011-03-15T22:39:02+08:002011-03-15T22:39:02+08:00

    正如 geekosaur 的回答中所述,转义序列~.将终止连接。

    转义序列的完整列表以及它们的作用可以通过键入来显示~?:

    Supported escape sequences:
      ~.  - terminate connection (and any multiplexed sessions)
      ~B  - send a BREAK to the remote system
      ~C  - open a command line
      ~R  - Request rekey (SSH protocol 2 only)
      ~^Z - suspend ssh
      ~#  - list forwarded connections
      ~&  - background ssh (when waiting for connections to terminate)
      ~?  - this message
      ~~  - send the escape character by typing it twice
    (Note that escapes are only recognized immediately after newline.)
    
    • 47

相关问题

  • Gnome-terminal 快捷方式在选项卡中打开多个 ssh 连接

  • 通过 SSH 禁用密码访问?

  • ssh 如何使用多个私钥?

  • 如何通过一个 SSH 连接拥有多个终端会话?

  • 如何与无头服务器进行图形交互?

Sidebar

Stats

  • 问题 205573
  • 回答 270741
  • 最佳答案 135370
  • 用户 68524
  • 热门
  • 回答
  • Marko Smith

    如何运行 .sh 脚本?

    • 16 个回答
  • Marko Smith

    如何安装 .tar.gz(或 .tar.bz2)文件?

    • 14 个回答
  • Marko Smith

    我需要什么命令来解压缩/提取 .tar.gz 文件?

    • 8 个回答
  • Marko Smith

    如何列出所有已安装的软件包

    • 24 个回答
  • Marko Smith

    无法锁定管理目录 (/var/lib/dpkg/) 是另一个进程在使用它吗?

    • 25 个回答
  • Marko Smith

    如何使用命令行将用户添加为新的 sudoer?

    • 7 个回答
  • Marko Smith

    更改文件夹权限和所有权

    • 9 个回答
  • Martin Hope
    EmmyS 我需要什么命令来解压缩/提取 .tar.gz 文件? 2011-02-09 14:50:41 +0800 CST
  • Martin Hope
    Ivan 如何列出所有已安装的软件包 2010-12-17 18:08:49 +0800 CST
  • Martin Hope
    La Ode Adam Saputra 无法锁定管理目录 (/var/lib/dpkg/) 是另一个进程在使用它吗? 2010-11-30 18:12:48 +0800 CST
  • Martin Hope
    David Barry 如何从命令行确定目录(文件夹)的总大小? 2010-08-06 10:20:23 +0800 CST
  • Martin Hope
    jfoucher “以下软件包已被保留:”为什么以及如何解决? 2010-08-01 13:59:22 +0800 CST
  • Martin Hope
    David Ashford 如何删除 PPA? 2010-07-30 01:09:42 +0800 CST

热门标签

10.10 10.04 gnome networking server command-line package-management software-recommendation sound xorg

Explore

  • 主页
  • 问题
    • 最新
    • 热门
  • 标签
  • 帮助

Footer

AskOverflow.Dev

关于我们

  • 关于我们
  • 联系我们

Legal Stuff

  • Privacy Policy

Language

  • Pt
  • Server
  • Unix

© 2023 AskOverflow.DEV All Rights Reserve