我的窗口机器有 VirtualBox 版本:6.1 和 Vagrant 版本:2.2.14,我已经配置了 3 个虚拟机(主节点、节点 1、节点 2)。我在使用 (ssh-keygen) 作为主服务器的源服务器上生成了一个公钥,并使用 (ssh-copy-id vagrant@192.168.60.5) 在 node1 和 node2 的目标服务器上复制了相同的公钥。现在我正在尝试从 master ssh 到 node1 和 node2 但收到错误
<块引用>权限被拒绝(publickey、gssapi-keyex、gssapi-with-mic)。
我也尝试过 ubuntu、centos7 和 8,但在所有情况下,我都遇到了相同的权限被拒绝错误。 我已尝试使用以下命令为源服务器和目标服务器授予权限。
chmod 700 .ssh
chmod 640 .ssh/authorized_keys
我在 /etc/ssh/sshd_config
中进行了以下更改并重新启动了 sshd (sudo systemctl restart sshd
)
PasswordAuthentication yes
PubkeyAuthentication yes
我遵循了几乎所有在线可用的解决方案,但在我的情况下似乎没有任何效果。
我正在使用的 vagrantfile。如果我在配置虚拟机时在 vagranfile 中犯了任何错误,我将非常感谢自定义我的 vagrantfile。
# -*- mode: ruby -*-
# vi: set ft=ruby :
VAGRANTFILE_API_VERSION = "2"
Vagrant.configure(VAGRANTFILE_API_VERSION) do |config|
config.vm.box = "generic/centos8"
config.ssh.insert_key = false
config.vm.synced_folder ".", "/vagrant", disabled: true
config.vm.provider :virtualbox do |v|
v.memory = 4096
v.cpus = '2'
v.linked_clone = true
end
config.vm.define "master" do |app|
app.vm.hostname = "master"
app.vm.network :private_network, ip: "192.168.60.4"
end
config.vm.define "node1" do |app|
app.vm.hostname = "node1"
app.vm.network :private_network, ip: "192.168.60.5"
end
config.vm.define "node2" do |db|
db.vm.hostname = "node2"
db.vm.network :private_network, ip: "192.168.60.6"
end
end