分类:
2008-10-15 16:25:26
Linux远程控制技术概念和起源
远程控制是在网络上由一台计算机(主控端Remote/客户端)远距离去控制另一台计算机(被控端Host/端)的技术,这里的远程不是字面意思的远距离,一般指通过网络控制远程计算机,不过,大多数时候我们所说的远程控制往往指在局域网中的远程控制而言。
当操作者使用主控端计算机控制被控端计算机时,就如同坐在被控端计算机的屏幕前一样,可以启动被控端计算机的应用程序,可以使用被控端计算机的文件数据,甚至可以利用被控端计算机的外部打印设备(打印机)和通信设备(调制解调器或者专线等)来进行打印和访问,就像你利用遥控器遥控电视的音量、变换频道或者开关电视机一样。
目前主要应用于Linux的远程连接技术大致分为以下三种:
1、基于命令行的方式
Linux命令:telnet.telnet在和windows下均可用,只要打开相应的服务即可。telnet 的所有数据在网络上都是明文传输,所以也有隐患,在实际的生产系统中也基本上废弃不用,而转用更的ssh.但是在某些场合,如内部局域网络, telnet 还是有用武之地的。ssh和telnet类似,但是数据在网络上是加密后再传输的。
rlogin、rsh等r系列命令:因为有较大的安全隐患,所以现在基本上废弃不用。
基于ssh的客户端软件:Secure SSH或PUTTY等客户端工具通过ssh服务来实现下管理Linux的,这些客户端工具配置使用简单,但是它们都无法启动窗口服务的程序或进程,也无法达到远程桌面控制。
说明:命令行的管理方式适合进行初始化、网卡配置等基本操作,不适合做丰富的管理功能。
2、Web管理方式
Web管理方式是另一种管理工具。这种方式提供了简单的管理接口,适合那些功能不是很多的管理工作。
3、基于管理端软件的图形接口方式
基于管理端软件的图形接口方式一般需要完成对系统的配置、管理和监控。图形的管理方式直观,是一种重要的管理工具,适合进行复杂的配置,连接多台服务器,同时支持丰富的审计和日志的功能。
VNC:VNC(Virtual Network Computing,虚拟网络计算)技术是广泛用作程序员和管理员的“生产力工具”。vnc要有个服务端的守护进程,为每个共享的桌面运行。VNC是客户端/服务器架构。
X显示管理器(X display manager)——xdm:Xdm不用再添加额外的客户端软件了。X-Win32是X Window系统服务器,它允许你的系统通过TCP/IP运行X应用程序或Unix系统。支持运行在Sun、HP、SGI、Linux、SCO、AIX和其它Unix工作站和文件服务器上的OpenLook、Motif、CDE、VUE、GDM、Gnome及其它X应用。
Freenx:NX是一个基于X的远程显示软件,但是对X数据进行压缩,重要的特性是能够在低带宽的网络情况下使用X协议。Freenx是NX的GPL版本。
FreeNX是近年来继VNC之后新出现的远程控制解决方案,基本原理是将XWindows的信号压缩后传输到远程客户端显示,而VNC是直接截取屏幕图像处理传输。这样,在同样的传输信道条件下,FreeNX可以比VNC提供更好的操作感和实时性;也正因为其实现原理依赖于XWindows,因此FreeNX目前也就不支持将Windows作为远程控制服务器端。
一、FreeNX服务器端安装
1、软件:
freenx、nx、expect、nc
2、安装软件:
#rpm -ivh nc-1.10-18 RPM for i386
#rpm -i nx-1.4.0-0.fdr.4.i386.rpm
#rpm -i expect-5.4.2.1-1.i386.rpm
#rpm -i freenx-0.3.1-0.fdr.0.noarch.rpm
3、配置nxserver
# /usr/bin/nxsetup ——install
Setting up /etc/nxserver ……done
Setting up /var/lib/nxserver/db ……done
Setting up /var/log/nxserver.log ……done
Setting up known_hosts and authorized_keys2 ……done
Setting up permissions ……done
Ok, nxserver is ready.
PAM authentication enabled:
All users will be able to login with their normal passwords.
PAM authentication will be done through SSH.
Please ensure that SSHD on localhost accepts password authentication.
You can change this behaviour in the /etc/nxserver/node.conf file.
Have Fun!
4、添加用户和密码
# nxserver ——adduser x1
NX> 100 NXSERVER - Version 1.4.0-44 OS (GPL)
NX> 1000 NXNODE - Version 1.4.0-44 OS (GPL)
NX> 716 Public key added to: /home/x1/.ssh/authorized_keys2
NX> 1001 Bye.
NX> 999 Bye
[root@host tmp]# nxserver ——passwd x1
NX> 100 NXSERVER - Version 1.4.0-44 OS (GPL)
New password:
Password changed.
NX> 999 Bye
说明:x1用户必须是服务器已经存在的用户。
5、修改权限
#nxsetup ——install ——setup-nomachine-key
chmod 666 /dev/urandom
# chmod 666 /dev/null
# chmod 640 /var/lib/nxserver/home/.ssh/authorized_keys2
6、启动、查看、停止nx命令
# nxserver ——start: 启动NX服务器
nxserver ——stop: 停止NX服务器
nxserver ——status: 查看NX服务器
nxserver ——restart: 重新启动NX服务器
nxserver ——help: 查看帮助信息
如果你在使用 iptables,你必需打开相应端口:
# iptables -A INPUT -i lo -s 127.0.0.1 -j ACCEPT
#iptables -A INPUT -p tcp ——dport 22 -j ACCEPT
#iptables -A OUTPUT -p udp ——sport 22 -j ACCEPT
# iptables -A INPUT -p tcp ——dport 5000 -j ACCEPT
#iptables -A OUTPUT -p udp ——sport 5000 -j ACCEPT
说明:NxFree服务器完全依赖于SSH进行工作,所以请先确保Linux服务器的Openssh配置无误。
[1]