还是在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