- iOS/Objective-C 元类和类别
- objective-c - -1001 错误,当 NSURLSession 通过 httpproxy 和/etc/hosts
- java - 使用网络类获取 url 地址
- ios - 推送通知中不播放声音
我无法从 Windows 7 通过 ssh 连接到 VMWare Guest CentOS 6.2
我的笔记本电脑上装有 Windows 7 64 位操作系统。在其上安装了 Strawberry Perl 5.16.2。我还安装了 VMWare Player 并在其上运行 CentOS 6.2。
根据我在网上找到的文章,我已经成功地从 PUTTY 无密码 SSH 到 CentOS 6.2。
我在 CentOS 6.2 上创建了用户 perl514。使用下面的脚本,如果我使用用户名和密码登录,一切正常。但它不适用于我使用 PUTTY 附带的 SSH KEYGEN 工具创建的公钥和私钥。
下面是脚本:
#!C:\strawberry\perl\bin\perl.exe
use Modern::Perl;
use Net::SSH2;
my $hostname = '192.168.247.128';
my $username = 'perl514';
my $password = 'redhat';
my $ssh2 = Net::SSH2->new();
say "Connecting to $hostname";
$ssh2->connect("$hostname") || die "PROBELM - $!";
#$ssh2->auth_password("$username","$password") || die "Username/Password not #right";#COMMENTED OUT. This Works. Stuff given below does not work.
$ssh2->auth_publickey ("perl514", "C:\\Users\\winuser\\Documents\\perl\\work\\putty_priv.ppk",
"C:\\Users\\winuser\\Documents\\perl\\work\\public.pub") || die "ERROR", $ssh2->error;
my $chan = $ssh2->channel();
$chan->blocking(0);
$chan->exec('ls -la');
while (<$chan>){ print }
我收到以下错误:
Connecting to 192.168.247.128
ERROR-19LIBSSH2_ERROR_PUBLICKEY_UNVERIFIEDInvalid public key at ssh2.pl line 17.
有了用户名和密码,就可以正常工作了。但不是用公钥和私钥。
我很确定我哪里出错了。请帮助我。
最佳答案
Net::SSH2 要求 key 文件采用与 PuTTY 使用的格式不同的 OpenSSH 格式。
您应该能够使用 PuTTY GUI 转换为 OpenSSH 格式。例如,参见 How to convert SSH keypairs generated using PuttyGen(Windows) into key-pairs used by ssh-agent and KeyChain(Linux) .
更新:
详细转换步骤:
关于linux - Net::SSH2 从 Windows 7 到 VMWare Guest CentOS 6.2 的 ssh 不使用公钥和私钥,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13566913/
我想从另一个来ping一个vmware guest虚拟机。两者都是Windows XP并使用NAT。我将VMnet8的IP手动设置为192.168.18.1。 (不使用自动获取IP地址)。另外,我无法
我有一台 Windows 服务器,其 AD 通过 AD 连接同步到 Azure AD,用户正在使用 O365。然后,该租户中的某些帐户会作为 guest 帐户被邀请到另一个租户。 当我从 AD 中删除
我已经在 VPS Debian Linux 机器上安装了最新版本的 RabbitMQ。尝试通过访客/访客登录,但返回消息登录失败。我做了一些研究,发现出于安全原因,禁止通过访客/访客远程登录。 我还尝
情况是我尝试在IE8(Win 7 guest 操作系统)中测试网页,由于某种原因我在js ajax中使用的开发环境中使用了很多“http://localhost:8000” url,所以我无法通过知识
我在 VirtualBox 中使用 Ubuntu 18.04,在安装 guest 添加后,我可以在 virtualbox-guest-dkms 和 virtualbox-guest-dkms-hwe
除了一个问题,我刚刚让运行 CentOS 的 guest 盒完美运行。我正在尝试挂载共享文件夹。我已按照使用此代码获取共享文件夹“可安装”的说明进行操作: VBoxManage sharedfolde
我正在尝试将内容从主机复制到 guest 计算机,但为了复制,我需要安装 guest 附加磁盘。 或者还有其他方法可以访问 guest 计算机上的主机内容,反之亦然? 最佳答案 从 VirtualBo
在为 Web 应用程序用例图建模时,为用户可以拥有的每个角色创建一个角色是否更好?或拥有一个角色、用户和一个具有特权的矩阵? guest < 用户 < 版主 < 管理员 1: guest 、用户、版主
我正在尝试将内容从主机复制到来宾计算机,但要进行复制,我需要安装来宾添加磁盘。。或者,是否有其他方法可以访问来宾计算机上的主机内容,反之亦然?
关于如何解决该错误的任何想法: 在不支持的计算机上尝试了特定于 guest 的操作准备好与客人沟通。这不应该发生并且是一个错误应该报告。 vagrant up 之后? 最佳答案 如果您尝试在 Wind
我正在尝试使用 Virtual Box、Virtual Box Guest Additions 和 Vagrant 运行 Linux VM,并在我的 Windows 7 机器上安装一个文件夹。我已经尝
首先,使用 QEMU Virtual Machine (Debian Sparc64 Etch 4.0) ,我能够成功地从 Guest 到 Host ( ssh ) 获取 scp 和 MacOS Hi
我正在尝试将 KVM guest (Ubuntu 18.04)添加到本地网络,就像网络中的其他真实服务器一样。我在主机系统(Ubuntu 18.04)中配置了 KVM 桥接接口(interface),
当我使用这个命令时: vagrant up 我得到这个错误: [machine1] GuestAdditions versions on your host (4.3.36) and guest (5
我在我的主机上本地运行 MySQL,并且由于原因™我无法在我的 Vagrant 机器内运行它。我知道有一种方法可以通过 iptables 将所有流量转发到 3306 到主机的 IP 地址和端口来解决这
我已经在两台机器A和B之间建立了rabbitMQ联合,双向, 但是有错误 {auth_failure,"ACCESS_REFUSED - 使用身份验证机制 PLAIN 拒绝登录。有关详细信息,请参阅代
我有一个 Web 项目 GUI.. 我最初只与管理员一起工作。 因此,当管理员使用他的用户名和密码登录时,我使用表单例份验证将他重定向到默认页面“Default.aspx”。 但现在我还必须与 gue
我正在开展一个项目,我必须验证适用于英特尔凌动处理器和 Windows 7 操作系统的平台。 我用过: ManagementClass mgmt = new ManagementClass("Win3
我必须处理这个非常可怕的旧 python 项目,它只能在 Windows xp VM 中运行。有没有办法在主机中使用 pycharm 并连接到 guest 中的解释器(顺便说一句,这是 python
我有一个 PHP 项目,本质上是一家公司的订单处理网站。公司中的每个用户都可以访问该网站,并获得应用程序的特定凭据,以控制对页面和功能的访问。 现在我有一个允许访客访问单个页面的请求。这个请求的复杂点
我是一名优秀的程序员,十分优秀!