贴纸家居 2024-04-18 22:40 采纳率: 80%
浏览 26

使用VS2022连接openEuler虚拟机失败

img

openEuler版本是22.03
虚拟机运行正常,使用windows的ssh可以成功连接虚拟机,尝试从主机传文件到虚拟机没有问题。

img

但是当我尝试使用Visual Studio连接时,用户名填写处显示“身份验证失败。请确保凭据正确。”密码填写处显示“密码无效”。
将用户名改成虚拟机上的其他用户也是一样的情况。

其他尝试:

img

img

将/etc/ssh/sshd_config文件中以上几行去注释。

  • 写回答

2条回答 默认 最新

  • 阿里嘎多学长 2024-04-18 23:03
    关注

    以下内容由CHATGPT及阿里嘎多学长共同生成、有用望采纳:


    问题概括

    目的:解决使用Visual Studio 2022连接openEuler虚拟机时出现的“身份验证失败”和“密码无效”的问题。

    图片内容

    1. 图片1:显示了一个SSH登录提示,要求输入root用户的密码。
    2. 图片2:展示了一个SSH连接对话框,要求填写主机名、端口、用户名和密码,以及身份验证类型。
    3. 图片3:显示了SSH服务配置文件sshd_config中的部分内容,包括LoginGraceTimePermitRootLogin等设置。
    4. 图片4:显示了sshd_config文件中关于密码认证的设置,特别是PasswordAuthenticationPermitEmptyPasswords

    错误原因分析

    1. 凭据问题:可能是Visual Studio中输入的用户名或密码不正确。
    2. SSH配置问题sshd_config文件中的相关设置可能限制了通过Visual Studio进行SSH连接的能力。
    3. 权限问题:如果sshd_config中设置了不允许空密码或者不允许特定用户登录,那么即使密码正确也可能无法连接。

    问题解决方案

    1. 核对凭据:确保Visual Studio中输入的用户名和密码与openEuler虚拟机中设置的一致。
    2. 检查SSH配置:根据上传的图片,PermitRootLogin设置为yes,这意味着允许root用户登录,但需要确保Visual Studio中使用的是正确的密码。同时,PasswordAuthentication没有显示其值,需要确认它是否设置为yes以允许密码认证。
    3. 修改SSH配置:如果PasswordAuthentication设置为no,则需要将其改为yes以允许密码认证。同时,确保没有设置禁止特定用户登录的规则。

    提供示例

    根据图片内容,以下是可能需要修改的sshd_config文件的示例代码:

    # To disable tunneled clear text passwords, change to no here!
    PasswordAuthentication yes
    
    PermitEmptyPasswords no
    

    示例代码运行方式

    1. 以root用户登录到openEuler虚拟机。
    2. 使用文本编辑器(如vinano)打开/etc/ssh/sshd_config文件。
    3. 找到PasswordAuthenticationPermitEmptyPasswords项,进行上述修改。
    4. 保存并关闭文件。
    5. 重启SSH服务以应用更改:systemctl restart sshd

    示例代码预期运行结果

    如果修改正确,Visual Studio应该能够使用正确的用户名和密码成功连接到openEuler虚拟机。如果连接成功,Visual Studio将显示连接成功的提示,并允许用户进行后续操作,如文件传输等。如果仍然无法连接,可能需要进一步检查网络设置或联系系统管理员。

    评论 编辑记录

报告相同问题?

问题事件

  • 创建了问题 4月18日