????在內網與公網的遠程桌面連接我們通常都是選擇使用TeamViewer泌枪,TeamViewer有許多的優(yōu)點,比如可視化桌面的遠程器仗;但是也有一些嚴重的缺點晶姊,比如在安全性上可能就不盡人意。在本文中我們將使用VNC來進行局域網之間的桌面遠程連接崩瓤,vnc常用到linux系統(tǒng)袍啡,可以用命令行遠程,一半多用在遠程服務器却桶,很多l(xiāng)inux服務器沒有可視化桌面境输,只有命令行,而且linux服務器也不需要桌面颖系,所以嗅剖,用vnc既快又方便。
環(huán)境配置
服務器
地址:192.168.198.100 (同一局域網)
操作系統(tǒng):centos7
使用軟件:vnc-server
客戶端
地址:192.168.198.101 (同一局域網)
操作系統(tǒng):mac-os
使用軟件:vnc-viewer
vnc-server
1.安裝GNOME
sudo yum groupinstall "GNOME Desktop" "Graphical Administration Tools"
2.服務器安裝vncserver
sudo yum install vnc-server # centos6
sudo yum install vnc *vnc-server* # centos7
3.修改vnc配置
vim /etc/sysconfig/vncservers # centos7可以不用配置默認會自己產生一個隨機的端口
VNCSERVERS="1:root" # 添加一行,通過設置我們可以登陸的ROOT權限
說明:其中這里設置的端口是以5900開始疊加的嘁扼,實際這里的端口是5091;但是在用VNC-VIEWER使用的使用輸入端口號1就可以了
4.設置vncserver密碼
vncserver
5.啟動vnc服務
sudo service vncserver restart
6.共享右鍵粘貼板
vncconfig &
7.關閉防火墻
service iptables stop #centos6
systemctl stop firewalld.service #centos7
注意:當修改系統(tǒng)的一些配置文件信粮,例如:系統(tǒng)的最大打開文件數(shù)、cpu核數(shù)這些參數(shù)后趁啸,最好重啟該服務蒋院;否則可能導致當前VNC服務用戶的參數(shù)沒有更新
vnc-viewer
1.進入官網下載vnc-viewer并進行安裝vnc-viewer
2.打開vnc-viewer并且進行輸入對應的地址與端口號
192.168.198.101:1 # 注:這里地址的端口在vnc-server中的第三步有配置與說明
3.輸入在vncserver上設置的密碼進行登陸
問題點
1.連接后顯示黑屏問題
啟動vnc出現(xiàn)以下信息
New 'localhost.localdomain:1 (admin)' desktop is localhost.localdomain:1
Starting applications specified in /home/admin/.vnc/xstartup
Log file is /home/admin/.vnc/localhost.localdomain:1.log
這時候可以進行查看文件:/home/admin/.vnc/localhost.localdomain:1.log
...
Mon Jun 17 13:32:28 2019
vncext: VNC extension running!
vncext: Listening for VNC connections on all interface(s), port 5901
vncext: Listening for HTTP connections on all interface(s), port 5801
vncext: created VNC server for screen 0
(process:21776): dconf-CRITICAL **: 13:32:31.530: unable to create directory
'/run/user/0/dconf': 權限不夠. dconf will not work properly.
(process:21776): dconf-CRITICAL **: 13:32:31.531: unable to create directory
'/run/user/0/dconf': 權限不夠. dconf will not work properly.
...
這種情況是由于目錄的權限不夠造成的,解決的情況就是給目錄加上對應的權限即可
sudo chmod -R 777 /run/user/0