ssh-config

具有多个密钥的 ssh-agent
ssh-config

具有多个密钥的 ssh-agent

我有一个脚本,它从存储库数据库中检索私钥并将它们添加到 ssh-agent 中ssh-add - <<<"----My Private Key----" 密钥不会存储在文件系统上。问题是我只能使用前三个添加的私钥登录。键 4 到 10 不起作用,因为远程服务器对失败登录尝试设置了限制,即 3。不幸的是,我不允许增加失败登录尝试的限制。有没有办法告诉 ssh 除了使用哪个代理密钥ssh -i <private key file> ...

Admin

SSH 配置:如何停止重复设置/将其放在通配符主机中?
ssh-config

SSH 配置:如何停止重复设置/将其放在通配符主机中?

我有一个重复设置remoteCommand,如果可能的话,我想将其添加到通配符主机中。 这是一个截断的片段: host container-server host container-1 remoteCommand docker exec -it containerHostname-01 bash host container-2 remoteCommand docker exec -it containerHostname-02 bash host container-2 remoteCommand docker exec -it co...

Admin

我可以在某种配置文件中使用这些别名吗?
ssh-config

我可以在某种配置文件中使用这些别名吗?

我有很多这样的别名,=之前的部分是ssh配置中的主机 alias sshConfigHost='ssh -t hostname docker exec -it containerName bash' 我可以将它们添加到某种配置文件中吗?主机名是在 ssh 配置中定义的,因此它在某种程度上被使用了两次,我是否可以有一个像%<whatever>这样的占位符,它将从 ssh 配置中获取主机名。 如果没有,那么我至少可以在 ssh 配置中包含容器名称,然后使用占位符将其拉入 cmd 中吗? ...

Admin

ssh 配置:我可以有 2 个主机通配符吗?
ssh-config

ssh 配置:我可以有 2 个主机通配符吗?

简化示例: host one user cat host two hostname 2 host three hostname 3 host * hostname 1 host * user apple identityFile ~/.ssh/id_rsa host y hostname 7 host t hostname 8 host * user duck identityFile ~/.ssh/quack 这可能吗? 第一个主机之上的主机host *将仅继承其值,而第二个主机将仅继承hos...

Admin

ssh 配置:我有很多主机,我想分别使用 2 个不同通配符主机的设置,请查看我的尝试
ssh-config

ssh 配置:我有很多主机,我想分别使用 2 个不同通配符主机的设置,请查看我的尝试

我有 2 组主机,我想使用 2 个单独的通配符主机的设置。 我也有大量的主机,因此需要帮助确定哪种风格最适合这种情况。主机的格式大多为x1 x2 x3... 我的尝试: 1: host one user cat host two hostname 2 host three hostname 3 host one two three user apple identityFile ~/.ssh/id_rsa host x1 hostname 7 host y2 hostname 8 host z3 hostname ...

Admin

ssh 配置:我可以替换代理命令吗?
ssh-config

ssh 配置:我可以替换代理命令吗?

这是我的标准工作 ssh 配置,每个人都使用: host go User user ProxyJump otherHostname StrictHostKeyChecking=no UserKnownHostsFile=/dev/null IdentityFile ./ssh/key ProxyCommand ssh -i ~/.ssh/key -W %h:%p otherUser@OtherHostname 这proxyCommand部分让我感到困扰,因为 ssh 配置的重点是没有使用命令。 命令参数是否有选项意味着配置中不会有 ...

Admin

通过中间机器使用隧道创建到 VNC 服务器的 ssh 配置
ssh-config

通过中间机器使用隧道创建到 VNC 服务器的 ssh 配置

我最近发现了 ssh 配置文件,可以在其中设置常用的 ssh 连接。但是,我在转换一个将我的计算机连接到隐藏在中间服务器后面的服务器上运行的 VNCServer 的命令时遇到了麻烦。基本上改变这个命令(有效): ssh -t -L port1:localhost:port2 [email protected] ssh -L port2:localhost:port3 [email protected] 在vncviewer localhost:0单独的窗口中,进入 ssh 配置文件。我设法创建一个连接到机器的配置而不抛出任何Failed...

Admin

在 SSH 配置中将多个接口添加到一个 IPv6 主机名
ssh-config

在 SSH 配置中将多个接口添加到一个 IPv6 主机名

现在,我可以~/.ssh/config通过本地链路 IPv6 访问嵌入式设备: Host someDevice # Hostname fe80::dcad:beff:feef:cafe%%eth0 Hostname fe80::dcad:beff:feef:cafe%%enxf875a44106f9 User root [some more options...] 我不希望每次网络接口发生变化时都进行手动交互。 两者都被注释后,SSH 将仅使用第一个。 为每个主机使用不同的主...

Admin

当 ssh 对他们来说太旧时,有条件地跳过 ssh-config 选项?
ssh-config

当 ssh 对他们来说太旧时,有条件地跳过 ssh-config 选项?

我如何使用SetEnv(以及不同系统上的相同配置),但在太旧而无法支持它~/.ssh/config时不抛出错误?ssh 我尝试添加一条语句以在太旧时Match exec排除该设置(OpenSSH < 7.8):ssh Host server.example.com webhost User jacktose HostName server239.example.com Match host "server.example.com webhost" exec "ssh -V 2>&1 | sed -nE '/^OpenSSH...

Admin

ssh_config 中的 Match all 和 Host * 块有什么区别
ssh-config

ssh_config 中的 Match all 和 Host * 块有什么区别

当我查看当前的 OpenSSH 客户端配置文件并仔细阅读ssh_config(5)手册页时,我发现,根据我的理解, 和Match all都会Host *实现相同的结果。 Match因此,我想知道它们满足相同需求的事实是否是两者和块的其他用法的副作用Host,或者两者之间是否存在细微的差异? 编辑: 看完问题的答案后741771(谢谢@muru的建议),我仍然有一些疑问: 在其中,@BlockchainOffice 首先说: Match all 块匹配所有主机,相当于 Host *。 我理解为“它们可以以完全相同的方式使用”。然而,后来他补充道: Mat...

Admin

HostName 中 ssh 配置中的占位符
ssh-config

HostName 中 ssh 配置中的占位符

我试图简化以下部分: Host sandbox* Port 22 User myUser ProxyCommand=nc -X 5 -x gateway.test.io:1080 %h %p Host sandbox9 HostName 1.0.9.10 Host sandbox10 HostName 1.0.10.10 Host sandbox11 HostName 1.0.11.10 我读到,我可以在主机名中使用 %h,它看起来像这样: Host sandbox* Port 22 User myUs...

Admin

在 ssh 配置中,“匹配规范全部”是什么意思?
ssh-config

在 ssh 配置中,“匹配规范全部”是什么意思?

我想CanonicalizeHostname在我的 ssh 配置中使用它,这样就可以添加和删除主机,而无需编辑文件。 Host bastion ProxyJump none Match canonical ProxyJump bastion ForwardAgent yes Host * ForwardAgent no CanonicalizeHostname always CanonicalDomains mydomain.co.uk CanonicalizeMaxDots 0 Canon...

Admin

有条件包含在 ssh_config 中
ssh-config

有条件包含在 ssh_config 中

根据ssh_config(5)语句Include可以放置在MatchorHost块内部来创建条件包含 包括:包括指定的配置文件。可以指定多个路径名,每个路径名可以包含glob(7)通配符,并且对于用户配置,可以~包含对用户主目录的类似 shell 的引用。通配符将按词汇顺序扩展和处理。~/.ssh如果包含在用户配置文件中或/etc/ssh包含在系统配置文件中,则假定没有绝对路径的文件位于 in 中。Include 指令可能会出现在 Match 或 Host 块内以执行有条件纳入。 我试图完成这项工作,但似乎总是读取每个包含的文件,而忽略找到的匹配项。到底...

Admin

如果“Match exec”命令不返回 0,则让 OpenSSH 退出
ssh-config

如果“Match exec”命令不返回 0,则让 OpenSSH 退出

我使用 SSHMatch exec功能在建立连接时触发脚本,例如: Match host foo* exec "/some/script.sh" Host foo User ubuntu [... rest of ssh config file truncated ...] 我面临的问题是 ssh 将继续进行任何连接,无论使用 exec 调用的脚本的退出代码如何(/some/script.sh在本例中)。 如果脚本退出非零代码,有什么办法让它停止一切(不继续进行 ssh 连接)? ...

Admin

多个 IP 地址的 SSH 配置(循环或随机)
ssh-config

多个 IP 地址的 SSH 配置(循环或随机)

我有一台机器用作 SSH 跳转主机,它有多个以太网端口,每个端口都有自己的 IP 地址(192.168.1.22 和 192.168.1.178,以防万一)。我使用 SSH 来做很多事情,特别是大文件传输。我想在这两个以太网端口之间均匀分配 SSH 流量。我并不关心它是否是循环配置,或者每次连接时它是否随机选择两个 IP 地址之一,只要流量或多或少均匀分布即可。 除此之外,可以通过 SSH 从外部世界访问跳转主机,具有两个端口转发配置,一个端口(假设为 22)指向第一个 IP 地址,另一个端口(假设为 2222)指向另一个 IP 地址。可以说,我弄清楚如何在...

Admin