在Linux实例上自动安装并运行VNC Server

  • A+
所属分类:Linux
高性能企业级服务器首台5折

您可以使用本文提供的脚本在Linux实例上自动安装并运行VNC Server,实现远程图形化管理Linux服务器。目前,该脚本仅适用于CentOS实例,会在CentOS实例中安装GNOME桌面环境。

VNC Server脚本

适用镜像:目前仅适用于CentOS镜像。

使用方法:以root身份执行命令 

1
bash install_vnc_server.sh

下载地址:

1
http://docs-aliyun.cn-hangzhou.oss.aliyun-inc.com/assets/attach/41181/cn_zh/1504062842088/install_vnc_server.sh

使用说明

这部分内容以CentOS 7.4 64位操作系统为例,说明如何在Linux实例里自动安装并运行VNC Server,使您可以从Windows系统通过VNC Viewer远程连接到Linux实例。

前提条件

您的实例处于 运行中 状态。如果实例未启动,先 启动实例

您已经在Windows系统里下载并安装了 VNC Viewer

操作步骤

按以下步骤操作:

  1. 远程连接Linux实例
  2. 运行命令下载脚本install_vnc_server.sh。
    1. 1
      <span class="pln">wget http</span><span class="pun">:</span><span class="com"><span class="hljs-regexp">//</span>docs-aliyun.cn-hangzhou.oss.aliyun-inc.com<span class="hljs-regexp">/assets/</span>attach<span class="hljs-regexp">/41181/</span>cn_zh<span class="hljs-regexp">/1504062842088/i</span>nstall_vnc_server.sh</span>
  3. 以root身份运行脚本,安装VNC Server。

    1. 1
      <span class="pln"><span class="hljs-keyword">bash </span>install_vnc_server</span><span class="pun">.</span><span class="pln">sh</span>

    安装需要较长的时间。当屏幕上出现以下信息时,表示VNC Server安装完成。您需要记录显示的随机密码。

    说明:如果脚本执行报错可以多尝试几次。

    安装成功

  4. 运行以下命令,在返回结果中查看Xvnc服务正在使用的端口。
    1. 1
      <span class="pln"><span class="hljs-attribute">netstat </span></span><span class="pun"><span class="hljs-attribute">-</span></span><span class="pln"><span class="hljs-attribute">tulnp</span></span>

    在本示例中,返回结果里Xvnc进程的信息示例如下所示。

    1. 1
      <span class="typ">Active</span> <span class="typ">Internet</span><span class="pln"> connections </span><span class="pun">(</span><span class="pln">only servers</span><span class="pun">)</span>
    2. 1
      <span class="typ">Proto</span> <span class="typ">Recv</span><span class="pun">-</span><span class="pln">Q </span><span class="typ">Send</span><span class="pun">-</span><span class="pln">Q </span><span class="typ">Local</span> <span class="typ">Address</span>               <span class="typ">Foreign</span> <span class="typ">Address</span>             <span class="typ">State</span><span class="pln">       PID</span><span class="pun">/</span><span class="typ">Program</span><span class="pln"> name</span>
    3. 1
      <span class="pln">tcp        </span><span class="lit">0</span>      <span class="lit">0</span> <span class="lit">0.0</span><span class="pun">.</span><span class="lit">0.0</span><span class="pun">:</span><span class="lit">5901</span>                <span class="lit">0.0</span><span class="pun">.</span><span class="lit">0.0</span><span class="pun">:*</span><span class="pln">                   LISTEN      </span><span class="lit">1975</span><span class="pun">/</span><span class="typ">Xvnc</span>
    4. 1
      <span class="pln">tcp        </span><span class="lit">0</span>      <span class="lit">0</span> <span class="lit">0.0</span><span class="pun">.</span><span class="lit">0.0</span><span class="pun">:</span><span class="lit">6001</span>                <span class="lit">0.0</span><span class="pun">.</span><span class="lit">0.0</span><span class="pun">:*</span><span class="pln">                   LISTEN      </span><span class="lit">1975</span><span class="pun">/</span><span class="typ">Xvnc</span>

    表示VNC Server正在使用的端口为TCP 5901和6001,其中:

    • TCP 5901:允许VNC客户端通过RFB协议连接VNC Server。使用VNC Viewer连接实例时选择这个端口。
    • TCP 6001:允许Windows X连接VNC Server。
  5. 在实例所在安全组中,添加安全组规则,放行Xnvc服务需要的端口。

    在本示例中需要添加2条安全组规则,分别放行TCP 5901和TCP 6001端口。具体规则如下表所示。

    网络类型 网卡类型 规则方向 授权策略 协议类型 端口范围 授权类型 授权对象 优先级
    VPC 不需要配置 入方向 允许 自定义TCP 分别设置为5901/5901和6001/6001 地址段访问 0.0.0.0/0 1
    经典网络 公网
  6. 如果实例已经启用防火墙,需要添加规则放行端口。具体操作,以您实例里安装的防火墙软件为准。

    在本示例中,以iptables为例,您可以依次执行以下命令添加规则放行TCP 5901和6001端口:

    1. 1
      <span class="pun">[</span><span class="pln">root@iZXXXZ </span><span class="pun">~]#</span><span class="pln"> iptables </span><span class="pun">-</span><span class="pln">A INPUT </span><span class="pun">-</span><span class="pln">p tcp </span><span class="pun">--</span><span class="pln">dport </span><span class="lit">5901</span> <span class="pun">-</span><span class="pln">j ACCEPT</span>
    2. 1
      <span class="pun">[</span><span class="pln">root@iZXXXZ </span><span class="pun">~]#</span><span class="pln"> iptables </span><span class="pun">-</span><span class="pln">A INPUT </span><span class="pun">-</span><span class="pln">p tcp </span><span class="pun">--</span><span class="pln">dport </span><span class="lit">6001</span> <span class="pun">-</span><span class="pln">j ACCEPT</span>
    3. 1
      <span class="pun">[</span><span class="pln">root@iZXXXZ </span><span class="pun">~]#</span><span class="pln"> service iptables save</span>
  7. 按以下步骤在本地Windows系统里通过VNC Viewer连接Linux实例:
    1. 在本地Windows系统里启动VNC Viewer。
    2. 在工具栏里,选择 File > New Connection
    3. 在 Properties 对话框中,配置如下信息后单击 OK
      • VNC Server:输入 
        1
        Linux 实例的公网 IP 地址:5901

      • Name:根据自己需要输入一个连接名称,方便后期管理。
        在VNC Viewer中创建新的连接
    4. 在VNC Viewer主窗口,右击新建连接的图标,并在弹出菜单中选择 Connect
      在VNC Viewer中连接实例
    5. 在弹出的 Authentication 对话框中,输入 VNC Server安装结束后显示的随机密码,并单击 OK

      注意
      这里使用的密码并不是实例的登录密码。

      输入连接密码

至此,您已经成功登录到Linux实例。

常见问题

第一次登录CentOS 6实例时,系统提示我登录身份为root super user(如下图所示),我该怎么处理?

CentOS6下提示root super user

这是一个正常的提示。您可以按以下步骤操作::

  1. 选择 Do not show me this again
  2. 单击 Close 关闭对话框。

 

发表评论

:?: :razz: :sad: :evil: :!: :smile: :oops: :grin: :eek: :shock: :???: :cool: :lol: :mad: :twisted: :roll: :wink: :idea: :arrow: :neutral: :cry: :mrgreen: