gpt4 book ai didi

visual-studio-code - 2FA 与 VS 代码远程 SSH?

转载 作者:行者123 更新时间:2023-12-05 09:30:52 29 4
gpt4 key购买 nike

我正在使用 Remote-SSH Visual Studio Code 中的扩展以连接到远程计算机。此远程计算机受 Duo 的双因素身份验证保护。当我在终端(在 VS Code 之外)中使用 SSH 时,我能够完美地登录——终端提示我完成 2FA 过程。但是,当我使用扩展程序时,在 VS Code 中无法登录。输入我的 SSH 主机名和 ID 后,VS Code 界面会一遍又一遍地提示我输入密码,并且不会超出该点。

有没有人遇到过这个问题?我很想知道是否有现有的解决方案。不幸的是,2FA 由我的公司管理,我无法将其关闭。

最佳答案

我遇到了同样的问题,并通过使用 SSH ControlMaster for Single Singe-On 解决了这个问题。

如果您使用 <user_name>@<host_name> 连接到相关机器您只需将以下内容添加到您的 ~/.ssh/config :

Host <nickname>
User <user_name>
HostName <host_name>
ControlMaster auto
ControlPath ~/.ssh/%r@%h:%p

如果您现在在运行 ssh <nickname> 的终端中打开一个新 session 系统会要求您提供密码和 2FA key 。但是所有其他后续的 ssh session (包括 svn、rsync 等通过 ssh 运行的 session )将搭载初始连接而不需要重新验证。

您现在可以在 VS Code 中选择 Remote-SSH: Connect to Host...从命令面板 (F1, ⇧⌘P) 并简单地输入:<nickname>并且 ControlMaster 将使用已经存在的连接自动连接您。 enter image description here

就我而言,我选择的昵称是“ody”。连接 VSC 的远程开发扩展后,左下角显示以下内容,让我浏览远程计算机上的文件。

enter image description here

来自FASCR :

请注意,所有后续连接都依赖于初始连接——如果您退出或终止初始连接,所有其他连接也会终止。如果意外发生,这显然很烦人。通过在后台设置主连接可以轻松避免这种情况:

ssh -CX -o ServerAliveInterval=30 -fN <nickname>

-fN 使其在验证后进入后台并闲置。 (C 用于压缩,Y 用于 X 转发,o ServerAliveInterval=30 用于防止断开连接与 ControlMaster 无关,但几乎总是有用的。)

请注意,所有端口转发,包括 X 显示转发,都必须在初始连接时设置并且不能更改。

关于visual-studio-code - 2FA 与 VS 代码远程 SSH?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/69277631/

29 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com