Как да използваме VNC с Fedora core 1
Текст на български : Александър Неделчев
E-mail: sasho_in__@__yahoo.com
Какво е VNC?
VNC е съкращение за Virtual Network Computing. Това е
remote control software, който ви позволява да гледате и
взаимодействате с друг компютър (наречен "server"),
използвайки проста програма (наречена "viewer") . Двата
компютъра дори не трябва да са от един и същи тип! Например
може да използвате VNC като "viewer" от Linux машина в
офиса, за да се свържете с Windows-кото си PC вкъщи. VNC е
безплатна и е широко разпространена сред милиони.
За повече информация, моля посетете http://www.realvnc.com/
Инсталирана ли е VNC на компютъра ми?
Въведете следните команди, за да проверите дали имате
клиента и сървър инсталирани на компютъра си.
[sasho@mx sasho]$ rpm -q vnc
vnc-server vnc-4.0-0.beta4.3.2
vnc-server-4.0-0.beta4.3.2
[sasho@mx sasho]$
###
За да настроите vncserver като service на системата ви,
добавете своя потребител в следния конфигурационен файл.
[sasho@mx sasho]$ sudo vi /etc/sysconfig/vncservers
# The VNCSERVERS variable is a list of display:user
pairs.
#
# Uncomment the line below to start a VNC
server on display :1
# 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
# URL:http://www.uk.research.att.com/vnc/sshvnc.html
# VNCSERVERS="1:myusername"
VNCSERVERS="1:sasho"
###
Преди да стратирате vncserver като услуга за системата
ви, нека да създадем vnc парола със командата
vncpasswd .
Забележете че тя създава скрита директория .vnc
в home,която съдържа файл passwd
,който пък съдържа вашата vnc парола.
[sasho@mx sasho]$ vncpasswd
Password:
Verify:
[sasho@mx sasho]$ ls -d .vnc
.vnc
[sasho@mx sasho]$
ls .vnc
passwd
[sasho@mx sasho]$
###
Сега нека да стартираме vncserver като service.
[sasho@mx sasho]$ sudo /sbin/service vncserver start
Starting VNC server: 1:sasho [ OK ]
[sasho@mx sasho]$
Разгледайте съдържанието на .vnc директорията. Трябва
да има нещо подобно на следното.
[sasho@mx sasho]$ cd .vnc
[sasho@mx .vnc]$ ls
passwd mx:1.log mx:1.pid xstartup
[sasho@mx .vnc]$
Ако разгледате скрипта наречен xstartup
, ще забележите следните коментари в удебелен
шрифт.
Разкоментирайте тези две линии (тези с удебеления шрифт) ,
както е показано по-долу! Иначе програмата ще показва само
сив екран.
#!/bin/sh
# Uncomment the following two lines for normal desktop:
unset SESSION_MANAGER
exec /etc/X11/xinit/xinitrc
[ -x /etc/vnc/xstartup ] && exec /etc/vnc/xstartup
[ -r $HOME/.Xresources ] && xrdb $HOME/.Xresources
xsetroot -solid grey
vncconfig -iconic &
xterm -geometry 80x24+10+10 -ls -title "$VNCDESKTOP
Desktop" &
twm &
###
След като оправихме vnc startup скрипта, нека да
стартираме vncserver-а.
[sasho@mx sasho]$ sudo /sbin/service vncserver restart
Shutting down VNC server: 1:sasho [ OK ]
Starting VNC server: 1:sasho [ OK ]
[sasho@mx sasho]$
Така, но сега как да се свържем към vncserver-а?
Използвайте командата vncviewer във vnc
клиента както следва.
[sasho@mx sasho]$ vncviewer localhost:1

Въведете vnc паролата си и ето го резултата

За да се свържете към отдалечена система с firewall,
порт 5901 трябва да е отворен.
Сложете следния ред в болд шрифт, за да отворите порт 5091
и рестартирайте iptables услугата.
[sasho@mx sasho]$ sudo vi /etc/sysconfig/iptables
# Firewall configuration written by
redhat-config-securitylevel
# Manual customization of this file is not recommended.
*filter
:INPUT ACCEPT [0:0]
:FORWARD ACCEPT [0:0]
:OUTPUT ACCEPT [0:0]
:RH-Firewall-1-INPUT - [0:0
] -A INPUT -j RH-Firewall-1-INPUT
-A FORWARD -j RH-Firewall-1-INPUT
-A RH-Firewall-1-INPUT -i lo -j ACCEPT
-A RH-Firewall-1-INPUT -p icmp --icmp-type any -j ACCEPT
-A RH-Firewall-1-INPUT -p 50 -j ACCEPT
-A RH-Firewall-1-INPUT -p 51 -j ACCEPT
-A RH-Firewall-1-INPUT -m state --state ESTABLISHED,RELATED
-j ACCEPT
-A RH-Firewall-1-INPUT -m state --state NEW -m tcp -p tcp
--dport 22 -j ACCEPT
-A RH-Firewall-1-INPUT -m state --state NEW -m tcp -p
tcp --dport 5901 -j ACCEPT
-A RH-Firewall-1-INPUT -j REJECT --reject-with
icmp-host-prohibited
COMMIT
[sasho@mx sasho]$ sudo /sbin/service iptables restart
Flushing firewall rules: [ OK ]
Setting chains to policy ACCEPT: filter [ OK ]
Unloading iptables modules: [ OK ]
Applying iptables firewall rules: [ OK ]
[sasho@mx sasho]$
За неточности и препоръки пишете на sasho_in[@]yahoo.com
Надявам се че съм бил изчерпателен и полезен :-)