.阿里的体验实验室的有些实验是有VNC桌面操作的,比如"搭建简易多人在线视频会议系统"就有。
.一个实验有没VNC桌面,点击"开始体验"之后(同时还未"创建资源"),通过右侧有没VNC桌面图标可判断。
- 2023.09.27 all needed operations:
通常: ping不进VncM,但VncM可以ping到PubM,当然MyM可以ping到PubM -
- PubM:
passwd
-> 1
/etc/ssh/sshd_config: GatewayPorts yes; PermitRootLogin yes; PasswordAuthentication yes; "KexAlgorithms" add "diffie-hellman-group1-sha1"(eg. for my xshell-5)service sshd restart
- PubM:
-
- VncM:
passwd
-> 1
/etc/ssh/sshd_config: GatewayPorts not need config, others like PubMssh -fNR
works for both normal user, ie, VncM normal user to ssh normal user of PubM, and MyM can use this tunnel to login into as VncM's root!! only sshd cfg and restart need root on VncM or PubM.ssh -fNR 2222:*:22 root@PubM
*
can be*
orlocalhost
cannot be empty(otherwise report ssh_exchange_identification))ssh -fNR 5909:*:5901 root@PubM
(VNC not need -X, nor sshd_config X11Forwarding)vncserver -kill :1
vncpasswd
vncserver -depth 16 -geometry 800x600
# -localhost=no for tigervnc!
- VncM:
-
- MyM:
ssh root@PubM:2222
real vncviewer.exe, PubM:5909. realvncviewer fail if tighervnc-server started with some args(not want to figure it out yet)
- MyM:
登录办法:
- 首先要开始一个带VNC桌面的实验
- 其次要有一个有公网IP的sshd机器,不妨称为PubM, 比如实验可能同时就带的。通过右侧有无"web terminal"图标可知自带否。
- 在VNC桌面上打开Terminal,以普通用户(即adc)身份开启sshd(系统目前后台并没有sshd).
--- 不开启sshd的效果,是看起来建好了ssh隧道,但实际上一连VNC桌面机就refused。
--- 因为是普通用户,所以sshd的port需大于1023,比如1111
--- 需要自己生成ssh keys,拷不了/etc/ssh/下的,运行'ssh_keygen -t rsa'然后一路enter就可以了
--- 需要配置sshd_config,我是用的deb4的,把默认项也通通打开(以免新版的sshd默认与deb4不同,没试,可以用/etc/ssh/sshd_config试一试),同时Port和HostKeys要更改为1111和刚才生成的rsa key.
--- 因为不知道普通用户的密码,改密码也需要原密码,所以必须得用免密登录:把PubM的rsa pub key(没有就仿上生成一个)追加到/home/adc/.ssh/authorized_keys即可。
--- 以普通用户adc身份启动sshd: /usr/sbin/sshd -f .ssh/sshd_config - VNC桌面的Terminal中开启ssh隧道:ssh 33333:localhost:1111 @
--- 需要输入PubM_user在PubM上的密码
--- 免密就用key:仿上,把VNC的rsa pub key添到/home/PubM_user/.ssh/authorized_keys中. - PubM上即可ssh VNC桌面机了:ssh adc@localhost -p 33333
PubM是可以(也需要)随处用putty之类的登进去的。
注意:
两者都需要可用的sshd:ssh -R 时需要PubM开sshd,VNC此时只是用的ssh而不是sshd,所以VNC没开sshd时进行ssh -R也是成功的;但在PubM上 ssh -p 1111 时,则需要VNC机开sshd,因为VNC此时是被ssh登录的对象。