fedora12 에서 vnc를 통해서 원도우에서 리눅스에 그래픽으로 접속하는 방법

fedora12 에서 vnc를 통해서 원도우에서 리눅스에 그래픽으로 접속하는 방법


어렵게 나름 완벽하게 마스트 했습니다.

페도라 12에 로컬이 아닌 ssh 로 접속했다면 아무리 한글패치를 해도 한글이 깨져보일 것입니다.

무시하시고 아래처럼 그냥 진행하세요

100%로 됩니다.

안되는 증상은 되어도 vnc 화면이 검게 나오는데 그 부분 까지 나오게 수정했습니다.

페도라가 아니더라도 다른 리눅스에서도 동일 할 것입니다.


1. 설치확인

[root@localhost ~]$ rpm -qa vnc-server
vnc-server-4.1.2-9.fc6

뭐 이렇게 설치된 패키지가 보여야 정상이지만 경우에 따라서는 실질적으로 설치되었는데도
안 보일 수도 있습니다. 저 같은 경우는 안 보였습니다.


[root@localhost .vnc]# rpm -qa vnc-server
[root@localhost .vnc]#
이런식으로 없다고 나올 수도 있습니다.

혹시 모르니 일단 패키지가 설치되어 있어도 다시 한 번 아래 처럼 설치합니다.



2. 설치

[root@localhost ~]$ yum -y install vnc-server


3. 설정

[root@localhost ~]# vi /etc/sysconfig/vncservers


# The VNCSERVERS variable is a list of display:user pairs.
#
# Uncomment the lines below to start a VNC server on display :2
# as my 'myusername' (adjust this to your own).  You will also
# need to set a VNC password; run 'man vncpasswd' to see how
# to do that.
#
# DO NOT RUN THIS SERVICE if your local area network is
# untrusted!  For a secure way of using VNC, see
# http://www.uk.research.att.com/vnc/sshvnc.html>.

# VNCSERVERS="2:myusername"
# VNCSERVERARGS[2]="-geometry 800x600"

VNCSERVERS="1:root"
VNCSERVERARGS[2]="-geometry 1280x1024"


4.0 VNC

위 파일처럼 수정합니다. 대충 보시면... vncserver 로 1번을 사용하고 해상도도 크게 사용가능하게 하겠다
뭐 그런 의미네요..

[root@localhost ~] vncserver :1 -geometry 1280x1024

이것은 해줘도 되고 안해도 되고.....


[root@localhost .vnc] 이 경로의 이동은

[root@localhost]cd ~
[root@localhost]cd .vnc
이러게 하시면 됩니다.

[root@localhost .vnc]# service vncserver status
서비스 상태를 보는 것인데...페도라에서는 깨져보이더군요..

[root@localhost .vnc]# service vncserver restart
역시 깨져보이지만 ok 가 뜬다면 뭐 정상입니다.

4. VNC Password 설정

[root@localhost .vnc]# vncpasswd
Password: #패스워드 입력
Verify:

비밀번호는 나중에 사용하니 잘 기어하셈~~~~~~~~~~~~
\

[root@localhost .vnc]# ls
localhost.localdomain:1.log  localhost.localdomain:1.pid  passwd   xstartup

대충 이렇게 보이나요???   더 많은 파일이 보일 수도 있고 안 보이는 파일이 있을 수도 있습니다.

xstartup 이 파일이 보인다면 삭제하세요

[root@localhost .vnc]#rm -rf xstartup

이렇게 삭제하시면 됩니다.  이 파일을 그대로 두면 검은 화면이 나올 수도 있습니다

[root@localhost .vnc]# pwd
/root/.vnc
[root@localhost .vnc]#


6. 보안설정

XWindows에서 '시스템'-'관리'-'보안수준 및 방화벽'을 실행한다.
'더하기'버튼을 누르고 그외 포트에 5901:tcp라고 입력한다.

ㅋㅋㅋㅋ 추가하는 방법 모르겠죠??  이것은 리눅스 방화벽에서 5901 로 접속하는 포트를 허락 한다는 의미인데
vnc가 5901 포트를 기본적으로 사용해서 그런가 봅니다.

[root@localhost .vnc]# cat /etc/sysconfig/iptables
# Firewall configuration written by system-config-firewall
# Manual customization of this file is not recommended.
*filter
:INPUT ACCEPT [0:0]
:FORWARD ACCEPT [0:0]
:OUTPUT ACCEPT [0:0]
-A INPUT -m state --state ESTABLISHED,RELATED -j ACCEPT
-A INPUT -p icmp -j ACCEPT
-A INPUT -i lo -j ACCEPT
-A INPUT -m state --state NEW -m tcp -p tcp --dport 22 -j ACCEPT
-A INPUT -m state --state NEW -m tcp -p tcp --dport 2002 -j ACCEPT
-A INPUT -m state --state NEW -m tcp -p tcp --dport 5901-j ACCEPT
-A INPUT -j REJECT --reject-with icmp-host-prohibited
-A FORWARD -j REJECT --reject-with icmp-host-prohibited

뭐 저기 보이는 식으로 5901 포트에 대한 부분을 추가해줍니다.

[root@localhost .vnc]# /etc/init.d/iptables restart
iptables: 諛⑺솕踰?洹쒖튃??吏€?곷땲?? [  OK  ]
iptables: chain??ACCEPT 洹쒖튃?쇰줈 ?ㅼ젙 以?  filter [  OK  ]
iptables: 紐⑤뱢???몃줈?쒗븯??以? [  OK  ]
iptables: 諛⑺솕踰?洹쒖튃 ?곸슜 以?  iptables-restore v1.4.5: invalid port/service `5901-j' specified
Error occurred at line: 12
Try `iptables-restore -h' or 'iptables-restore --help' for more information.
[?ㅽ뙣]
[root@localhost .vnc]#

이런식으로 방화벽 설정을 다시 시작해줍니다.

"/etc/X11/xinit/"에 있는 xinitrc을

[root@localhost .vnc]#  여기로 복사또는 생성 해줍니다. 이것은 리눅스 기본 명령어이니 능력것 알아서 하세요

[root@localhost .vnc]# ll
total 60
-rw-r--r--. 1 root root  2873 Jan 16 01:00 localhost.localdomain:1.log
-rw-r--r--. 1 root root     5 Jan 16 00:59 localhost.localdomain:1.pid
-rw-r--r--. 1 root root   888 Jan 16 00:52 localhost.localdomain:2.log
-rw-r--r--. 1 root root     5 Jan 16 00:50 localhost.localdomain:2.pid
-rw-r--r--. 1 root root   888 Jan 16 00:53 localhost.localdomain:3.log
-rw-r--r--. 1 root root     5 Jan 16 00:50 localhost.localdomain:3.pid
-rw-r--r--. 1 root root 18412 Jan 16 00:59 localhost.localdomain:4.log
-rw-r--r--. 1 root root     5 Jan 16 00:59 localhost.localdomain:4.pid
-rw-------. 1 root root     8 Jan 16 00:37 passwd
-rw-r--r--. 1 root root  1494 Jan 16 00:58 xinitrc
-rwxr-xr-x. 1 root root   575 Jan 16 00:59 xstartup
-rw-r--r--. 1 root root     0 Jan 16 00:59 xstartup.org
[root@localhost .vnc]#




이런식으로 만들어줍니다.
저기보이는 xstartup은 나중에 실행하면서 자동으로 생긴 것입니다.
vncserver -kill :1 
vncserver 

이런식으로 서비스를 죽였다가 다시 실행해줍니다.

vncserver -kill :1 
이거 한 칸 띄우고 :1 입니다..유념하세요




이 파일을 원도우에서 실행합니다.

사용자 삽입 이미지


이런식으로 입력합니다.
앞의 아이피는 리눅스 서버 아이피겠죠..
옆의 숫자 1은 vnc 서버 숫자입니다.
vnc 서버를 여러번 실행하면 저 숫자가 변경될수도 있지만..
위의 방법으로 하면 기본 1번입니다.




사용자 삽입 이미지


비밀번호 넣으라고 합니다.
유저네임은 위에 root로 지정을 했기에 안 뜨는 것입니다.

비밀번호 입력합니다.






사용자 삽입 이미지



이런식으로 그래픽으로 접속이 가능합니다.
10메가 속도일 때 원도우의 mstsc 보다 속도가 느리더군요.

참고하세욤