VNC over SSH 实战记录

Web、Mail、Ftp、DNS、Proxy、VPN、Samba、LDAP 等基础网络服务
回复
头像
嘎嘎军旅长
帖子: 81
注册时间: 2008-01-22 23:29
来自: 美国田纳西

VNC over SSH 实战记录

#1

帖子 嘎嘎军旅长 » 2008-05-07 11:39

背景:
家里台式机A windows XP home Edition; (192.168.2.100)
办公室笔记本B ubuntu (71.23.45.678)
连接状况 A--> router M (192.168.2.1) -->(192.168.1.1) router N (71.23.45.888)--> internet <-- B (71.23.45.888)
本来笔记本用linux挺好,装个虚拟WINDONS XP, 能解决某些学术软件的运行问题,结果WINDOWS激活不了,干脆就远程连接家的电脑用好了。

尝试一:远程桌面
linux 下载个rdesktop, windows 下打开远程桌面,直接通过笔记本控制台式机(想得挺好,可是XP home edition 下就是没有远程桌面, 郁闷~~)

尝试二:远程桌面第三方软件VNC
软件下载: tightvnc-1.3.9-setup.exe (for windows)作为服务器端
ubuntu 下有自带的vnc viewer 作为客户端(applications->internet->remote desktop viewer)

步骤1: windows 下运行tightvnc-setup.exe
a.双击此可执行文件。出现“欢迎使用TightVNC”(Welcome To TheTightVNC)安装向导。点击“下一步”(Next)。
b.查看GNU通用公共授权的条款,点击下一步,表示同意接受那些条款。
c.指定安装路径并点击下一步。
d.指定须完全安装、最小化安装还是自定义安装。在本例中,我们接受默认设定,进行完全安装,点击下一步。
e.指定是否让安装程序创建开始菜单文件夹,并给定希望使用的文件夹名称,然后点击下一 步。
f. 配置附加设置。默认情况下.vnc文件和TightVNC查看器关联。勾选“把TightVNC 服务器端注册为系统服务”(Register TightVNC Server as a system service)。然后点击下一步。出现准备安装屏幕(Ready To Install Screen)

步骤2: windows 下配置tightvnc
a.确保TightVNC已设置成作为系统服务启动。这样才能保证万一你需要远程连接时TightVNC是活动的,即使没有用户在场或者坐在远程工作站旁也没关系。可以在安装时选中“把TightVNC服务器端注册为系统服务”选项。

b.为TightVNC会话设置密码。双击Windows系统托盘中的VNC图标,在“当前用户属性”(Current User Properties)对话框的“客户端接入连接”(Incoming Connections)框中指定密码。
c.点击“WinVNC:当前用户属性对话框”的“高级”(Advanced)按钮配置其它设置,选中禁止使用空密码,允许绕回连接(loopback connection),点击“应用”(Apply),然后点击“确定” (OK)关闭所有打开的窗口。

d.确保Window防火墙(以及其它任何基于软件和硬件的防火墙)已经配置成允许TightVNC访问网络。在Windows系统中,点击开始|控制面板|Windows防火墙,然后选择“例外”(Exceptions)选项卡。确保WinVNC选择框被打勾;否则,Windows防火墙会阻止你的连接尝试。

e. 端口选项,默认为自动端口号5900, 我改成了6161.

f. router M--> 设置成虚拟服务器端口映射 (6163-->6161)

g. router N--> 设置成虚拟服务器端口映射 (8888-->6163)

步骤3: ubuntu 下直接运行 vnc viewer (applications->internet->remote desktop viewer) 输入router N的外部地址和端口号 71.23.45.888:8888 输入密码即可远程登陆。

尝试三:利用 SSH tunnel传输的 VNC

GOOGLE 了一下发现直接VNC 有安全隐患,利用SSH传输就安全得多了。

软件下载: winSSHD.exe 作为为 windows 下的SSH 服务器端。linux 下有自带ssh 命令

步骤一: a. 在直接VNC成功的前提下,在WINDOWS下安装WINSSHD;进入WINSSHD的控制面板;
b. 建立 SSH的用户和帐号;
c. forward 端口号到本机的6161 端口(好像不用也可以,待更新)
d. 防火墙当然要打开22 端口
e. 两router 也要转发22 端口以便建立SSH连接

步骤二: a. 客户端(笔记本)先用命令 ssh -L 5901:localhost:6161 username@71.23.45.888 输入密码后就建立了笔记本和台式机的SSH 连接, 同时SSH服务器端也打开了6161端口
b. 客户端再使用VNC VIEWER,输入服务器名 localhost:1,即建立了基于SSH VNC远程控制!

tightvnc 部分参考网络(http://net.zdnet.com.cn/network_securit ... 8191.shtml
,其余原创!
Ubuntu 8.04 LTS hardy heron
ACER Extensa 5420
AMD Turion 64X2 TL58
15.4 WXGA
ATi Xpress 1250
2 GB DDR2
160 GB HDD
-------------------------
哪里有什么菜鸟? 我只是把别人学LINUX的时间,都用在了喝咖啡上!
回复