Solaris 10/11 (x86)下使用VNC

还是在Solaris6的时代曾经挑战了一次vnc server。结果,无果而终。配置太麻烦了。前些天一个同事告诉我,Solaris下vnc服务器可以很简单地配置了,并送来了如下网址:

读完后,试了一下,果然能用了。于是乎,废弃了使用多年的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。以后再起动就不必了。

@linux:~$ 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 的停止

@linux:~$ vncserver -kill :2

2.4. 重新设置Password

@linux:~$ vncpasswd

注意:

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

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

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

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

----------------------分割线----------------------

如果你是系统管理员,可别忘了把xvnc-inetd这个服务给关了。
# svcadm disable xvnc-inetd

如果你启动vncserver时得到错误信息,比如说没找到xauth或Xvnc等,你可以使用如下命令查找。
@linux::~$ find / -name xauth 2>/dev/null
/usr/openwin/bin/xauth
find / -name Xvnc 2>/dev/null
/usr/X11/bin/Xvnc

然后把这两个文件所在的Directory加入你的 .profile (k,ba-shell等)或 .cshrc(c-shell)。

@linux:~$ vi .profile
......
PATH=/usr/bin:/usr/sbin:/usr/local/bin:/usr/local/sbin:/usr/ucb:/usr/ccs/bin:/usr/openwin/bin:/usr/X11/bin
......
再执行,使其生效。
@linux:~$ source .profile

内容版权声明:除非注明,否则皆为本站原创文章。

转载注明出处:https://www.heiqu.com/20907.html