telnet与ssh只是基于字符界面的远程控制,如果想要对linux服务器时行桌面的远程控制的话,我们可以安
装vnc-server服务来实现
1. 查看Vnc安装版本。
ps aux|grep Xvnc
2.设置VNC桌面
2.1
我们要为有权可以登录的用户设置登录桌面,修改配置文件/etc/sysconfig/vncservers :
VNCSERVERS="2:username"
VNCSERVERARGS[2]="-geometry 800x600 -nolisten tcp -nohttpd"
-geometry 800x600 桌面分辨率
-nolisten tcp 阻止通过TCP连接VNC服务器
-nohttpd 阻止基于浏览器的VNC客户端连接
2.2.如果没有发现用户目录下有 .vnc (隐藏的)目录,我们需要给用户新建该目录,先转换用户角色,由
root用户变为username用户
su username
mkdir .vnc
cd .vnc/
vncpasswd
XXX
2.3. service vncserver restart
3. web 方式连入,替代VNCView
http://ip:port .port as 5801,5802,.....
桌面号是1的话, 端口号使用5801
4. 杀死某VNC桌面
service vncserver stop
5.VNC服务使用的端口号与桌面号相关,VNC使用TCP端口从5900开始,对应关系如下
桌面号为“1” ---- 端口号为5901
桌面号为“2” ---- 端口号为5902
桌面号为“3” ---- 端口号为5903
……
基于Java的VNC客户程序Web服务TCP端口从5800开始,也是与桌面号相关,对应关系如下
桌面号为 “1” ---- 端口号为5801
桌面号为“2” ---- 端口号为5802
桌面号为“3” ---- 端口号为5803
基于上面的介绍,如果Linux开启了防火墙功能,就需要手工开启相应的端口,以开启桌面号为“1”相应的端
口为例,命令如下
[root@testdb ~]# iptables -I INPUT -p tcp --dport 5901 -j ACCEPT
[root@testdb ~]# iptables -I INPUT -p tcp --dport 5801 -j ACCEPT
6.设置VNC服务随系统启动自动加载
第一种方法:使用 “ntsysv”命令启动图形化服务配置程序,在vncserver服务前加上星号,点击确定,配置
完成。
第二种方法:使用“chkconfig”在命令行模式下进行操作,命令使用如下(预知chkconfig详细使用方法请自
助式man一下)
[root@testdb ~]# chkconfig vncserver on
[root@testdb ~]# chkconfig --list vncserver
vncserver 0:off 1:off 2:on 3:on 4:on 5:on 6:off
使用chkconfig --level 3 vncserver 即可在启动时加载vncserver
7.启动vncserver后,修改/root/.vnc/xstartup,把最后一行 twm& 改成 gnome-session& 或者 kde&(据说
KDE在目前的VNC Viewer上的表现不太稳定)
Linux下检查端口使用状况
1. lsof -i :port
查看某个进程的使用状况
ps -ef | grep ****
ps 的参数非常多, 在此仅列出几个常用的参数并大略介绍含义
-A 列出所有的行程
-w 显示加宽可以显示较多的资讯
-au 显示较详细的资讯
-aux 显示所有包含其他使用者的行程