全部,
ssh-keygen
我非常擅长在 Linux 上生成密钥和进行公钥/私钥认证,但在 Windows 上基本上是鱼和水。我安装了安装了 Ubuntu bash 的 Win10,在bash 内部使用和设置时没有遇到任何问题出站无需密码即可通过 ssh 访问所有 Linux 主机。这不是这个问题要问的。
这是关于在 Win10 操作系统中本地生成密钥,以便我可以使用密码 ssh 进入 Win10。(不是 WSL bash 实例,而是 Win10 本身)例如,我可以坐在我的 arch 主机上并按如下方式 ssh 进入 Win10:
Arch Host瓦尔哈拉至Win10主机精英(惠普精英工作站):
20:04 valhalla:~> uname -a
Linux valhalla 4.8.3-1-ARCH #1 SMP PREEMPT Thu Oct 20 19:53:59 CEST 2016 x86_64 GNU/Linux
20:04 valhalla:~> ssh elite
david@elite's password:
Microsoft Windows [Version 10.0.14393]
(c) 2016 Microsoft Corporation. All rights reserved.
C:\Users\david>dir /a
Volume in drive C is Windows
Volume Serial Number is EA64-6B82
Directory of C:\Users\david
10/23/2016 03:38 PM <DIR> .
10/23/2016 03:38 PM <DIR> ..
10/22/2016 05:40 AM <DIR> AppData
10/22/2016 05:40 AM <JUNCTION> Application Data [C:\Users\david\AppData\Roaming]
10/22/2016 07:35 AM <DIR> Contacts
10/22/2016 05:40 AM <JUNCTION> Cookies [C:\Users\david\AppData\Local\Microsoft\Windows\INetCookies]
10/22/2016 07:35 AM <DIR> Desktop
10/23/2016 04:17 PM <DIR> Documents
10/23/2016 02:53 AM <DIR> Downloads
10/22/2016 11:40 PM <DIR> Favorites
10/22/2016 07:35 AM <DIR> Links
10/22/2016 05:40 AM <JUNCTION> Local Settings [C:\Users\david\AppData\Local]
10/22/2016 07:35 AM <DIR> Music
10/22/2016 05:40 AM <JUNCTION> My Documents [C:\Users\david\Documents]
10/22/2016 05:40 AM <JUNCTION> NetHood [C:\Users\david\AppData\Roaming\Microsoft\Windows\Network Shortcuts]
10/23/2016 03:37 PM 1,572,864 NTUSER.DAT
10/22/2016 05:40 AM 163,840 ntuser.dat.LOG1
10/22/2016 05:40 AM 131,072 ntuser.dat.LOG2
10/23/2016 03:38 PM 1,048,576 NTUSER.DAT{de890eec-984b-11e6-b234-9452f8984253}.TxR.0.regtrans-ms
<snip>
C:\Users\david>exit
Connection to elite closed.
20:04 valhalla:~>
问题是 ”有没有办法在 Win10 上本地生成 ssh 密钥(ecdsa)?(例如id_ecdsa
和id_ecdsa.pub
)和“如果是的话,你把它们放在窗户的哪里“?(是否有用户.ssh
目录,他们去哪里了?)
最坏的情况下, ”我可以在 Linux 上生成密钥对,然后将该密钥对移至 Win10 并告诉 Windows 使用它吗?”(如果是,请回答同样的问题)他们会去哪里“?”)
(顺便说一句,能够通过 ssh 进入 Windows 操作系统真是太令人印象深刻了,16 年来,我使用 Linux 时一直认为这是理所当然的事情,但当它进入 Win10 时,我还是有点惊讶:)
答案1
您可能需要耐心等待...
原生 Windows SSH 服务(与 WSL 中的相反sshd
)似乎没有太多关于它的文档。它似乎与 WSL 一起出现,但据我所知,它在某种程度上是分开的。
完成关键任务的大致时间表:
Date Task 3/31/2016 Reliability Enhancements 5/15/2016 Security Enhancements 10/15/2016 Code Prep for integration 10/30/2016 Integration in main repo
以下 Windows 特定功能/工作项目不在该期限范围内:
- MINGW 构建支持
- 使用 MS CNG(而不是 OpenSSL)
- 使用 MS CNG 进行密钥管理
- Xterm、VT220 终端模式
- ETW 日志记录(Windows 中的 syslog 替代品)
(我强调)
但请注意,您现在/很快就可以在 Windows 下的 Ubuntu (WSL) 下从 Bash 运行本机 Windows 可执行文件。sshd
因此,在 WSL 中使用可能适合一些迄今为止有问题的用例。