Server vnc con accesso alla finestra di login

esperienze avute con Linux e la configurazione di qualche periferica o programma. Postate solo configurazioni effettuate con successo
Avatar utente
brigantelukano
Fresh Pinguinus
Fresh Pinguinus
Messaggi: 10
Iscritto il: mercoledì, 21.10.2009, 16:34
Indica il numero centrale della lista (tre): 3
Contatta:

Server vnc con accesso alla finestra di login

Messaggioda brigantelukano » mercoledì, 20.10.2010, 15:06

Realizzazione di un server Vnc con accesso alla finestra di login

Con questa guida vedremo come prendere il controllo di un server vnc alla finestra di login

x11vnc permette di vedere da remoto e di interagire con un display X reale (cioè un display che corrisponde ad un insieme monitor, tastiera e mouse fisico) mediante un qualsiasi visualizzatore VNC. Ha cifratura e autenticazione SSL incorporate, supporto per account e password UNIX, ridimensionamento lato server, HTTPS e VNC su singola porta, trasferimento file TightVNC e UltraVNC

per avere accesso sin dal login ci sono due requisiti:
1- la rete sia gia` configurata = non usare network manager ma /etc/network/interfaces
2- usare un server vnc che supporti l'esecuzione senza display iniziale come x11vnc

Configurazione della rete:

La maggior parte della configurazione di ethernet è raccolta in un singolo file, /etc/network/interfaces. Se non è presente alcun dispositivo ethernet, in questo file è elencata solo l'interfaccia di loopback e il contenuto è simile a quanto segue:

# Questo file descrive le interfacce di rete disponibili sul sistema e
# come attivarle. Per maggiori informazioni, consultare interfaces(5).

# L'interfaccia di rete di loopback
auto lo
iface lo inet loopback
address 127.0.0.1
netmask 255.0.0.0


Se nel sistema è presente solo un dispositivo ethernet, eth0, e la sua configurazione viene ottenuta da un server DHCP, allora il dispositivo dovrebbe essere attivato automaticamente al boot e nel file sono richieste solo due righe aggiuntive:

auto eth0
iface eth0 inet dhcp


La prima riga specifica che il dispositivo eth0 dovrebbe essere attivato automaticamente al boot. La seconda riga indica che l'interfaccia (“iface”) eth0 dovrebbe avere un indirizzo nello spazio di IPv4 (sostituire “inet” con “inet6” per un dispositivo IPv6) e che dovrebbe ottenere la sua configurazione da DHCP in modo automatico. Assumendo che la rete e il server DHCP sono propriamente configurati, la macchina in questione non dovrebbe necessitare di ulteriore configurazione per operare propriamente. Il server DHCP fornisce il gateway predefinito (implementato attraverso il comando route), l'indirizzo IP del dispositivo (implementato attraverso il comando ifconfig) e viene usato un server DNS sulla rete (implementato nel file /etc/resolv.conf).
Per configurare il dispositivo ethernet con un indirizzo IP statico e una configurazione personalizzata, sono richieste alcune informazioni aggiuntive. Si fa l'ipotesi di voler assegnare l'indirizzo IP 192.168.0.2 al dispositivo eth1, con la tipica maschera di rete 255.255.255.0. L'indirizzo IP del gateway predefinito è 192.168.0.1. In tal caso si dovrebbe inserire in /etc/network/interfaces qualcosa tipo:

iface eth1 inet static
address 192.168.0.2
netmask 255.255.255.0
gateway 192.168.0.1


In tal caso è necessario specificare manualmente i server DNS in /etc/resolv.conf, che dovrebbe contenere qualcosa tipo:
search miodominio.it

nameserver 192.168.0.1
nameserver 4.2.2.2


Installazione x11vnc

La prima cosa da fare è disabilitare il ‘Desktop Sharing’ (nel caso lo abbiate attivato) che si trova sotto System -> Preferences -> Remote Desktop.
Installiamo ora il programma e configuriamolo.
Da una shell digitiamo:

sudo apt-get install x11vnc


E' consigliato a questo punto impostare una password per l'accesso remoto al server vnc; la password impostata verrà memorizzata nel seguente file ~/.vnc/passwd; Il comando da lanciare è:

$ x11vnc -storepasswd


Script per avvio automatico (un grazie a il muflone per la realizzazione dello script)

Aprire un editor di testo con i privilegi di amministratore ed incollare il testo seguente:

#! /bin/sh
#
### BEGIN INIT INFO
# Provides: x11vnc
# Required-Start: $syslog $local_fs $remote_fs
# Required-Stop: $syslog $local_fs $remote_fs
# Default-Start: 2 3 4 5
# Default-Stop: 1
# Short-Description: X11 VNC server
# Description: VNC server for X11
### END INIT INFO

PATH=/usr/local/sbin:/usr/local/bin:/sbin:/bin:/usr/sbin:/usr/bin
DAEMON=/usr/bin/x11vnc
DAEMON_OPTS="-rc /etc/x11vnc/x11vncrc"
NAME=x11vnc
DESC="X11 VNC server"

test -x $DAEMON || exit 0

set -e

case "$1" in
start)
echo -n "Starting $DESC: "
start-stop-daemon --start --quiet \
--exec $DAEMON -- $DAEMON_OPTS &
echo "$NAME."
;;
stop)
echo -n "Stopping $DESC: "
start-stop-daemon --stop --oknodo --quiet \
--exec $DAEMON
echo "$NAME."
;;
restart)
echo -n "Restarting $DESC: "
start-stop-daemon --stop --oknodo --quiet --exec $DAEMON
sleep 1
start-stop-daemon --start --quiet --exec $DAEMON -- $DAEMON_OPTS
echo "$NAME."
;;
*)
N=/etc/init.d/$NAME
echo "Usage: $N {start|stop|restart}" >&2
exit 1
;;
esac

exit 0


salvarlo in /etc/init.d con il nome di x11vnc

lo rendiamo eseguibile con

sudo chmod +x /etc/init.d/x11vnc


quindi mettiamolo in avvio automatico con

sudo update-rc.d x11vnc start 95 2 . stop 5 1 .


creare in /etc una cartella dal nome x11vnc e sempre con un editor di testo creare il file x11vncrc (questo file serve a settare le opzioni di x11vnc quindi ognuno può personalizzarlo come meglio crede!!!!)

-reopen
-shared
-forever
-ultrafilexfer
-solid
-o /var/log/x11vnc.log
-q
-ncache
-wireframe
-wmdt gnome
-nossl
-rfbauth /etc/x11vnc/rfbauth (questo è il percorso dove avete salvato la password di accesso con x11vnx!!!!!)
-loop


Connessione al server vnc

Per connettersi al server vnc, un possibile comando è il seguente:

$vncviewer indirizzo.ip.server.vnc::5900:0


o semplicemente

$vncviewer indirizzo.ip.server.vnc:5900


Il parametro 5900 indica la porta su cui il server vnc di solito si mette in ascolto per la ricezione delle eventuali richieste (in alternativa potrebbe essere usata la porta 5901 - se dovessero esserci problemi verificare la configurazione del server vnc ).
Potete anche omettere la porta lanciando semplicemente:

$vncviewer indirizzo.ip.server.vnc


Ubuntu 11.10 e versioni successive

Da Ubuntu 11.10 è stato introdotto lightDM come gestore di login, l'introduzione di lightDM ha modificato il metodo per poter aver accesso alla finestra di login con x11vnc, esistono diverse soluzioni io personalmente preferisco affidarmi a Xinetd
Nelle versioni di Linux più recenti Inetd viene sostituito da un superdemone più versatile e sicuro: Xinetd.
A differenza del precedessore, xinetd:
- Limita o regola l'accesso a determinati servizi sia con un sistema proprio sia inglobando nella sua configurazione i TcpWrappers
- Offre un sistema di logging indipendente da syslog
- Permette di limitare l'accesso ai servizi in determinate ore della giornata
- Supporta il protocollo Ipv6
- Utilizza vari meccanismi che mitigano l'impatto di un attacco DOS.

Come prima cosa installiamo da terminale Xinetd:
sudo apt-get install xinetd x11vnc


Una volta installato Xinetd con il nostro editor di testo creiamo in, /etc/xinetd.d un file con le seguenti caratteristiche che chiameremo x11vnc

service x11vnc
{
type = UNLISTED
disable = no
socket_type = stream
protocol = tcp
wait = no
user = root
server = /usr/bin/x11vnc
server_args = -inetd -o /var/log/x11vnc.log -display :0 -forever -bg -rfbauth /home/xxx/.vnc/passwd -ultrafilexfer -shared -enablehttpproxy -forever -nolookup -auth /var/run/lightdm/root/:0
port = 5900
flags = IPv6
}


Rendiamolo eseguibile con il seguente comando
sudo chmod a+x /etc/xinetd.d/x11vnc

Creiamo una password di accesso a vnc
sudo x11vnc -storepasswd (VNC password) /home/xxx/.vnc/passwd


Riavviamo il sistema e avremo il nostro vnc alla finestra di login anche con le ultime versioni di ubuntu

PS:ricordarsi di configurare il router ed aprire le porte verso la macchina dove gira il server
PSS:per ovviare il problema dell'ip dinamico (se volete connettervi dall'esterno della vostra rete!!!) usare uno dei vari clientdns (di solito sono già presenti in molti router)

il tutto testato e funzionante su ubuntu 10.10 e Ubuntu 12.10
Ultima modifica di brigantelukano il giovedì, 08.11.2012, 16:06, modificato 1 volta in totale.
PS: Il progresso deve essere condiviso!!!!
- - - - - - - - - - - - - - - - - - - - - - - - - - -
brigantelukano(-AT-)gmail.com
GnuPG public key: 0x9B90E56F
Key fingerprint: 529F 15AA C240 7610 4EAF F1FB 8A48 E736 9B90 E56F

Avatar utente
zeno
Website Administrator
Website Administrator
Messaggi: 130
Iscritto il: sabato, 30.08.2008, 21:57
Indica il numero centrale della lista (tre): 0
Località: Potenza
Contatta:

Re: Server vnc con accesso alla finestra di login

Messaggioda zeno » domenica, 24.10.2010, 19:16

Wow che bella guida!!!

Provo a segnalarla su qualche social network, davvero molto ben fatta ;)

Grazie Brigantelukano!!!
http://www.stefanolaguardia.eu
... sopra tutto, Debian GNU/Linux ...
- - - - - - - - - - - - - - - - - - - - - - - - - -
ZeNo is zeno(-AT-)baslug.org
GnuPG public key: 0xB5BE6DD1
Key Fingerprint: A6F8 62FE 42C4 695C D6EA 3A6A 7626 2887 B5BE 6DD1

Avatar utente
brigantelukano
Fresh Pinguinus
Fresh Pinguinus
Messaggi: 10
Iscritto il: mercoledì, 21.10.2009, 16:34
Indica il numero centrale della lista (tre): 3
Contatta:

Re: Server vnc con accesso alla finestra di login

Messaggioda brigantelukano » lunedì, 25.10.2010, 13:38

Ho preso spunto da tutte le guide lette e le discussioni fatte sui forum quando mi sono trovato ad affrontare il problema......e soprattutto dalla pazienza delle persone che cercano di aiutarti.........questo è il bello di Linux

Non sono potuto venire al linux day.....perchè non fate un bel resoconto magari aggiungendo anche qualche video????

PS:Ma organizzate qualche bel corso di linux????..oppure qualche iniziativa per far avvicinare al pinguino????
PS: Il progresso deve essere condiviso!!!!
- - - - - - - - - - - - - - - - - - - - - - - - - - -
brigantelukano(-AT-)gmail.com
GnuPG public key: 0x9B90E56F
Key fingerprint: 529F 15AA C240 7610 4EAF F1FB 8A48 E736 9B90 E56F

Avatar utente
zeno
Website Administrator
Website Administrator
Messaggi: 130
Iscritto il: sabato, 30.08.2008, 21:57
Indica il numero centrale della lista (tre): 0
Località: Potenza
Contatta:

Re: Server vnc con accesso alla finestra di login

Messaggioda zeno » lunedì, 25.10.2010, 13:50

brigantelukano ha scritto:Ho preso spunto da tutte le guide lette e le discussioni fatte sui forum quando mi sono trovato ad affrontare il problema......e soprattutto dalla pazienza delle persone che cercano di aiutarti.........questo è il bello di Linux

Non sono potuto venire al linux day.....perchè non fate un bel resoconto magari aggiungendo anche qualche video????

PS:Ma organizzate qualche bel corso di linux????..oppure qualche iniziativa per far avvicinare al pinguino????


Peccato che non sei venuto :)
Per il resoconto se ho tempo lo perparo stasera, ma non assicuro di riuscirci.

Per quanto riguarda i corsi, ti invito caldamente ad iscriverti alla ML del baslug perchè penso che si stiano ponendo le basi per poterlo organizzare ;)

P.S.: hai per caso visto anche la mia guida? http://www.stefanolaguardia.eu/2008/08/ ... nc-client/
http://www.stefanolaguardia.eu
... sopra tutto, Debian GNU/Linux ...
- - - - - - - - - - - - - - - - - - - - - - - - - -
ZeNo is zeno(-AT-)baslug.org
GnuPG public key: 0xB5BE6DD1
Key Fingerprint: A6F8 62FE 42C4 695C D6EA 3A6A 7626 2887 B5BE 6DD1

Avatar utente
brigantelukano
Fresh Pinguinus
Fresh Pinguinus
Messaggi: 10
Iscritto il: mercoledì, 21.10.2009, 16:34
Indica il numero centrale della lista (tre): 3
Contatta:

Re: Server vnc con accesso alla finestra di login

Messaggioda brigantelukano » lunedì, 25.10.2010, 22:47

si ho letto anche la tua guida perchè per una maggiore sicurezza volevo che il server si avviasse in automatico con cifratura ssl in modo da permettere solo a chi aveva il certificato di autenticarsi........sinceramente mi funzionava solo da linux non da windows dove mi restituiva un errore di mancata autenticazione del certificato......però sinceramente non ho approfondito l'argomento.....per quanto riguarda i corsi mi iscrivo subito....se si organizzano sarebbe davvero una bella cosa.....
PS: Il progresso deve essere condiviso!!!!
- - - - - - - - - - - - - - - - - - - - - - - - - - -
brigantelukano(-AT-)gmail.com
GnuPG public key: 0x9B90E56F
Key fingerprint: 529F 15AA C240 7610 4EAF F1FB 8A48 E736 9B90 E56F

Avatar utente
brigantelukano
Fresh Pinguinus
Fresh Pinguinus
Messaggi: 10
Iscritto il: mercoledì, 21.10.2009, 16:34
Indica il numero centrale della lista (tre): 3
Contatta:

Re: Server vnc con accesso alla finestra di login

Messaggioda brigantelukano » giovedì, 08.11.2012, 16:08

Ho modificato la guida inserendo la procedura da effettuare dalla ubuntu 11.10 in poi...considerando l'introduzione di LightDM la procedura varia,spero di aver fatto cosa gradita :-D
PS: Il progresso deve essere condiviso!!!!
- - - - - - - - - - - - - - - - - - - - - - - - - - -
brigantelukano(-AT-)gmail.com
GnuPG public key: 0x9B90E56F
Key fingerprint: 529F 15AA C240 7610 4EAF F1FB 8A48 E736 9B90 E56F

Avatar utente
zeno
Website Administrator
Website Administrator
Messaggi: 130
Iscritto il: sabato, 30.08.2008, 21:57
Indica il numero centrale della lista (tre): 0
Località: Potenza
Contatta:

Re: Server vnc con accesso alla finestra di login

Messaggioda zeno » giovedì, 08.11.2012, 17:23

brigantelukano ha scritto:Ho modificato la guida inserendo la procedura da effettuare dalla ubuntu 11.10 in poi...considerando l'introduzione di LightDM la procedura varia,spero di aver fatto cosa gradita :-D


Graditissima direi :)

Anche se personalmente non sono fan di Ubuntu ;)
http://www.stefanolaguardia.eu
... sopra tutto, Debian GNU/Linux ...
- - - - - - - - - - - - - - - - - - - - - - - - - -
ZeNo is zeno(-AT-)baslug.org
GnuPG public key: 0xB5BE6DD1
Key Fingerprint: A6F8 62FE 42C4 695C D6EA 3A6A 7626 2887 B5BE 6DD1


Torna a “Configurazioni”

Chi c’è in linea

Visitano il forum: Nessuno e 1 ospite