您的位置:首页 > 其它

ubuntu12.04安装vnc,并使用ssh加密隧道连接

2016-08-14 18:26 639 查看
服务器是Ubuntu 12.04,先在上面安装vnc。因为vnc默认是通过5901端口明文传输数据,远程连接的时候并不安全。一个可行的解决方案是,vnc走ssh的加密隧道,实现安全通信。

1.安装vnc

假设ubuntu服务器当前已经成功安装了ssh,我们能顺利连接。先安装vnc:

sudo apt-get install vnc4server


第一次启动,会要求输入8位密码:

vncserver


启动成功后,我们用vnc viewer连接过去可以看到此时并没有桌面。接着打开配置文件:

sudo vi ~/.vnc/xstartup


删除全部内容,直接将如下全部代码复制过去,保存:

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

[ -x /etc/vnc/xstartup ] && exec /etc/vnc/xstartup
[ -r $HOME/.Xresources ] && xrdb $HOME/.Xresources
xsetroot -solid grey
vncconfig -iconic &
x-terminal-emulator -geometry 80x24+10+10 -ls -title "$VNCDESKTOP Desktop" &
# x-window-manager &

export DESKTOP_SESSION=ubuntu-2d

export GDMSESSION=ubuntu-2d
export STARTUP="/usr/bin/gnome-session --session=ubuntu-2d"
$STARTUP


这时,关闭之前的,再重新启动一次就可以看到桌面了。

vncserver -kill :1
vncserver -geometry 1280x800


(-geometry可指定vnc桌面的分辨率,这里我设成我笔记本屏幕的分辨率)

现在使用VNC Viewer就可以连接成功了,但此时它会提示当前连接没有加密。

2.建立ssh 隧道

这里我使用了Windows下的putty这个小软件,它是一个Telnet、SSH、rlogin、纯TCP以及串行接口连接软件。官方下载地址:

http://www.chiark.greenend.org.uk/~sgtatham/putty/download.html

接下来会使用ssh tunnel,将服务器的5901端口映射到本地的5901端口,使得vnc连接时能使用这条加密tunnel。

打开putty,在红线处输入服务器的ip。等全部设置完后,可以在save session处输入一个名字,点击save按钮。这样下次就不用再配置了,直接点击相应进行load就好。



设置每隔10秒发送包过去,防止自动断开。



设置tunnel,记得输入后要点击add。



点击open,按提示输入账号密码连接成功后就可以了。

3.vnc连接

这时候我们使用vnc viewer直接连localhost:1就可以了。

内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: