作者热门文章
- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我已经使用 puttygen 生成了一个 ssh key 对,并且可以在我的 Windows 10 工作站上使用来自 putty 的私钥成功连接到我的 CentOS 服务器:
我想从 Windows PowerShell 连接到服务器并使用 Install-Module posh-ssh
加载 Posh-SSH 模块
我试图创建一个新的 ssh session :
$Credential = Get-Credential
$KeyFile = 'C:\Users\mark\Documents\ssh\privkey.ppk'
$sesh = New-SSHSession -ComputerName neon.localdomain -Credential $credential -Keyfile $KeyFile
Get-Credential
输入了 root 和空白密码但我收到此错误:
New-SSHSession : Invalid private key file.
$privkeyString = Get-Content $KeyFile
$Bytes = [Convert]::ToBase64String([System.Text.Encoding]::Unicode.GetBytes($privkeyString))
$sesh = New-SSHSession -ComputerName neon.localdomain -Credential $credential -KeyString $Bytes
$sesh = New-SSHSession -ComputerName neon.localdomain -Credential $credential -KeyString $privkeystring
最佳答案
New-SSHSession
无法识别 PuTTY 的 key 格式(不幸的是,画廊和项目页面都没有提到这一点,但我在 PowerShellMagazine article 中找到了它)。您需要 OpenSSH 格式的私钥。您可以convert the private key使用 PuTTYgen:
New-SSHSession
使用新的 key 文件:
$computer = 'neon.localdomain'
$username = 'foo'
$keyfile = 'C:\path\to\priv_openssh.key'
$sess = New-SSHSession -Computer $computer -Credential $username -Keyfile $keyfile
关于powershell - 如何使用 ssh 和 PowerShell 中的私钥连接到 linux 服务器?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46388010/
我是一名优秀的程序员,十分优秀!