You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

使用ssh username@ip连接Vagrant虚拟机时出现Permission denied(publickey)错误

解决SSH直接连接Vagrant虚拟机出现Permission denied (publickey)的问题

我来帮你搞定这个问题~其实原因很简单:Vagrant在创建虚拟机的时候,会生成一套自己的SSH密钥对,vagrant ssh命令会自动使用这套密钥去完成认证;但你直接用ssh ubuntu@192.168.33.71时,系统会尝试用你本地默认的SSH密钥(比如~/.ssh/id_rsa),而虚拟机里的authorized_keys文件只添加了Vagrant自带密钥的公钥,所以就被拒绝啦。

下面给你几种解决办法,选一个适合你的就行:

方法一:指定Vagrant的密钥文件登录

直接在ssh命令里指定Vagrant默认的私钥文件,就能和vagrant ssh一样成功连接:

  1. 执行以下命令(Linux/macOS):
    ssh -i ~/.vagrant.d/insecure_private_key ubuntu@192.168.33.71
    
    如果是Windows系统,路径换成你的用户目录下的.vagrant.d,比如:
    ssh -i C:\Users\你的用户名\.vagrant.d\insecure_private_key ubuntu@192.168.33.71
    
  2. 注意:如果Linux/macOS下提示密钥权限过高,先执行这个命令修改权限:
    chmod 600 ~/.vagrant.d/insecure_private_key
    

方法二:把你本地的公钥添加到虚拟机的授权列表

这样之后你就能直接用默认密钥登录,不用每次指定:

  1. 先通过vagrant ssh正常进入虚拟机。
  2. 在宿主机的终端里,复制你本地的SSH公钥内容:
    cat ~/.ssh/id_rsa.pub
    
    (如果还没有生成密钥对,先执行ssh-keygen一路回车生成)
  3. 回到虚拟机的终端,把刚才复制的公钥内容追加到authorized_keys里:
    echo "你复制的公钥内容" >> ~/.ssh/authorized_keys
    
  4. 最后确保权限正确(不然SSH会拒绝):
    chmod 700 ~/.ssh
    chmod 600 ~/.ssh/authorized_keys
    

现在退出虚拟机,再执行ssh ubuntu@192.168.33.71就能正常连接了。

方法三:开启虚拟机的密码登录

如果你更习惯用密码登录,可以修改Vagrant配置开启密码认证:

  1. 打开你的VagrantFile,添加以下配置内容:
    Vagrant.configure("2") do |config|
      config.vm.box = "ubuntu/xenial64"
      config.vm.network "forwarded_port", guest: 80, host: 8071
      config.vm.network "private_network", ip: "192.168.33.71"
      # 新增以下配置
      config.ssh.password = "ubuntu" # ubuntu/xenial64默认密码是ubuntu
      config.vm.provision "shell", inline: <<-SHELL
        sudo sed -i 's/PasswordAuthentication no/PasswordAuthentication yes/' /etc/ssh/sshd_config
        sudo systemctl restart sshd
      SHELL
    end
    
  2. 保存后执行以下命令重启虚拟机并应用配置:
    vagrant reload --provision
    

之后再执行ssh ubuntu@192.168.33.71,输入密码ubuntu就能登录了。

内容的提问来源于stack exchange,提问作者itsvks

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.27 06:54:51