Linux to Linux 远程连接


vnc
这玩意是个好东西,图形界面都可以远程使用。使用图形界面的系统设置-服务设置-所有服务,把其中vncserver服务打开。
1、必须安装的软件:
vncserver和vncviewer。RHEL AS4光盘上已经有这些东西了,如果没有安装,可以使用添加删除程序把他们安装上,记得还要有KDE或者GNOME。没有安装的话你配置的再对也不会出现图形界面。
如果没有可以从这里下载:http://www.realvnc.com/download.html,for Windows和for Linux的Server/Viewer都要。在Windows下装上VNC,可以只装Viewer,因为XP下已经有桌面共享功能了;在Linux下装上VNC,解压后直接运行vncinstall即可。
2、进入我的Linux帐户(我用的是root),编辑主目录下的.vnc/xstartup为如下内容:
gnome桌面的配置文件如下:
#!/bin/sh

# Uncomment the following two lines for normal desktop:
# unset SESSION_MANAGER
# exec /etc/X11/xinit/xinitrc

[ -x /etc/vnc/xstartup ] && exec /etc/vnc/xstartup
[ -r $HOME/.Xresources ] && xrdb $HOME/.Xresources
xsetroot -solid grey
vncconfig -iconic &
xterm -geometry 80x24+10+10 -ls -title "$VNCDESKTOP Desktop" &
gnome-session &

配置成kde桌面的配置文件如下:
#!/bin/sh

# Uncomment the following two lines for normal desktop:
# unset SESSION_MANAGER
# exec /etc/X11/xinit/xinitrc

[ -x /etc/vnc/xstartup ] && exec /etc/vnc/xstartup
[ -r $HOME/.Xresources ] && xrdb $HOME/.Xresources
xsetroot -solid grey
vncconfig -iconic &
xterm -geometry 80x24+10+10
startkde &
我用的是KDE。
3、在我的帐户中打开终端,运行vncserver,(第一次使用可能会要求输入授权密码,以后要改动的话可以用vncpassword命令),会显示类似下面的提示:
New 'lint:1 (lint)' desktop is root:1
Starting applications specified in xxx/.vnc/xstartup
Log file is xxx:1.log
说明Server1已经创建成功,这时应该已经开始启动同帐户的VNC Server了。
4.此时已经可以在Linux注销当前会话,并登录到别的会话了,只要不关机,一般是不会影响到已经启动的VNC Server的。当然,也可以使用vncserver -kill来关掉指定的vnc server。
这时要在Windows下利用VNC Viewer登录到Linux。
首先启动VNC Viewer,然后输入远端主机的地址后加上VNC Server的标识号(:0表示当前桌面),这个号取决于上面用vncserver命令启动的server号,如提示为New 'lint:1 (lint)' desktop is root:1,则输入的地址后要加上:1,其他的依此类推。
输入后会要求输入启动服务器时输入的授权密码,确定即可看到1号vncserver的KDE界面了。
5、相关配置:
修改/etc/sysconfig/vncservers
VNCSERVERS="1:root"
ARGS="-geometry 1024x768 -alwaysshared "
在ARGS 中修改"1024x768"来适应自己的X桌面实际参数配置。可以在这里添加任何其他VNC服务器参数配置。在VNCSERVERS中修改 jdimpson为你希望运行VNC桌面的用户。VNCSERVERS中的1表示VNC以桌面1运行,如果希望添加其他的桌面,可以修改配置如下:
VNCSERVERS="1:jdimpson 2:phred 3:sysadmin"


使用ssh得到远程shell
OpenSSH 是 SSH (Secure SHell) 协议的免费开源实现。它用安全、加密的网络连接工具代替了 telnet、ftp、 rlogin、rsh 和 rcp 工具。
使用 OpenSSH 工具将会增进你的系统安全性。 所有使用 OpenSSH 工具的通讯,包括口令,都会被加密。 telnet 和 ftp 使用纯文本口令,并被明文发送。这些信息可能会被截取,口令可能会被检索,然后未经授权的人员可能会使用截取的口令登录进你的系统而对你的系统造成危害。你应该尽可能地使用 OpenSSH 的工具集合来避免这些安全问题。
另一个使用 OpenSSH 的原因是,它自动把 DISPLAY 变量转发给客户机器。换一句话说,如果你在本地机器上运行 X 窗口系统,并且使用 ssh 命令登录到了远程机器上,当你在远程机器上执行一个需要 X 的程序时,它会显示在你的本地机器上。如果你偏爱图形化系统管理工具,却不能够总是亲身访问该服务器,这就会为你的工作大开方便之门。
关于ssh的一个好帖:http://www.chinaunix.net/forum/viewtopic.php?t=111248。
RHEL AS4默认以ssh替代了telnet,并且是默认开放的。如果没有,使用图形界面的系统设置-服务设置-所有服务,把其中sshd服务打开。随便找一个客户端工具就可以试一下行不行了,比如SecureCRT。
配置文件位置:/etc/ssh*
服务程序位置:/etc/init.d/sshd


使用cygwin远程连接linux桌面

cygwin工具是free的。不过你安装cygwin时需要连其中的x-free86-Win32 & Open-ssh,这样完全可以用cygwin的功能来远程登录kde或gnome,

在cygwin的命令行下:
1. 执行
#startxwin.bat,
可以看到一个XWindow的根窗口出来了。
2. 执行
#xterm -display 127.0.0.1:0.0
这时候在XWindow的根窗口里会出现一个console窗口,
您可以在里面执行任何cygwin命令
3. 在第二步的console窗口里,键入
#xhost + (若有出错,忽略之)
这将允许连接远程的x客户
4. 如果你要显示另一台linux的桌面(目标),
(假设对方ip为192.168.0.22,自己的ip为192.168.0.8),
#ssh root@192.168.0.22 成功登陆后(也可能是其它已存在的用户),在进入ssh中执行下面命令.
#export DISPLAY=192.168.0.8:0.0 (DISPLAY是环境参数,为大写)
#startkde
这时候您就登录kde窗口了。

相关内容