【Oracle Cloud】甲骨文云使用VNC远程连接

发布于 / 信息应用 / 48 条评论

Oracle在去年九月的开发者大会上宣布了进军公有云市场的规划,并承诺向开发者提供2个永久免费的OPC资源以及其他包括对象存储、数据库等一系列的云计算资源。

博主是去年9.17注册的,经历了几次折腾之后才比较安稳地用上。注册之后我记得我开了两台都是因为密钥配置错误连不上的,后来就再开不出来了,直到一个多月以后才开出来一台。最近注册的门槛又降低了,趁着这个热度水一水吧。

另一台因为折腾换内核,直接失联了两次,失联之后才认识到问题的严重性,UEFI引导有些一键脚本执行下来就是送命的。不过其实甲骨文是提供了VNC的,只是用起来比较复杂,在尝试的过程中还是绕了一些弯路,在这里就简单讲讲我使用的连接方法。


一、准备密钥

首先准备一台Linux系统的VPS用于转发及认证VNC,在SSH中执行ssh-keygen,生成当前系统的公钥及私钥;所有的选项默认即可,这里为了方便用不着设置密码,毕竟不是作为公开使用的。在生成完成后将/root/.ssh/目录下id_rsa.pub保存下来,将其中的公钥内容复制下来。


二、设置VNC

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

选择粘贴SSH密钥,将刚才生成的id_rsa.pub中的公钥内容粘贴进去,当然直接把.pub上传上去也可以。

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


ARM的部分实例在VNC中可能会出现无法输入的情况,可以选择复制Linux/Mac串行控制台的指令,与VNC一样在ssh中执行同样可以进入一个基于文本的串行控制台页面。串行控制台可以搭配netboot.xyz引导实现在线重装,需要把对应版本的efi放置在ESP分区。

# 将netboot.xyz下载到/boot/efi/EFI
x86_64:https://boot.netboot.xyz/ipxe/netboot.xyz.efi
arm64:https://boot.netboot.xyz/ipxe/netboot.xyz-arm64.efi

接下来连接到串行控制台,这时由于窗口未发生变化串行控制台可能没有输出。在网页的服务器管理页面点击重新引导使服务器重启,同时在开启串行控制台的ssh窗口中持续按F2直至进入BIOS页面。在BIOS中依次进入①Boot Maintenance Manager、②Boot From File、③默认盘、④EFI,找到EFI文件夹下的netboot.efi回车进入启动。注意在串行控制台下只能使用Text Install,后续手动的安装过程在此就不再赘述。


三、开启VNC

到刚才提取公钥的Linux VPS上面,将先前导出的VNC连接配置文件中的监听地址localhost:5900改为0.0.0.0:5900,监听地址也可以是ifconfig获取到的本机网卡IP。

随后你可以选择直接复制到ssh的console去执行,也可以放进一个.sh脚本中执行,效果是相同的;执行后可以看到由于是导出公钥的VPS,首次连接两次确认的询问直接输入yes即可,无需你指定私钥即可通过系统的私钥完成认证。

最后在安全组及VPS的防火墙上放行5900端口,检测到端口已被占用后即可。


四、连接VNC

前往RealVNC的网站上下载VNC Connect这个软件(点击前往),支持的平台很多,亦或者其他的VNC工具都是可以的。

在软件中直接输入你的Linux VPS的IP:5900,回车即可开始连接。

其中的不安全报错直接忽略即可,随后可以看到VNC的窗口已正常打开,随后该怎么处理问题就怎么处理。


五、文末结语

甲骨文的VNC连接不止这一种方式,但是这是最简单的一种,如果使用自己的密钥需要在执行的命令中手动指定私钥去完成连接,直接在本地也就是一样的道理。由于在VPS上认证转发建立后是未加密的状态,使用完后请及时关闭或者自己在监听IP那里指定一个不常用的端口。

至于用作转发的VPS,选择一个到你本地比较流畅的即可,VNC本身产生的流量很小,我是建立在另一台甲骨文的OPC上面,用起来是很顺畅的。

最早我也觉得这个VNC太麻烦没啥用,但是直到有一次重启之后网卡不能自己启动,无奈才用到VNC,尝试一次后其实并不算复杂。这个机器能不折腾尽量还是不折腾,即使引导卷可以挂载到另一台机器上dd,最终还是能用就好了,毕竟不知道哪天就会没了(笑)。


*原创文章,转载请注明出处

转载原创文章请注明,转载自: Luminous' Home » 【Oracle Cloud】甲骨文云使用VNC远程连接

  1. 我是dd 为debian 系统之后 然后执行了安装 bbrplus 内核的脚本 重启的时候挂了 现在连不上 不知道有没有遇到这样的 可不可以救活 啊 一年了啊 东京arm

    1. @SecKill bbrplus本来就没编译ARM的内核,又把原来的卸载了,自然就无法开机了。甲骨文不支持Rescue Mode或者ISO挂载,用这个方法也涉及多次的停开机操作,与删除重建无异,建议还是直接删了重新开一台。
      1. @Luminous 现在还能重开的到吗?东京的节点 但是很奇怪的是 我两台amd的一个成功的装了bbrplus内核 一台失败 都是同一个debian 的dd脚本
  2. 用方法能打开VNC了,但是VNC页面提示Guest disabled display

    1. @itgoyo Guest Disabled Display表示当前你的VM没有任何输出,应该是替换内核之类的操作导致的吧?目前也没有比较好的解决方法,尝试在控制台进行强制开关机看看VNC中会不会给出一些选项吧。
  3. sh_exchange_identification: Connection closed by remote host
    好像是权限问题,是用的公钥呀

    1. @DD 我也遇到这个问题,怎么解决啊?连不上啊
      1. @bensoner 尝试一下在同区的OracleVM上执行VNC启动试试?
        1. @Luminous 在网上找了下,发现.ssh下创建一个一个config文件,加入以下几句就可以了 Host * HostkeyAlgorithms +ssh-rsa PubkeyAcceptedAlgorithms +ssh-rsa
        2. @Luminous 现在又出现另外一个问题,我想一台vps,执行VNC连接两台oracleVM,在config上添加host和IdentityFile,UserKnownHostsFile,但提示Permission denied (publickey)提示,折腾了两天都还没搞定。。
  4. 你好。我是甲骨文DD,debian,然后连不上了,使用你的办法进去服务器了,显示图片的界面是还没启动系统的界面,但VNC也无法操作不能手动进。希望您能帮帮我。请看图片
    万分感谢

    1. @jokkt https://tieba.baidu.com/p/7482934872 补图片链接
      1. @jokkt 目前已知的就是ARM的机型在VNC中无法进行操作,看你dd的是x86的系统,并不知道你这是什么情况,从第一项启动就是安装流程、第二项就是原系统引导。建议尽量减少折腾,删除重开也可以。
  5. 连上VNC后显示Guest disabled display.这可咋办啊
    i.loli.net/2021/07/31/mBZJTnajqvgdMpK.png

    1. @Evan 目前你的服务器没有输出任何界面,检查下是不是已经关机了或者休眠了吧
      1. @Luminous 这是实例开着机的情况下这样显示的,重启实例的话会有一两秒能看到bios boot界面
  6. vnc一直卡Connecting to 这里,端口也ping通了。

    1. @嘿嘿 描述的有点宽泛,不清楚你的问题出在哪里,建议检查下自己的操作哦~
      1. @Luminous 就是按步骤从头到第四步都没问题,在VNC Connect软件中直接输入你的Linux VPS的IP:5900,回车即可开始连接。然后一直在连接,连接不上,查过端口,有打开。
        1. @嘿嘿 我跟你一样 请问你解决了吗
  7. 建好opc之后SSH登录 总是显示connection timed out是怎么回事?ping可以50ms

    1. @cyanue VCN里面两个安全列表都要放行才可以的~
  8. 这个登陆的话是需要账号和密码的呀,问题是密码不知道是啥

    1. @二十五画生 密码是你设置的登陆密码啊,如果你一直使用的密钥登陆那确实无解……
      1. @Luminous 谢谢博主,已经搞定啦!我密钥登录然后设置了一个root的密码,改了sshd文件允许root登录,之后就可以和其他服务器一样用SSH登录了
  9. 通过SSH安装 的命令: apt install autocutsel
    =============================
    再通过VNC在服务器上终端运行:autocutsel -f

  10. 甲骨文dd win7后失联了,用你的方法进去vnc了,但是不能操作鼠标键盘是什么原因啊?

    1. @bilibili 这个不太清楚欸,没在Oracle上dd过Windows
  11. centos默认用户名是opc,平时都是用密钥登录,没有设置过密码,连上VNC了,最后那张图中用户名/密码默认是什么?

    1. @ken VNC没有查到密钥登陆的方案,建议去技术论坛咨询下相关信息
  12. 机器已经失联的情况下 还能用你文章的方法开启vnc吗?

    1. @思绪 可以,VNC是硬件层面上的
      1. @Luminous 感谢大佬 成功救活了小鸡 另外请教下 文章中的vnc能复制粘贴吗?还有推荐的其他可以复制粘贴的vnc软件吗?
        1. @思绪 客户端应该都可以吧?我觉得VNC就是救急其他的功能性问题无所谓的……
  13. 注册了 卡的很就扔在那里没有管了

    1. @sss Oracle除了韩国都很残念的
  14. 甲骨文云试过,自己的万事达过不了(悲

    1. @kanokano 唉,能不能过真的是玄学
  15. 请问博主当年注册用的是什么卡
    我好几张虚拟信用卡都过不了

    1. @StevenSa 浦发的卡,虚拟卡现在大概率过不了
  16. 有点麻烦。。。我还是删了重建吧,哈哈

    1. @Glan 2333333,不过开不出来的时候就不行了
      1. @Luminous 脚本开,基本2,3个小时可以开出首尔
  17. 博主问一下,是用什么银行卡注册的呢?我现在用工行和交行的VISA一直不成功

    1. @Xaver 当年限制的比较宽松,我用浦发的卡过的……现在能不能过感觉就是玄学……
      1. @Luminous 我一直提示,We’re unable to complete the transactions😥
        1. @Xaver 试试带着卡片的照片给客服发邮件?我看到有人联系客服之后给过了的。
          1. @Luminous 客服问了句用什么邮箱注册后就不理人了