原因:

VMware上开了两台虚拟机,想要把一个真机的文件传到另一个虚拟机上时,出现问题。

问题描述

初试 scp kubeapps-12.2.8.tgz 192.168.170.130:/root命令,输入密码后一直显示permission denied,且确定密码无误。

解决方案:

以下所有操作均在root 用户下执行。 1.尝试更改配置文件: 可以改变两台虚拟机的/etc/ssh/sshd_config文件中的配置,看是否起作用,使用vim /etc/ssh/sshd_config访问该文件。 一般配置显示为: #PasswordAuthentication no 或 #PemitRootLogin/without-password 依据实际情况,改成 PasswordAuthentication yes 或 PemitRootLogin yes 没有的话自己加一行即可。 重启服务 /etc/init.d/ssh restart 如果上述操作后仍错误,请尝试第二种方法。 2.使用authorized_keys文件 (1)在真机上输入ssh-keygen -t rsa命令,后续连按回车即可,之后会生成一个密钥。

(2)使用cd /root/.ssh进入目录,查看生成的id_rsa.pub文件。使用vim id_rsa.pub访问文件内容,复制文件内容。 (3)在另一台虚拟机上进入cd /root/.ssh目录,输入touch authorized_keys创建文件,vim authorized_keys访问该文件并将上述id_rsa.pub文件内容拷贝到该文件下。 (4)设置文件权限。在/root路径下使用chmod 700 .ssh,在/root/.ssh路径下 chmod 644 authorized_keys id_rsa.pub命令修改文件权限。修改完后使用ll查看修改结果。 使用scp传输即可。

在我操作的时候出现了一个

The authenticity of host '192.168.170.130(192.168.170.130)'can't be established.

ECDSA key fingerprint is SHA256:jy98y4lw8PjsZ7jzwY0FGqlzbac4+hMG9i2yZRlRWoA.

Are you sure you want to continue connecting(yes/or/[fingerprint])?

这里一定要输入yes,我一般习惯只习惯直接输入一个y,在这里是不通过的。输入yes后,传输成功。

如果经过上述操作后任有问题,考虑是否为需要传输文件的权限问题,将需要传输的文件chmod 777 文件名 修改权限。

文章来源

评论可见,请评论后查看内容,谢谢!!!评论后请刷新页面。