准备

首先准备一台Linux系统的VPS用于转发及认证VNC,在SSH中执行ssh-keygen生成当前公钥和私钥,一切保持默认即可,为了方便不用设置其他参数,然后公钥和私钥均保存在/root/.ssh的文件夹中,将id_rsa.pub文件保存在本地电脑上

设置VNC

进入甲骨文的控制台,打开实例的面板,在左下角找到控制台连接,点击创建控制台连接

然后选择上传保存在本地电脑上的公钥文件

创建好后,选择菜单中的复制Linux/Mac的VNC连接,将复制出来的内容粘贴在文本编辑器中

开启VNC

到刚才提取公钥的Linux VPS上面,将粘贴在文本编辑器中的监听地址localhost:5900改为0.0.0.0:5900然后全选选中后复制,粘贴到提取公钥的Linux VPS上,然后回车

首次连接需要输入两次yes

然后检查需要重置的实例安全组防火墙是否放行5900端口,检测到5900端口被0.0.0.0占用即可,可用下面的代码查询

netstat -anp |grep 5900

如果出现下面这种情况

Unable to negotiate with 130.61.0.255 port 443: no matching host key type found. Their offer: ssh-rsa
kex_exchange_identification: Connection closed by remote host
Connection closed by UNKNOWN port 65535

则需要使用文本编辑器打开编辑下面的文件

# 系统级配置文件
sudo nano /etc/ssh/ssh_config
# 或用户级配置文件
nano ~/.ssh/config

在配置文件中需要添加或编辑以下参数

Host *
    HostKeyAlgorithms +ssh-rsa
    PubkeyAcceptedKeyTypes +ssh-rsa

接着重启ssh服务

sudo systemctl restart sshd

连接VNC

首先需要下载连接VNC的软件,RealVNC

然后在软件中直接输入你的Linux VPS(该VPS不是你需要重置实例密码的VPS,而是你一直ssh连着的VPS)的IP:5900,回车即可开始连接

紧接着会出现不安全的报错,直接忽视即可,随后可以看到VNC的窗口已经打开,鼠标移动到窗口中上方顶部会出现ctrl+alt+del

点击,然后会进入BIOS界面。接下来就可以用netboot.xyz进行系统的重装了

转载

文章转载自龘龘的博客