ssh可以-i选择在身份验证时告诉使用哪个私钥文件:
-i identity_file选择一个文件,从中读取用于 RSA 或 DSA 身份验证的身份(私钥)。?默认
~/.ssh/identity为协议版本 1~/.ssh/id_rsa和~/.ssh/id_dsa协议版本 2。?身份文件也可以在配置文件中按主机指定。可以有多个-i选项(以及在配置文件中指定的多个身份)。
是否有类似的方法来告诉git在~/.ssh目录中有多个私钥的系统上使用哪个私钥文件?
它曾经记住密码,但现在每次都向我询问。
我读过我需要用这个命令重新生成公钥,我这样做了:
ssh-keygen -y -f id_rsa > id_rsa.pub
Run Code Online (Sandbox Code Playgroud)
但它没有解决任何问题。
如何让 macOS 再次记住我的密码?
通过 SSH 隧道传输数据非常简单:
ssh -D9999 username@example.com
Run Code Online (Sandbox Code Playgroud)
将端口 9999 设置localhost为到 的隧道example.com,但我有更具体的需求:
localhosthost1 可以访问 localhosthost2 只接受来自 host1localhost到创建一个隧道host2实际上,我想创建一个“多跳”SSH 隧道。我怎样才能做到这一点?理想情况下,我希望在不需要成为任何机器上的超级用户的情况下执行此操作。
生成密钥时,您会从较新版本的 OpenSSH 中获得“randomart”。我无法找到原因的解释,以及我应该用它做什么。
Generating public/private rsa key pair.
The key fingerprint is:
05:1e:1e:c1:ac:b9:d1:1c:6a:60:ce:0f:77:6c:78:47 you@i
The key's randomart image is:
+--[ RSA 2048]----+
| o=. |
| o o++E |
| + . Ooo. |
| + O B.. |
| = *S. |
| o |
| |
| |
| |
+-----------------+
Generating public/private dsa key pair.
The key fingerprint is:
b6:dd:b7:1f:bc:25:31:d3:12:f4:92:1c:0b:93:5f:4b you@i
The key's randomart image is:
+--[ DSA 1024]----+
| o.o |
| .= E.|
| .B.o| …Run Code Online (Sandbox Code Playgroud) 我正在尝试在 Ubuntu 服务器上设置无密码 SSH ssh-copy-id myuser@myserver,但出现错误:
警告:“myserver”的 ECDSA 主机密钥与 IP 地址“192.168.1.123”的密钥不同
这是什么原因造成的,我该如何解决?我尝试删除.ssh远程机器上的目录,并在ssh-keygen -R "myserver"本地运行,但这并不能解决错误。
我正在通过 SSH 连接到服务器,以使用如下命令向套接字服务器发送消息:
SSH 181.169.1.2 -p 5566
建立连接并编写消息并发送后,我无法退出文本模式。我只允许输入更多文本,仅此而已。
是否有命令或组合键可以让我返回命令模式?
我在工作中使用 SSH 隧道绕过各种 idotic 防火墙(我的老板没问题:))。问题是,一段时间后 ssh 连接通常会挂起,并且隧道被破坏。
如果我至少可以自动监控隧道,我可以在它挂起时重新启动隧道,但我什至没有想到这样做的方法。
可以告诉我如何防止我的 ssh 连接挂起的人当然可以加分!
我有一个启用了 ssh 访问的 hostgator 帐户。尝试使用以下命令上传生成的 .pub 密钥文件时:
rsync -av -e "ssh -p2222" /home/user/.ssh/key.pub username@111.222.33.44:.ssh/authorized_keys
Run Code Online (Sandbox Code Playgroud)
我不断得到:
从 111.222.33.44 收到断开连接:2:用户名身份验证失败太多 rsync:连接意外关闭(到目前为止已收到 0 个字节)[发送方] rsync 错误:io.c(601) [sender=3.0.7] 处的无法解释的错误(代码 255)
我之前一直在玩 ssh,直到我遇到身份验证失败。但是现在似乎身份验证失败计数器没有重置(现在已经等了 12 多个小时,技术支持“假设”它在 30 分钟到 1 小时后重置,另一个人告诉我“每次尝试登录时它都会重置用户名”,jeesh)。
这让我发疯。我什至在 Slicehost 自定义服务器中设置了这个,并且比这些人遇到的问题更少。
有小费吗?也许这是客户端而不是服务器端的东西。
我已经在 Windows 7 中安装了 OpenSSH 7.6 以进行测试。SSH 客户端和服务器工作正常,直到我尝试从此窗口访问我的 AWS EC2 盒之一。
看来我需要更改私钥文件的权限。这可以通过chmod命令在 unix/linux 上轻松完成。
窗户呢?
private-key.ppm 是直接从 AWS 复制的,我猜也是这个权限。
C:\>ssh -V
OpenSSH_7.6p1, LibreSSL 2.5.3
C:\>ver
Microsoft Windows [Version 6.1.7601]
C:\>
C:\>ssh ubuntu@192.168.0.1 -i private-key.ppk
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
@ WARNING: UNPROTECTED PRIVATE KEY FILE! @
@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@@
Permissions for 'private-key.ppk' are too open.
It is required that your private key files are NOT accessible by others.
This private key will be ignored.
Load key "private-key.ppk": bad permissions
ubuntu@192.168.0.1: Permission denied (publickey).
C:\> …Run Code Online (Sandbox Code Playgroud) 当我通过 ssh 连接到某些服务器时,它会超时并“冻结”终端(不接受输入,不会断开连接,不能 Ctrl-C 终止 ssh 进程或任何其他东西)。
这是在 Ubuntu 中,gnome-terminal虽然它似乎暂停了终端输入/输出,但不影响 GNOME 终端软件本身的操作。gnome-terminal与其说是令人讨厌的 ssh 不一致,不如说是一个错误。
那么,有没有办法阻止/从已超时的 ssh 连接中恢复终端?
ssh ×10
linux ×2
private-key ×2
security ×2
cryptography ×1
git ×1
macos ×1
networking ×1
openssh ×1
permissions ×1
shell ×1
ssh-keys ×1
terminal ×1
timeout ×1
tunnel ×1
virtualbox ×1
windows ×1