Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/ssh/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
密码短语中的SSH转义序列_Ssh_Putty - Fatal编程技术网

密码短语中的SSH转义序列

密码短语中的SSH转义序列,ssh,putty,Ssh,Putty,我需要从SSL私钥文件中删除密码短语。我正在使用 openssl rsa -in in.key.pem -out out.key.pem 这样做。我面临的问题是,该密钥文件的密码短语(该密码短语是在另一台机器的某处生成的)看起来像这样: ~Casdfghetc 您可能已经了解到,该密码短语的“~C”部分会生成一个新的命令行,使我无法正确输入密码短语。引用、重复引用等等都不起作用。 我正在使用putty连接到这个外壳,通过一个金色的主机(powerbroker)跳转。这是一个高效、安全的环境,

我需要从SSL私钥文件中删除密码短语。我正在使用

openssl rsa -in in.key.pem -out out.key.pem
这样做。我面临的问题是,该密钥文件的密码短语(该密码短语是在另一台机器的某处生成的)看起来像这样:

~Casdfghetc
您可能已经了解到,该密码短语的“~C”部分会生成一个新的命令行,使我无法正确输入密码短语。引用、重复引用等等都不起作用。 我正在使用putty连接到这个外壳,通过一个金色的主机(powerbroker)跳转。这是一个高效、安全的环境,因此我无法以任何其他方式登录计算机。关于如何让它工作,有什么建议吗?

方法1。正如所指出的那样:

转义序列仅在换行后识别

因此,当询问密码短语时,您可以执行以下操作:

  • 在键入密码短语之前键入一些字母,例如
    a
  • 按Backspace键将其撤消/删除
  • 像往常一样键入您的密码短语
  • 路2。在我的系统上,按“~?”显示以下帮助:

    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.)
    

    所以,要在换行符之后插入波浪线(
    ~
    ),只需按两次(
    ~
    )。您的系统可能也是如此:只需键入
    ~~Casdfghetc
    而不是
    ~Casdfghetc

    什么?油灰处理瓷砖(~)特别?这很奇怪。我不明白为什么“~C”可以充当Ctrl+C.1。您确定您确实按了Shift+C(表示“C”),而不是Ctrl+C(并且您确实按了Shift+~(表示“~”),而不是Shift+Escape)?2.如果您尝试在“~”和“C”之间键入一些字符(并用退格符将它们删除),会发生什么情况?3.在原始bash中键入“~Casdfghetc”(例如,
    echo“~Casdfghetc”
    )会发生什么?在bash中键入~C会立即生成一个新的命令行。(在该页面上搜索“SSH转义序列”)。要输入密码短语,我实际上尝试了复制粘贴、手动输入、在~之后键入除“C”以外的其他字符,等等。。。如果我没有获得新的命令行,则密码输入不正确。编辑:我应该提到这是一个旧的solaris系统,我无法控制它的配置。正如我所说的,安全的生产环境。@peph说得很清楚,~C和其他tilde序列的特殊处理不是SSH协议固有的一部分,也没有文档记录它是putty特性。它是unix系统上广泛使用的
    ssh
    命令行实用程序的一个功能。在您的问题中,您说您正在使用putty,但您没有说任何关于使用
    ssh
    实用程序的内容。我的猜测是,不管您是否意识到,
    ssh
    实用程序及其tilde序列都包含在这里。或者可能是我错过了一个油灰的特性。