Solaris 10/11 (x86)下使用vnc - Xvnc

来源:互联网 发布:python opencv 切割 编辑:程序博客网 时间:2024/05/21 10:49

还是在Solaris6的时代曾经挑战了一次vnc server。结果,无果而终。配置太麻烦了。

 

前些天一个同事告诉我,Solaris下vnc服务器可以很简单地配置了,并送来了如下网址:

https://blogs.oracle.com/timthomas/entry/a_simple_vnc_server_zh

 

读完后,试了一下,果然能用了。于是乎,废弃了使用多年的x-server程序。

 

用了几天后,发现了一些问题:

1.  使用vnc server没有password保护。

于是,凡是有vncviewer的,都可以连接你的vnc server。你在干什么看的一清二楚不说,还可以直接操纵你的机器。

作为系统管理员,犯下如此初级错误,你是否觉得追悔莫及?

 

先看原因吧:

# svccfg
svc:> select xvnc-inetd
svc:/application/x11/xvnc-inetd> listprop

............

inetd_start/exec               astring  "/usr/X11/bin/Xvnc -inetd -query localhost -once securitytypes=none"

............

 

看到了吧。xvnc-inetd服务的缺省配置不要求password(securitytypes=none)。

坑人吧?

 

2. 同时不能启动多个vnc server。

 

再查查看,发现这篇文章很有帮助

https://blogs.oracle.com/jasonhuang/entry/vnc_on_solaris_10

(安装部分可以省略不看,因为安装好了的)

 

这个是用户个人起动vncserver的,不需要管理员介入。

 

具体步骤如下

 

2.1. 用户个人起动vncserver

初次使用必须设定password。以后再起动就不必了。

 

zhang@bsapx86:~$ vncserver

 

You will require a password to access your desktops.

 

Password:

Verify:

 

Warning: bsapx86:2 is taken because of /tmp/.X2-lock

Remove this file if there is no X server bsapx86:2

xauth:  file /home/zhang/.Xauthority does not exist

 

New 'bsapx86:3 ()' desktop is bsapx86:3

 

Creating default startup script /home/zhang/.vnc/xstartup

Starting applications specified in /home/zhang/.vnc/xstartup

Log file is /home/zhang/.vnc/bsapx86:3.log

 

上例中,vnc server在2号Display

(bsapx86:2)

 

2.2. 用 vncviewer 连接

在vncviewer的窗口中要输入bsapx86:2。

(不能只输入bsapx86。)

然后在第2个窗口中输入2.1.中设定的Password。

 

2.3. vncserver 的停止

zhang@bsapx86:~$ vncserver -kill :2

 

2.4. 重新设置Password

zhang@bsapx86:~$ vncpasswd

 

注意:

此方法可以让用户在需要的时候启动vnc server。

但是,如果用户不及时关闭不需要的vnc server,会影响系统功能。

管理员在必要时可通过kill杀掉不必要的vnc server进程。

 

vnc server相关的文件在用户的$HOME/.vnc底下。