답변:
이것은 vino vnc server & remmina를 사용하여 달성 할 수 있습니다 (둘 다 ubuntu와 함께 기본값으로 제공됩니다 sudo apt-get install remmina
. 그런 다음 터미널 프롬프트의 로컬 컴퓨터에서 다음 명령을 실행하십시오.
ssh -Y gman@remote
. 신뢰할 수있는 X11 전달을 사용하십시오. 그렇지 않으면 작동하지 않습니다
vino-preferences
. vino 환경 설정이 열립니다.
또한를 클릭하십시오 configure network automatically to accept connection
. 그러나 base64로 인코딩 된 비밀번호는 입력하지 마십시오 . 그런 다음 닫기를 클릭하십시오. 그런 다음 다음을 실행하십시오.
sudo -s
export DISPLAY=:0.0
xhost +
/usr/lib/vino/vino-server &
vino 서버가 시작됩니다.
서버에서 로그 아웃 :
xhost -
Press CTRL+C twice
exit
exit
그런 다음 remmina를 엽니 다 . vnc
프로토콜에서 선택하십시오 .
basic
탭 아래에서 서버 주소를 server
필드에 입력하십시오.
ssh 탭에서을 클릭하십시오 enable ssh tunnel
. 아래 ssh authentication
에서 password
또는 일 수 있습니다 public key
.
저장을 클릭하십시오. 그런 다음 connection-name (그림과 같이 홈 데스크탑)을 두 번 클릭하여 원격 데스크톱 탐색을 시작하십시오.
x11vnc
간단한 VNC 서버이며 Gnome 설정이나 500 개의 방화벽을 망칠 필요가 없습니다. x11vnc
꼭두각시 나 대량 제어에 사용하는 모든 컴퓨터에 설치 하면됩니다.
그런 다음 로컬 컴퓨터에서 다음을 실행하십시오.
ssh user@host -L 5900:localhost:5900 "x11vnc -display :0 -noxdamage"
분명히 user@host
원격 컴퓨터의 사용자 이름과 호스트 이름 / IP를 교환 합니다.
그런 다음 선택한 VNC 클라이언트를 사용하여에 연결하십시오 localhost:5900
. SSH 명령은 원격 컴퓨터에서 vnc 서버를 시작한 다음 SSH를 통해 해당 포트를 터널 백합니다. 이미 SSH를 사용할 수있는 한 포트를 열 필요가 없습니다.
컴퓨터에 재미있는 디스플레이 설정이 -display :0
있는 경우 SSH 명령에서 세그먼트 를 벗어나는 것이 좋습니다 . x11vnc
그런 다음 자동으로 올바른 디스플레이를 찾습니다.
출처 : 아스 쿠분투
vncviewer localhost::5900 -viewonly -encodings "tight" -quality 0
(데비안 / 우분투에서 뷰어는 tightvnc에서) 또는 vncviewer localhost::5900 -viewonly -PreferredEncoding tight QualityLevel=0
(Red Hat / Fedora에서 뷰어는 tigervnc에서) 다음과 같아야합니다. 0에서 9 사이에서 9가 가장 좋지만 빠른 연결이 필요합니다.
vncviewer
연결 속도가 느린 경우 사용 방법을 설명해 주셔서 감사 합니다. 나는 개인적으로 아마도 (즉 , 나는 생각 QualityLevel=4 or 5
하기 때문에 ) 나에게 너무 둔하기 때문에 설정 할 것이다 . 0 qualitylevel
256 colors
-auth guess
루트 로 사용 하고 실행해야했습니다. 매우 도움이되었습니다. 감사합니다!
OpenSSH Server
호스트 시스템에 이미 설정되어 있다고 가정하면 먼저 호스트 시스템에서 데스크탑 제어를 활성화해야합니다. 호스트 컴퓨터에서 로컬로 데스크톱 제어를 먼저 활성화 할 수 있으면 1a로 이동하십시오. 호스트 시스템에서 원격 제어를 먼저 활성화해야하는 경우 1b로 이동하십시오.
다음으로 SSH 터널을 통해 호스트 시스템에 연결하고 SSH 터널을 통해 호스트 시스템의 데스크탑을보고 제어하기 위해 클라이언트 시스템에 원격 데스크탑 클라이언트 프로파일을 작성하십시오.
호스트 시스템에서 다음을 수행하십시오.
vino-preferences
vino-preferences
또한 대시 아래에 Desktop Sharing
Allow other users to view your desktop
Allow other users to control your desktop
Require the user to enter this password
클라이언트 시스템에서 다음을 수행 123.123.12.3
하여 호스트 시스템의 IP 주소로 바꾸 십시오.
ssh -Y 123.123.12.3
vino-preferences
vino-preferences
또한 대시 아래에 Desktop Sharing
Allow other users to view your desktop
Allow other users to control your desktop
Require the user to enter this password
클라이언트 시스템에서 다음을 수행하십시오.
remmina
Remmina Remote Desktop Client
Ctrl+ N또는 연결> 새로 만들기
Server
SSH
탭으로 전환Enable SSH Tunnel
SSH Authentication
<username>
과 모드를 설정클라이언트 시스템에서 <username>
의 비밀번호를 요청하면 비밀번호를 입력하여 SSH 터널을 작성하십시오. VNC 비밀번호를 묻는 메시지가 표시되면 이전에 호스트 시스템에 입력 한 비밀번호 문구를 입력하십시오.
이 단계에서 성공하면 이제 SSH 터널을 통해 클라이언트 시스템에서 호스트 시스템의 데스크탑을보고 제어해야합니다.
다음 스크립트를 사용하여 원격 ssh 연결에서 새로운 Ubuntu 16.04 설치를 설정할 수있었습니다.
#! / bin / bash 내보내기 DISPLAY = : 0 -e -p "VNC 비밀번호 :"-i "ubuntu"비밀번호 읽기 dconf 쓰기 / org / gnome / desktop / remote-access / enabled true dconf 쓰기 / org / gnome / desktop / remote-access / prompt-enabled false dconf 쓰기 / org / gnome / desktop / remote-access / authentication-methods "[ 'vnc']" dconf 쓰기 / org / gnome / desktop / remote-access / require-encryption false dconf 쓰기 / org / gnome / desktop / remote-access / vnc-password \ "\ '$ (echo -n $ password | base64) \'\" dconf 덤프 / org / gnome / desktop / remote-access / sudo 서비스 lightdm 재시작
인용 부호는 모든 문자열 설정에 중요합니다 (따옴표 안에 단일 눈금). dconf를 쓰려면 XWindows에 액세스해야하므로 내보내기 DISPLAY 파트가 필요합니다. 이 후에도 VNC에 연결하려면 실제 Ubuntu 시스템의 데스크톱에 로그인해야한다고 생각합니다. dump 명령은 모든 설정이 보류되었음을 확인하기 위해 존재하므로 실제로는 필요하지 않습니다.
선택적으로 디스플레이를 항상 유지하려면 다음을 수행하십시오.
dconf 쓰기 / org / gnome / desktop / screensaver / lock-enabled false dconf 쓰기 / org / gnome / desktop / screensaver / ubuntu-lock-on-suspend false dconf 쓰기 / org / gnome / desktop / session / idle-delay "uint32 0"
X를 전달하지 않고 Vino 서버를 원격으로 시작하는 방법 (명령 줄 전용)
데스크탑과 포워드 포트 5900을 로컬 호스트의 동일한 포트에 공유 할 사용자로 원격 컴퓨터에 로그온하십시오. PuTTY를 사용하면 연결 / SSH / Tunnels에서 리디렉션이 설정됩니다. 명령 행에서 다음을 사용하십시오.
ssh -L 5900:localhost:5900 user@remote-computer
설치 vino-server
가 아직 설치되지 않은 경우. 예를 들면 다음과 같습니다.
sudo apt install vino
데스크톱 공유를 활성화합니다 (첫 번째 및 두 번째 줄의 표시 번호와 일치) :
echo $DISPLAY
export DISPLAY=:0
dbus-launch --exit-with-session gsettings set org.gnome.Vino enabled true
dbus-launch --exit-with-session gsettings set org.gnome.Vino prompt-enabled false
dbus-launch --exit-with-session gsettings set org.gnome.Vino require-encryption false
/usr/lib/vino/vino-server
VNC 뷰어를 시작 localhost
하고 VNC 서버 주소에 연결 하십시오.
No protocol specified Failed to connect to Mir: Failed to connect to server socket: No such file or directory Unable to init server: Could not connect: Connection refused Cannot open display: Run 'vino-server --help' to see a full list of available command line options
@Khurshid Alam 답변을 바탕으로 다음 스 니펫을 제시합니다.
ssh $TARGETHOST -L 5900:localhost:5900 "x11vnc -localhost -display :0 -noxdamage" &; sleep 10 && vinagre localhost
상호 작용이 필요없는 명령입니다.
포트 포워딩으로 SSH 터널을 생성하고 x11vnc
합리적으로 안전한 방식으로 시작한 다음 VNC 뷰어를 시작 및 연결합니다.
대상 호스트에는 x11vnc가 필요하지만 추가 구성은 필요하지 않습니다.