一種基于vnc代理的云計(jì)算環(huán)境中虛擬機(jī)在線錄屏方法與系統(tǒng)的制作方法
【專利摘要】本發(fā)明公開了一種基于VNC代理的云計(jì)算環(huán)境中虛擬機(jī)在線錄屏系統(tǒng)及方法,在線錄屏系統(tǒng)包括VNC客戶端、VNC代理服務(wù)器和安裝在虛擬機(jī)上的VNC服務(wù)器。用戶通過瀏覽器客戶端訪問虛擬機(jī),VNC代理服務(wù)器接收來自瀏覽器的虛擬機(jī)訪問請(qǐng)求,VNC代理服務(wù)器初始化虛擬機(jī)訪問信息并將客戶端帶過來的認(rèn)證信息轉(zhuǎn)發(fā)到VNC服務(wù)器,VNC服務(wù)器對(duì)訪問進(jìn)行安全認(rèn)證,同時(shí),VNC代理服務(wù)器啟動(dòng)錄屏的線程對(duì)虛擬機(jī)的界面進(jìn)行錄屏,并生成錄屏文件保存到VNC代理服務(wù)器上。采用本發(fā)明,能更進(jìn)一步規(guī)范審計(jì)和取證用戶對(duì)虛擬機(jī)的操作,能實(shí)現(xiàn)基于云計(jì)算的虛擬化應(yīng)用或系統(tǒng)在線錄屏的功能。
【專利說明】
一種基于VNC代理的云計(jì)算環(huán)境中虛擬機(jī)在線錄屏方法與系統(tǒng)
技術(shù)領(lǐng)域
[0001]本發(fā)明涉及到虛擬機(jī)遠(yuǎn)程訪問的在線監(jiān)控及錄屏技術(shù),特別涉及一種基于云計(jì)算環(huán)境中在線的對(duì)虛擬機(jī)進(jìn)行訪問及錄屏的方法與系統(tǒng)。
【背景技術(shù)】
[0002]隨著互聯(lián)網(wǎng)技術(shù)及云計(jì)算的迅速發(fā)展,虛擬機(jī)的使用越來越普遍,但技術(shù)的發(fā)展也帶來了越來越多的安全問題,為了更進(jìn)一步規(guī)范審計(jì)和取證用戶對(duì)虛擬機(jī)的操作,基于云計(jì)算的虛擬化應(yīng)用或系統(tǒng)需要提供一種在線錄屏的功能。比如在網(wǎng)絡(luò)攻防演練平臺(tái)中,為了能夠監(jiān)控用戶演練過程中的所有操作,需要將演練全程實(shí)時(shí)錄制下來并進(jìn)行回放。但又不需要將環(huán)境中所有虛擬機(jī)及任何時(shí)候的屏幕都錄制下來,只有用戶在進(jìn)行具體的演練,虛擬機(jī)屏幕有更新的時(shí)候才需要錄制。
[0003]現(xiàn)有技術(shù)中,申請(qǐng)?zhí)枮?01410514245.6的中國發(fā)明專利申請(qǐng)公開了一種基于WEB代理進(jìn)行錄屏審計(jì)的方法及系統(tǒng),該方法中客戶端通過瀏覽器獲取RDP連接信息,并與RDP代理模塊建立連接;RDP代理模塊通過轉(zhuǎn)發(fā)和保存前置機(jī)和客戶端之間的圖形界面數(shù)據(jù),實(shí)現(xiàn)將瀏覽器的運(yùn)行端部署到前置機(jī)上,顯示及操作端部署在客戶端;前置機(jī)瀏覽器在訪問目標(biāo)WEB服務(wù)器過程中,通過WEB代理服務(wù)器與目標(biāo)WEB服務(wù)器通信,由WEB代理服務(wù)器轉(zhuǎn)發(fā)和保存前置機(jī)與目標(biāo)WEB服務(wù)器之間的http數(shù)據(jù);審計(jì)模塊將RDP代理模塊保存的圖形界面數(shù)據(jù),與WEB代理服務(wù)器模塊保存的http數(shù)據(jù)關(guān)聯(lián)起來進(jìn)行錄屏審計(jì)。申請(qǐng)?zhí)枮?01410855090.2的中國發(fā)明專利申請(qǐng)公開了一種云終端錄屏方法,包括以下步驟:步驟十一:Qmeu檢測到連接桌面請(qǐng)求;步驟十二: Qemu進(jìn)程不停檢測是否有斷開桌面連接的請(qǐng)求,有斷開桌面連接的請(qǐng)求則進(jìn)入步驟十六,結(jié)束本次錄屏,保存本次錄屏文件;沒有斷開桌面連接的請(qǐng)求則進(jìn)入步驟十三,繼續(xù)錄屏;步驟十三:視頻幀監(jiān)控模塊檢測有無桌面操作事件并且有無視頻幀變化;步驟十四:此時(shí)的視頻幀為冗余信息,暫停寫入視頻幀數(shù)據(jù)到錄屏文件;步驟十五:通過Qemu接口獲取桌面視頻幀數(shù)據(jù)寫入到本次錄屏文件,即繼續(xù)寫入視頻幀數(shù)據(jù)到錄屏文件;步驟十六:錄屏結(jié)束,保存本次錄屏文件。以上現(xiàn)有技術(shù),均不是基于VNC代理的云計(jì)算環(huán)境中虛擬機(jī)在線錄屏方法與系統(tǒng)。
【發(fā)明內(nèi)容】
[0004]本發(fā)明所要解決的技術(shù)問題是,提供一種基于VNC代理的云計(jì)算環(huán)境中虛擬機(jī)在線錄屏系統(tǒng)及方法,其能更好地實(shí)現(xiàn)云計(jì)算環(huán)境中虛擬機(jī)在線錄屏。
[0005]本發(fā)明的技術(shù)方案是:一種基于VNC代理的云計(jì)算環(huán)境中虛擬機(jī)在線錄屏系統(tǒng),包括VNC客戶端、VNC代理服務(wù)器和安裝在虛擬機(jī)上的VNC服務(wù)器;
[0006]所述VNC客戶端,用于顯示虛擬機(jī)的桌面,實(shí)現(xiàn)基于VNC的RFB遠(yuǎn)程訪問協(xié)議,捕獲用戶對(duì)虛擬機(jī)的鼠標(biāo)及鍵盤消息的輸入,并將虛擬機(jī)桌面的更新數(shù)據(jù)顯示在客戶端上;
[0007]所述VNC代理服務(wù)器,用于接收來自VNC客戶端的虛擬機(jī)遠(yuǎn)程訪問請(qǐng)求,并將請(qǐng)求轉(zhuǎn)發(fā)到VNC服務(wù)器,建立VNC客戶端到VNC服務(wù)器之間的連接通道,并實(shí)時(shí)捕獲VNC服務(wù)端虛擬機(jī)基于RFB協(xié)議的屏幕更新數(shù)據(jù),將桌面幀數(shù)據(jù)轉(zhuǎn)成圖像文件,通過視頻轉(zhuǎn)換模塊將圖像文件轉(zhuǎn)成視頻文件,完成虛擬機(jī)的屏幕錄制;所述VNC服務(wù)器,用于建立與VNC客戶端的連接,處理來自客戶端的桌面更新請(qǐng)求,并將VNC服務(wù)器的桌面數(shù)據(jù)推送給VNC客戶端。
[0008]所述VNC客戶端是javaapplet實(shí)現(xiàn)的能夠鑲嵌在瀏覽器中運(yùn)行的客戶端。
[0009]用戶通過瀏覽器客戶端訪問虛擬機(jī),VNC代理服務(wù)器接收來自瀏覽器的虛擬機(jī)訪問請(qǐng)求,VNC代理服務(wù)器初始化虛擬機(jī)訪問信息并將客戶端帶過來的認(rèn)證信息轉(zhuǎn)發(fā)到VNC服務(wù)器,VNC服務(wù)器對(duì)訪問進(jìn)行安全認(rèn)證,同時(shí),VNC代理服務(wù)器啟動(dòng)錄屏的線程對(duì)虛擬機(jī)的界面進(jìn)行錄屏,并生成錄屏文件保存到VNC代理服務(wù)器上。
[0010]VNC代理服務(wù)器的錄屏線程定時(shí)的抓取基于RFB協(xié)議的虛擬機(jī)桌面數(shù)據(jù),并將數(shù)據(jù)進(jìn)行編碼生成JPEG的圖片,再將JPEG格式的圖片生成MP4視頻文件保存到VNC代理服務(wù)器上。
[0011]采用上述基于VNC代理的云計(jì)算環(huán)境中虛擬機(jī)在線錄屏系統(tǒng)進(jìn)行在線錄屏。
[0012]所述的基于VNC代理的云計(jì)算環(huán)境中虛擬機(jī)在線錄屏方法,具體包括如下流程:
[0013]I)、發(fā)起虛擬機(jī)遠(yuǎn)程訪問的請(qǐng)求;
[0014]2)、VNC代理服務(wù)器接受來自客戶端的虛擬機(jī)請(qǐng)求,解析請(qǐng)求中攜帶的參數(shù);
[0015]3)、VNC代理服務(wù)器初始化錄屏線程的數(shù)據(jù),建立VNC代理服務(wù)器與VNC服務(wù)器的通道;
[0016]4)、VNC代理服務(wù)器開啟錄屏的線程,并標(biāo)記線程正處理錄屏狀態(tài),進(jìn)行安全認(rèn)證;
[0017]5)、在安全認(rèn)證之后,判斷是否需要錄屏,如果不需要?jiǎng)t退出錄屏線程,終止錄屏;如果需要?jiǎng)t進(jìn)行正常的錄屏,繼續(xù)以下流程;
[0018]6)、VNC客戶端發(fā)送幀更新請(qǐng)求;
[0019]7)、VNC代理服務(wù)器將VNC客戶端發(fā)送的幀更新請(qǐng)求數(shù)據(jù)轉(zhuǎn)發(fā)到VNC服務(wù)器;
[0020]8)、VNC代理服務(wù)器接收來自VNC服務(wù)器的基于RFB協(xié)議的桌面圖像數(shù)據(jù),并將該圖像數(shù)據(jù)編碼,存放到Buffer Image緩存中;
[0021 ] 9)、錄屏線程定時(shí)的從Buffer Image緩存中讀取數(shù)據(jù),并將該數(shù)據(jù)轉(zhuǎn)成JPEG格式文件,并調(diào)用ImageConvertVideo模塊,將JPEG格式文件轉(zhuǎn)成MP4格式的視頻文件;
[0022]10)、VNC代理服務(wù)器將基于RFB協(xié)議的桌面圖像數(shù)據(jù)發(fā)送到客戶端,客戶端將桌面圖像數(shù)據(jù)進(jìn)行解碼,繪制到applet窗口中;
[0023]11)、當(dāng)VNC客戶端關(guān)閉瀏覽器時(shí),發(fā)送取消錄屏的請(qǐng)求到VNC代理服務(wù)器,VNC代理服務(wù)器執(zhí)行錄屏線程取消功能,并關(guān)閉VNC代理服務(wù)器與VNC服務(wù)器的連接通道,停止錄屏;并將Buf f er Image的所有數(shù)據(jù)寫到視頻文件中。
[0024]VNC代理服務(wù)器初始化數(shù)據(jù)包括VNC的認(rèn)證口令、IP、端口和用于VNC客戶端顯示虛擬機(jī)桌面的app I et窗口數(shù)據(jù);app I et窗口數(shù)據(jù)包括接受鍵盤消息的按鈕、窗口尺寸。
[0025]在正式錄屏前,VNC代理服務(wù)器需要進(jìn)行認(rèn)證信息包括協(xié)議版本、加密方式、安全認(rèn)證以及協(xié)商后的安全認(rèn)證類型、客戶端與服務(wù)端的初始化信息。
[0026]本發(fā)明主要是在云計(jì)算環(huán)境中,提供對(duì)虛擬機(jī)訪問時(shí)的一種在線錄屏的方法與系統(tǒng),能更好地實(shí)現(xiàn)云計(jì)算環(huán)境中虛擬機(jī)在線錄屏。采用本發(fā)明,能更進(jìn)一步規(guī)范審計(jì)和取證用戶對(duì)虛擬機(jī)的操作,能實(shí)現(xiàn)基于云計(jì)算的虛擬化應(yīng)用或系統(tǒng)在線錄屏的功能。用戶通過瀏覽器客戶端訪問虛擬機(jī),web代理服務(wù)器接收來自瀏覽器的虛擬機(jī)訪問請(qǐng)求,代理服務(wù)器初始化虛擬機(jī)訪問信息并將客戶端帶過來的認(rèn)證信息轉(zhuǎn)發(fā)到VNC服務(wù)端,VNC服務(wù)端對(duì)訪問進(jìn)行安全認(rèn)證。同時(shí),web代理服務(wù)器啟動(dòng)錄屏的線程對(duì)虛擬機(jī)的界面進(jìn)行錄屏,并生成錄屏文件保存到web代理服務(wù)器上。錄屏功能主要通過以下過程實(shí)現(xiàn):web代理服務(wù)器的錄屏線程定時(shí)的抓取基于RFB協(xié)議的虛擬機(jī)桌面數(shù)據(jù);將數(shù)據(jù)進(jìn)行編碼生成JPEG的圖片;最后將JPEG格式的圖片生成MP4視頻文件。采用本發(fā)明,在網(wǎng)絡(luò)攻防演練平臺(tái)中,能將演練全程實(shí)時(shí)錄制下來并進(jìn)行回放,不需要將環(huán)境中所有虛擬機(jī)及任何時(shí)候的屏幕都錄制下來,能實(shí)現(xiàn)在用戶在進(jìn)行具體的演練、虛擬機(jī)屏幕有更新時(shí)進(jìn)行錄制。
【附圖說明】
[0027]圖1為基于VNC代理的云計(jì)算環(huán)境中虛擬機(jī)在線錄屏系統(tǒng)的構(gòu)架示意圖。
[0028]圖2為web訪問虛擬機(jī)時(shí)在線錄屏的流程圖。
【具體實(shí)施方式】
[0029]為了使本發(fā)明說的更加明白清楚,下面結(jié)合附圖對(duì)本發(fā)明作進(jìn)一步說明。
[0030]請(qǐng)參考圖1,基于VNC代理的云計(jì)算環(huán)境中虛擬機(jī)在線錄屏系統(tǒng)包括三部分,分別是java applet實(shí)現(xiàn)的能夠鑲嵌在瀏覽器中運(yùn)行的VNC客戶端(vnc applet客戶端)、VNC遠(yuǎn)程訪問及錄屏代理服務(wù)器(VNC代理服務(wù)器)和安裝在虛擬機(jī)上的VNC服務(wù)器。
[0031]Java applet的VNC客戶端主要用來顯示虛擬機(jī)的桌面,它實(shí)現(xiàn)了基于VNC的RFB遠(yuǎn)程訪問協(xié)議,能夠捕獲用戶對(duì)虛擬機(jī)的鼠標(biāo)及鍵盤消息的輸入,并將虛擬機(jī)桌面的更新數(shù)據(jù)顯示在applet客戶端(vnc applet客戶端)上。
[0032]VNC代理服務(wù)器主要用于接收來自客戶端的虛擬機(jī)遠(yuǎn)程訪問請(qǐng)求,并將請(qǐng)求轉(zhuǎn)發(fā)到VNC服務(wù)器,建立VNC客戶端到服務(wù)器之間的連接通道,并實(shí)時(shí)捕獲VNC服務(wù)端虛擬機(jī)基于RFB協(xié)議的屏幕更新數(shù)據(jù),將桌面幀數(shù)據(jù)轉(zhuǎn)成圖像文件,通過視頻轉(zhuǎn)換模塊將圖像文件轉(zhuǎn)成視頻文件,完成虛擬機(jī)的屏幕錄制。
[0033]VNC服務(wù)器主要建立與客戶端的連接,處理來自客戶端的桌面更新請(qǐng)求,并將服務(wù)器的桌面數(shù)據(jù)推送給客戶端。
[0034]基于VNC的RFB遠(yuǎn)程幀緩存協(xié)議為虛擬機(jī)在線錄屏提供了很好的技術(shù)基礎(chǔ),RFB是一種真正意義上的“瘦客戶端”協(xié)議,它能減少客戶端對(duì)硬件的要求,另外基于RFB協(xié)議的數(shù)據(jù)編碼格式能提高網(wǎng)絡(luò)傳輸率,減少錄屏文件存儲(chǔ)的空間,提升用戶的操作體驗(yàn)。
[0035]本發(fā)明主要是在云計(jì)算環(huán)境中,提供對(duì)虛擬機(jī)訪問時(shí)的一種在線錄屏的方法與系統(tǒng)?;赩NC代理的云計(jì)算環(huán)境中虛擬機(jī)在線錄屏系統(tǒng)包括三部分:web訪問客戶端(VNC客戶端),web訪問代理及錄屏服務(wù)器(VNC代理服務(wù)器)),VNC服務(wù)器。用戶通過瀏覽器客戶端訪問虛擬機(jī),web代理服務(wù)器(VNC代理服務(wù)器)接收來自瀏覽器的虛擬機(jī)訪問請(qǐng)求,代理服務(wù)器初始化虛擬機(jī)訪問信息并將客戶端帶過來的認(rèn)證信息轉(zhuǎn)發(fā)到VNC服務(wù)端,VNC服務(wù)端對(duì)訪問進(jìn)行安全認(rèn)證。同時(shí),web代理服務(wù)器啟動(dòng)錄屏的線程對(duì)虛擬機(jī)的界面進(jìn)行錄屏,并生成錄屏文件保存到web代理服務(wù)器上。錄屏功能主要通過以下過程實(shí)現(xiàn):web代理服務(wù)器的錄屏線程定時(shí)的抓取基于RFB協(xié)議的虛擬機(jī)桌面數(shù)據(jù);將數(shù)據(jù)進(jìn)行編碼生成JPEG的圖片;最后將JPEG格式的圖片生成MP4視頻文件。
[0036]下面結(jié)合圖2,描述錄屏的主要流程:
[0037]1、用戶用瀏覽器發(fā)起虛擬機(jī)遠(yuǎn)程訪問的請(qǐng)求。瀏覽器采用http協(xié)議將請(qǐng)求發(fā)送到web代理服務(wù)器上。如圖2中S1.
[0038]2、Web代理服務(wù)器接受來自客戶端的虛擬機(jī)請(qǐng)求,解析請(qǐng)求中攜帶的相關(guān)參數(shù):相關(guān)參數(shù)主要包括VNC的認(rèn)證口令,IP、端口等信息。
[0039]3、Web代理服務(wù)器根據(jù)客戶端傳來的參數(shù)初始化錄屏線程的相關(guān)數(shù)據(jù),并根據(jù)IP和端口建立Web代理服務(wù)器與VNC服務(wù)端(VNC服務(wù)器)的Socket通道。VNC服務(wù)器是安裝在云主機(jī)中的虛擬機(jī)上。Web代理服務(wù)器并不能直接建立與虛擬機(jī)進(jìn)行VNC通信的鏈路,系統(tǒng)需要在web代理服務(wù)器與虛擬機(jī)之間的虛擬路由器上建立虛擬機(jī)相關(guān)服務(wù)的端口轉(zhuǎn)發(fā)規(guī)則才能與虛擬機(jī)進(jìn)行通信。如虛擬機(jī)VNC服務(wù)器的端口是5901,則需要將虛擬機(jī)的IP和5901端口轉(zhuǎn)發(fā)到虛擬路由器的IP與端口上。這里客戶端請(qǐng)求中帶的IP和端口就是轉(zhuǎn)發(fā)后的IP和端口,這樣web代理和VNC服務(wù)間就可以正常通信了。Web代理服務(wù)器初始化數(shù)據(jù)還包括用于VNC客戶端顯示虛擬機(jī)桌面的applet窗口數(shù)據(jù),applet窗口數(shù)據(jù)包括接受鍵盤消息的按鈕、窗口尺寸等。如圖2中S2。
[0040]4、Web代理服務(wù)器開啟錄屏的線程,并標(biāo)記線程正處理錄屏狀態(tài)。在正式錄屏前,web代理服務(wù)器還需要進(jìn)行一系列的RFB協(xié)議的認(rèn)證信息。主要包括有協(xié)議版本、加密方式、安全認(rèn)證以及協(xié)商后的安全認(rèn)證類型、客戶端與服務(wù)端的初始化信息等。如圖2中S3。
[0041]5、在VNC的安全認(rèn)證之后,錄屏線程輪詢的判斷是否仍需要錄屏,如果需要?jiǎng)t進(jìn)行正常的錄屏,如果否,則退出錄屏線程,終止錄屏。如圖2中S4。
[0042 ] 6、Vnc客戶端發(fā)送幀更新請(qǐng)求。如圖2中S5。
[0043]7、Web代理服務(wù)器將來自客戶端的基于RFB協(xié)議的幀更新請(qǐng)求數(shù)據(jù)轉(zhuǎn)發(fā)到VNC服務(wù)端。
[0044]8、Web代理服務(wù)器接收來自VNC服務(wù)器基于RFB協(xié)議的桌面圖像數(shù)據(jù),并將該圖像數(shù)據(jù)編碼,存放到代理服務(wù)器構(gòu)造的Buf ferImage緩存中。如圖2中S6。
[0045]9、錄屏線程定時(shí)的從BufferImage緩存中讀取數(shù)據(jù),并將該數(shù)據(jù)轉(zhuǎn)成JPEG格式文件,并調(diào)用ImageConvertVideo模塊,將圖片轉(zhuǎn)成MP4格式的視頻文件。如圖2中S7。ImageConvertVideo是web代理服務(wù)端基于java編寫的一個(gè)工具組件,它主要提供將多個(gè)圖片文件轉(zhuǎn)成視頻文件的功能。
[0046]10、Web代理服務(wù)器將基于RFB協(xié)議的桌面圖像數(shù)據(jù)發(fā)送到客戶端,客戶端將桌面圖像數(shù)據(jù)進(jìn)行解碼,高速繪制到applet窗口中。
[0047]11、當(dāng)客戶端關(guān)閉瀏覽器時(shí),將發(fā)送取消錄屏的請(qǐng)求到web代理服務(wù)器,web代理服務(wù)器執(zhí)行錄屏線程取消功能,并關(guān)閉web代理服務(wù)器與VNC服務(wù)器的連接通道,停止錄屏。并將Buf f er Image的所有數(shù)據(jù)寫到視頻文件中。
[0048]以上所述僅為本發(fā)明的優(yōu)選實(shí)施例,本發(fā)明的保護(hù)范圍不限于此,凡在本發(fā)明的精神和原則之內(nèi),所作的任何修改、等同替換、改進(jìn)等,均包含在本發(fā)明的保護(hù)范圍之內(nèi)。
【主權(quán)項(xiàng)】
1.一種基于VNC代理的云計(jì)算環(huán)境中虛擬機(jī)在線錄屏系統(tǒng),其特征是,包括VNC客戶端、VNC代理服務(wù)器和安裝在虛擬機(jī)上的VNC服務(wù)器; 所述VNC客戶端,用于顯示虛擬機(jī)的桌面,實(shí)現(xiàn)基于VNC的RFB遠(yuǎn)程訪問協(xié)議,捕獲用戶對(duì)虛擬機(jī)的鼠標(biāo)及鍵盤消息的輸入,并將虛擬機(jī)桌面的更新數(shù)據(jù)顯示在客戶端上; 所述VNC代理服務(wù)器,用于接收來自VNC客戶端的虛擬機(jī)遠(yuǎn)程訪問請(qǐng)求,并將請(qǐng)求轉(zhuǎn)發(fā)到VNC服務(wù)器,建立VNC客戶端到VNC服務(wù)器之間的連接通道,并實(shí)時(shí)捕獲VNC服務(wù)端虛擬機(jī)基于RFB協(xié)議的屏幕更新數(shù)據(jù),將桌面幀數(shù)據(jù)轉(zhuǎn)成圖像文件,通過視頻轉(zhuǎn)換模塊將圖像文件轉(zhuǎn)成視頻文件,完成虛擬機(jī)的屏幕錄制;所述VNC服務(wù)器,用于建立與VNC客戶端的連接,處理來自客戶端的桌面更新請(qǐng)求,并將VNC服務(wù)器的桌面數(shù)據(jù)推送給VNC客戶端。2.根據(jù)權(quán)利要求1所述的基于VNC代理的云計(jì)算環(huán)境中虛擬機(jī)在線錄屏系統(tǒng),其特征是,所述VNC客戶端是java applet實(shí)現(xiàn)的能夠鑲嵌在瀏覽器中運(yùn)行的客戶端。3.—種基于VNC代理的云計(jì)算環(huán)境中虛擬機(jī)在線錄屏方法,其特征是,用戶通過瀏覽器客戶端訪問虛擬機(jī),VNC代理服務(wù)器接收來自瀏覽器的虛擬機(jī)訪問請(qǐng)求,VNC代理服務(wù)器初始化虛擬機(jī)訪問信息并將客戶端帶過來的認(rèn)證信息轉(zhuǎn)發(fā)到VNC服務(wù)器,VNC服務(wù)器對(duì)訪問進(jìn)行安全認(rèn)證,同時(shí),VNC代理服務(wù)器啟動(dòng)錄屏的線程對(duì)虛擬機(jī)的界面進(jìn)行錄屏,并生成錄屏文件保存到VNC代理服務(wù)器上。4.根據(jù)權(quán)利要求3所述的基于VNC代理的云計(jì)算環(huán)境中虛擬機(jī)在線錄屏方法,其特征是,VNC代理服務(wù)器的錄屏線程定時(shí)的抓取基于RFB協(xié)議的虛擬機(jī)桌面數(shù)據(jù),并將數(shù)據(jù)進(jìn)行編碼生成JPEG的圖片,再將JPEG格式的圖片生成MP4視頻文件保存到VNC代理服務(wù)器上。5.根據(jù)權(quán)利要求3所述的基于VNC代理的云計(jì)算環(huán)境中虛擬機(jī)在線錄屏方法,其特征是,采用權(quán)利要求1或2所述的基于VNC代理的云計(jì)算環(huán)境中虛擬機(jī)在線錄屏系統(tǒng)進(jìn)行在線錄屏。6.根據(jù)權(quán)利要求3所述的基于VNC代理的云計(jì)算環(huán)境中虛擬機(jī)在線錄屏方法,其特征是,具體包括如下流程: 1)、發(fā)起虛擬機(jī)遠(yuǎn)程訪問的請(qǐng)求; 2)、VNC代理服務(wù)器接受來自客戶端的虛擬機(jī)請(qǐng)求,解析請(qǐng)求中攜帶的參數(shù); 3)、VNC代理服務(wù)器初始化錄屏線程的數(shù)據(jù),建立VNC代理服務(wù)器與VNC服務(wù)器的通道; 4)、VNC代理服務(wù)器開啟錄屏的線程,并標(biāo)記線程正處理錄屏狀態(tài),進(jìn)行安全認(rèn)證; 5)、在安全認(rèn)證之后,判斷是否需要錄屏,如果不需要?jiǎng)t退出錄屏線程,終止錄屏;如果需要?jiǎng)t進(jìn)行正常的錄屏,繼續(xù)以下流程; 6)、VNC客戶端發(fā)送幀更新請(qǐng)求; 7)、VNC代理服務(wù)器將VNC客戶端發(fā)送的幀更新請(qǐng)求數(shù)據(jù)轉(zhuǎn)發(fā)到VNC服務(wù)器; 8)、VNC代理服務(wù)器接收來自VNC服務(wù)器的基于RFB協(xié)議的桌面圖像數(shù)據(jù),并將該圖像數(shù)據(jù)編碼,存放到Buffer Image緩存中; 9)、錄屏線程定時(shí)的從BufferImage緩存中讀取數(shù)據(jù),并將該數(shù)據(jù)轉(zhuǎn)成JPEG格式文件,并調(diào)用ImageConvertVideo模塊,將JPEG格式文件轉(zhuǎn)成MP4格式的視頻文件; 10)、VNC代理服務(wù)器將基于RFB協(xié)議的桌面圖像數(shù)據(jù)發(fā)送到客戶端,客戶端將桌面圖像數(shù)據(jù)進(jìn)行解碼,繪制到applet窗口中; 11)、當(dāng)VNC客戶端關(guān)閉瀏覽器時(shí),發(fā)送取消錄屏的請(qǐng)求到VNC代理服務(wù)器,VNC代理服務(wù)器執(zhí)行錄屏線程取消功能,并關(guān)閉VNC代理服務(wù)器與VNC服務(wù)器的連接通道,停止錄屏;并將Buf f er Image的所有數(shù)據(jù)寫到視頻文件中。7.根據(jù)權(quán)利要求6所述的基于VNC代理的云計(jì)算環(huán)境中虛擬機(jī)在線錄屏方法,其特征是,VNC代理服務(wù)器初始化數(shù)據(jù)包括VNC的認(rèn)證口令、IP、端口和用于VNC客戶端顯示虛擬機(jī)桌面的app I et窗口數(shù)據(jù);app I et窗口數(shù)據(jù)包括接受鍵盤消息的按鈕、窗口尺寸。8.根據(jù)權(quán)利要求6所述的基于VNC代理的云計(jì)算環(huán)境中虛擬機(jī)在線錄屏方法,其特征是,在正式錄屏前,VNC代理服務(wù)器需要進(jìn)行認(rèn)證信息包括協(xié)議版本、加密方式、安全認(rèn)證以及協(xié)商后的安全認(rèn)證類型、客戶端與服務(wù)端的初始化信息。
【文檔編號(hào)】G06F9/455GK105933415SQ201610251418
【公開日】2016年9月7日
【申請(qǐng)日】2016年4月21日
【發(fā)明人】侯美佳, 黃澄清, 舒敏, 姚維, 李平南, 金暐, 董琳, 彭義剛
【申請(qǐng)人】國家計(jì)算機(jī)網(wǎng)絡(luò)與信息安全管理中心