<ruby id="bdb3f"></ruby>

    <p id="bdb3f"><cite id="bdb3f"></cite></p>

      <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
        <p id="bdb3f"><cite id="bdb3f"></cite></p>

          <pre id="bdb3f"></pre>
          <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

          <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
          <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

          <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                <ruby id="bdb3f"></ruby>

                ??碼云GVP開源項目 12k star Uniapp+ElementUI 功能強大 支持多語言、二開方便! 廣告
                # 11.4 華麗的圖形接口: VNC 服務器 ## 11.4 華麗的圖形接口: VNC 服務器 就如同剛剛上頭講到的,使用 xdmcp 可能會啟動多個不同的埠口,導致防火墻設定上面比較困擾些。那有沒有簡單一點的圖形接口連接方式? 其實還有很多啦,在這里我們先來講一個比較簡單的,那就是 VNC (Virtual Network Computing) 這玩意兒啦!([注6](#ps6)) - - - - - - ### 11.4.1 預設的 VNC 服務器:使用 twm window manager VNC server 會在服務器端啟動一個監聽用戶要求的端口,一般端口號碼在 5901 ~ 5910 之間。當客戶端啟動 X server 聯機到 5901 之后, VNC server 再將一堆預先設定好的 X client 透過這個聯機傳遞到客戶端上,最終就能夠在客戶端顯示服務器的圖形接口了。 不過需要注意的是,預設的 VNC server 都是獨立提供給『單一』一個客戶端來聯機的,因此當你要使用 VNC 時, 再聯機到服務器去啟動 VNC server 即可。所以,一般來說, VNC server 都是使用手動啟動的,然后使用完畢后, 再將 VNC server 關閉即可。整個作法其實很簡單喔!你可以這樣作: ``` [root@www ~]# vncserver [:號碼] [-geometry 分辨率] [options] [root@www ~]# vncserver [-kill :號碼] 選項與參數: :號碼 :就是將 VNC server 開在哪個埠口,如果是 :1 則代表 VNC 5901 埠口 -geometry :就是分辨率,例如 1024x768 或 800x600 之類的 options :其他 X 相關的選項,例如 -query localhost 之類的 -kill :將已經啟動的 VNC 埠口刪除!依據身份控制喔。 [root@www ~]# yum install tigervnc-server # 這個是必須要的服務器軟件,注意軟件的名稱喔!與之前的版本不同! # 將 VNC server 啟動在 5903 埠口 [root@www ~]# vncserver :3 You will require a password to access your desktops. Password: <==輸入 VNC 的聯機密碼,這是建立 VNC 時所需要的 Verify: <==再輸入一次相同的密碼 xauth: creating new authority file /root/.Xauthority New 'www.centos.vbird:3 (root)' desktop is www.centos.vbird:3 Creating default startup script /root/.vnc/xstartup Starting applications specified in /root/.vnc/xstartup Log file is /root/.vnc/www.centos.vbird:3.log [root@www ~]# netstat -tulnp | grep X tcp 0 0 0.0.0.0:5903 0.0.0.0:* LISTEN 4361/Xvnc tcp 0 0 0.0.0.0:6000 0.0.0.0:* LISTEN 1755/Xorg tcp 0 0 0.0.0.0:6003 0.0.0.0:* LISTEN 4361/Xvnc tcp 0 0 :::6000 :::* LISTEN 1755/Xorg tcp 0 0 :::6003 :::* LISTEN 4361/Xvnc # 已經啟動所需要的埠口啰! ``` 在上述的指令操作中,你要知道的幾個項目是: 1. 密碼至少需要六個字符 2. 依據使用 vncserver 的身份,將剛剛建立的密碼放置于該賬號家目錄下。例如上述的身份是使用 root 身份,因此密碼文件會放在 /root/.vnc/passwd 這個檔案中但是若該檔案已經存在,則不會出現建立密碼的畫面。 3. 當客戶端聯機成功后,服務器將會傳送 /root/.vnc/startx 內的 X client 給客戶端喔! 那如果你想要修改 VNC 密碼呢?很簡單,那就使用 vncpasswd 吧! ``` [root@www ~]# ls -l /root/.vnc/passwd -rw-------. 1 root root 8 Jul 26 15:08 /root/.vnc/passwd [root@www ~]# vncpasswd Password: <==就是這里開始輸入新的密碼啊! Verify: [root@www ~]# ls -l /root/.vnc/passwd -rw-------. 1 root root 8 Jul 26 15:15 /root/.vnc/passwd # 看吧!時間有更新喔!這個檔案的內容更動過啰! ``` 接下來開始放行 5903 這個埠口的聯機防火墻規則吧!因為預計可能會開放 11 個 VNC 的埠口,所以干脆一口氣開放 11 個埠口吧! ``` [root@www ~]# vim /usr/local/virus/iptables/iptables.allow iptables -A INPUT -i $EXTIF -s 192.168.100.0/24 -p tcp --dport 5900:5910 -j ACCEPT [root@www ~]# /usr/local/virus/iptables/iptables.rule [root@www ~]# iptables-save -A INPUT -s 192.168.100.0/24 -i eth0 -p tcp -m tcp --dport 5900:5910 -j ACCEPT # 要看得到上面這行才 OK 喔! ``` - - - - - - ### 11.4.2 VNC 的客戶端聯機軟件 與 xdmcp 很類似啦, VNC 客戶端在 Linux 系統上面有默認的軟件,但是在 Windows 系統上面則必須要額外安裝其他軟件。 我們先來談談 Linux 的 VNC 用戶軟件吧! - Linux 客戶端程序: vncviewer 用在 Linux 客戶端的 VNC 程序,那就是 vncviewer。只是,這個軟件默認沒有安裝,所以你得要使用 yum 安裝完畢后再來聯機吧!不過一樣要注意,服務器端的防火墻一樣要設定妥當喔!然后開始在客戶端的圖形接口上執行底下數據: ``` [root@clientlinux ~]# yum install tigervnc [root@clientlinux ~]# vncviewer 192.168.10.254:3 # 這個指令請一定一定要在圖形接口上面執行才行喔!很重要!別忘了! ``` ![](https://box.kancloud.cn/2016-05-13_5735da6e7af76.gif) 圖 11.4-1、在 Linux 客戶端執行 vncviewer 程序示意 在上圖當中輸入剛剛的 root 的 VNC 聯機密碼,請注意喔,是 VNC 的聯機密碼,而不是 root 的登入密碼! 這兩者是差很多的!也由于啟動 VNC 的身份是 root ,因此這里才使用 root 的 VNC 聯機密碼。 所以,很多時刻,我們都是建議使用一般身份來啟動 VNC server 的啦!當你輸入正確的 VNC 聯機密碼后, 會出現如下的圖示啰: ![](https://box.kancloud.cn/2016-05-13_5735da6e90cc8.gif) 圖 11.4-2、在 Linux 客戶端執行 vncviewer 程序示意 與以前的 VNC server 較大的差異,在 CentOS 6.x 當中,tigervnc-server 這套軟件會主動的依據服務器端的圖形接口登入方式給予正確的圖形顯示接口,而不是以前那樣給予一個丑丑的 twm 而已! 這樣我們就可以減少還得要修改一些有的沒有的配置文件了!真是棒! 聯機成功后,請在客戶端關閉這個 vncviewer 的聯機,因為接下來我們要準備由 Windows 聯機到服務器的 port 5903 啰! - Windows 客戶端程序: realvnc Windows 底下可用的 vnc client 軟件不少,但是鳥哥比較熟悉的是 realvnc 這家公司出品的 GNU 的自由軟件! 你可以在底下的連結下載到最簡單的版本,是不用錢的自由軟件版本喔!(鳥哥僅下載不用安裝的 viewer 版本而已!) - <http://www.realvnc.com/download.html> 直接執行 vnc-viewer 軟件,然后就會看到如下的畫面: ![](https://box.kancloud.cn/2016-05-13_5735da6eaf599.gif) 圖 11.4-3、Windows Real VNC 客戶端聯機示意圖 如上圖所示,你在 server 字段填上 IP:port 的數據即可,然后按下『OK』吧! ![](https://box.kancloud.cn/2016-05-13_5735da6ec7fde.gif) 圖 11.4-4、Windows Real VNC 客戶端聯機示意圖 由于 VNC server 需要的僅是聯機的 VNC 密碼而已,因此上圖中的 Username 可以不用填,老實說,這個程序它也不會讓你填~ 呵呵!填完按下『OK』即可!接下來就會出現正確的畫面啰! ![](https://box.kancloud.cn/2016-05-13_5735da6edba9a.gif) 圖 11.4-5、Windows Real VNC 客戶端聯機示意圖 - - - - - - ### 11.4.3 VNC 搭配本機的 Xdmcp 畫面 如果因為某些特殊因素,你得要使用 VNC 來搭配 xdmcp 的輸出時,那就直接在服務器透過底下的指令來處理即可! 要注意喔,你必須要已經啟動了 xdmcp 了喔!而且,我們底下使用 student 的身份來啟動這個 VNC 吧! ``` # 1\. 要確定 xdmcp 已經啟動了才可以: [root@www ~]# netstat -tlunp | grep 177 udp 0 0 0.0.0.0:177 0.0.0.0:* 1734/gdm-binary # OK 的!確實有啟動的啦!如果沒有看到 177 的話,回到 [11.3](#xdmcp) 去處理處理 # 2\. 切換成 student,并且啟動 VNC server 在 :5 [root@www ~]# su - student [student@www ~]$ vncserver :5 -query localhost You will require a password to access your desktops. Password: Verify: xauth: creating new authority file /home/student/.Xauthority New 'www.centos.vbird:5 (student)' desktop is www.centos.vbird:5 Creating default startup script /home/student/.vnc/xstartup Starting applications specified in /home/student/.vnc/xstartup Log file is /home/student/.vnc/www.centos.vbird:5.log # 3\. 取消 xstartup 的啟動內容 [student@www ~]$ vim /home/student/.vnc/xstartup ....(前面省略).... #xterm -geometry 80x24+10+10 -ls -title "$VNCDESKTOP Desktop" & #twm & # 將這個檔案的內容,全部都加上 # 批注掉 # 4\. 重新啟動 vncserver 喔! [student@www ~]$ vncserver -kill :5 [student@www ~]$ vncserver :5 -query localhost ``` 接下來請使用 root 的身份加入 5905 的端口防火墻規則,然后自行使用 Linux 的 vncviewer 或 Windows 的 RealVNC 來聯機,你就會發現如下的畫面: ![](https://box.kancloud.cn/2016-05-13_5735da6f22838.gif) 圖 11.4-6、透過 VNC 通道取得 xdmcp 畫面 我們這只 VNC 的聯機程序是 student 身份,但是我們卻可以透過 xdmcp 的登入功能來登入 root 身份喔! 因為在服務器上面的 Xvnc 程序是 student 擁有,這樣會比較好啦!了解呼? - - - - - - ### 11.4.4 開機就啟動 VNC server 的方法 請注意,你不要將 vncserver 的指令寫入在 /etc/rc.d/rc.local 中,否則可能會產生 localhost 無法登入的問題。 那該如何讓你的 VNC server 在一開機就啟動而不須要登入執行指令呢?可以的,但是你得要修改一下配置文件。 我們底下使用 student 的身份啟動 VNC server,而啟動的方式為使用 xdmcp 登入畫面,啟動的埠口就定在 5901 好了。 那你應該這樣作: ``` [root@www ~]# vim /etc/sysconfig/vncservers VNCSERVERS="1:student" VNCSERVERARGS[1]="-query localhost" # 上述兩行的 1 指的就是那個埠口 5901 喔!要注意! [root@www ~]# /etc/init.d/vncserver restart [root@www ~]# chkconfig vncserver on ``` 有夠好簡單吧!這樣每次開機就搞定你的 VNC server 啰! - - - - - - ### 11.4.5 同步的 VNC :可以透過圖示同步教學 另外,有些朋友一定會覺得奇怪,那就是,為甚么我的 VNC 服務器的 server / client 端畫面并不是同步的呢? 這是因為 Linux 本身提供多個 VNC server ,她們是各自獨立的,所以當然就不會與 tty7 的畫面同步了。 但是如果你想要與 Linux 的 tty7 同步的話,可以利用 VNC 釋出的給 X Server 使用的模塊來加以設定即可。 那使用這個模塊有甚么好處啊?就是可以讓兩個圖形接口在 server/client 都是一樣的, 所以,如果你想要教你的朋友你是如何設定的,那就可以透過這個機制來處理,你的朋友在遠程就能夠知道你一步一步進行的過程! 這樣很不賴吧!詳細的作法可以參考底下的連結: - <http://phorum.study-area.org/viewtopic.php?t=25713> 我們也來實做一下吧 (在 CentOS 6.x 當中并沒有 xorg.conf 這個配置文件喔!所以,如果你要使用這些數據的話, 恐怕得要自行使用 X -configure 去建置 xorg.conf 后,再挪到 /etc/X11/ 去,然后才改的到設定!): ``` [root@www ~]# yum install tigervnc-server-module [root@www ~]# vim /etc/X11/xorg.conf Section "Screen" Identifier "Screen0" Device "Videocard0" DefaultDepth 24 # VBird Option "passwordFile" "/home/student/.vnc/passwd" SubSection "Display" Viewport 0 0 Depth 24 EndSubSection EndSection # VBird Section "Module" Load "vnc" EndSection # 假設你的 vnc 密碼檔案放置在 /home/student/.vnc/passwd 里頭, # 這個時候就得要將密碼文件內容寫到 Screen 這個 section 當中了 [root@www ~]# init 3 ; init 5 [root@www ~]# netstat -tlunp | grep X tcp 0 0 0.0.0.0:5900 0.0.0.0:* LISTEN 7445/Xorg tcp 0 0 0.0.0.0:6000 0.0.0.0:* LISTEN 7445/Xorg tcp 0 0 :::6000 :::* LISTEN 7445/Xorg # 注意看喔!這幾個 port 啟動的 PID 都一樣喔!所以會啟動一個 port 5900 啰! ``` 之后你可以使用『 vncviewer 192.168.100.254 』來聯機即可,不需要加上 :0 之類的埠口。 然后你可以看一下客戶端與服務器端的圖形接口,你會發現到兩者移動鼠標時,兩者的畫面會同步運作喔! 非常有趣呢!只不過這個動作還是只允許一條 VNC 聯機,不能讓所有客戶端都連到 port 5900 ,這真是太可惜了! - - - - - -
                  <ruby id="bdb3f"></ruby>

                  <p id="bdb3f"><cite id="bdb3f"></cite></p>

                    <p id="bdb3f"><cite id="bdb3f"><th id="bdb3f"></th></cite></p><p id="bdb3f"></p>
                      <p id="bdb3f"><cite id="bdb3f"></cite></p>

                        <pre id="bdb3f"></pre>
                        <pre id="bdb3f"><del id="bdb3f"><thead id="bdb3f"></thead></del></pre>

                        <ruby id="bdb3f"><mark id="bdb3f"></mark></ruby><ruby id="bdb3f"></ruby>
                        <pre id="bdb3f"><pre id="bdb3f"><mark id="bdb3f"></mark></pre></pre><output id="bdb3f"></output><p id="bdb3f"></p><p id="bdb3f"></p>

                        <pre id="bdb3f"><del id="bdb3f"><progress id="bdb3f"></progress></del></pre>

                              <ruby id="bdb3f"></ruby>

                              哎呀哎呀视频在线观看