Newsgroup: it.comp.os.linux.sys
Titolo: Server che chiama il client

Salve a tutti, vi espongo subito il mio problema.
A breve partirò per l'estero e starò fuori 6 mesi. Avrò con me il portatile 
ma ovviamente non potrò portarmi dietro tutto ciò che ho sul computer 
fisso. Avrei bisogno di realizzare una shell sul fisso in modo che possa 
accedere da remoto. Il problema nasce in quanto io sono un utente fastweb e 
il mio IP non è visibile all'esterno della rete FW. 
Avrei pensato a un semplice script che tramite fetchmail e procmail mi 
legga un'email inviata di volta in volta, ne estragga l'indirizzo IP e 
lanci una sessione telnet (o simili...) verso l'IP trovato (che sarebbe 
quello del mio portatile). 
Solitamente è il client che chiama il server su cui è posto l'interprete 
dei comandi. Nel mio caso però dovrebbe essere il server a chiamare il 
client e mettersi poi in attesa di comandi.
Come posso realizzare questa "inversione" di compiti?
p.s.=tralascio l'IPV6 di sideralis in quanto mi ci sono già scontrato in 
passato con risultati insoddisfacenti.
-- 
N1 on zx-6r '04 cocci & dolori
"Ma i motori adiabatici sono quelli che non possono mangiare troppi 
zuccari?" cit. Asder
*** 
www.gladio.org
 ***
ICQ - 140416778

 A breve partirò per l'estero e starò fuori 6 mesi.
Smontare il disco del fisso e porlo in un case esterno di alluminio?

 
non partire per niente? :)
no grazie, lascerei un PC inutilizzabile. Facendo come dico io invece avrei 
il mio portatile più un PC qui che posso comandare da remoto e fargli fare 
ciò che voglio.
A parte tutto, mi interesserebbe impostare un sistema del genere.


 no grazie, lascerei un PC inutilizzabile. 
Non l'hai scritto, hai lasciato intendere che ti interessavano solo i
files presenti *ora*.
Un servizio tipo no-ip non funziona con fw, vero?
Ho sentito molte lamentele su quel provider.

 
quello è il meno...che il mio IP lo prenda dal servizio no-ip o dalla mail 
cambia poco. anzi forse dalla mail è meglio perchè lascerei lo script a 
girare e si attiverebbe solo quando trova la mail. il problema è seguente a 
questa fase, ovvero il far fare da chiamante e da interprete alla stessa 
macchina.


 
rileggendo ho capito ciň che intendessi dire. no, non funziona con FW verso 
l'esterno.


 l'esterno.
Se ricordo bene fw ha un ip di un server che gestisce piu' macchine sulla
rete interna, quindi non e' univoco. Se non esiste un modo certo per
essere identificati, anche ora che stai sulla tua macchina, la vedo dura.
Puoi connetterti con ssh verso l'esterno?

 
certo, è qua che parte l'idea. stabilisco la connessione dal fisso al 
portatile e fin qui ci sono. il problema è che poi l'interprete deve stare 
sul fisso e non sul portatile (altrimenti sarebbe già tutto bello e pronto)


 portatile e fin qui ci sono. il problema è che poi l'interprete deve stare 
man ssh
-R [bind_address:]port:host:hostport
          Specifies that the given port on the remote (server) host is to
          be forwarded to the given host and port on the local side.
Saluti
Matteo

 
potresti essere un pò più chiaro?
intendi forse dire che 
1) il fisso si collega al portatile
2) il portatile risponde e il fisso reindirizza tutto su un'altra porta 
(dove magari c'è un banale telnet in ascolto)
ho capito bene?


 il mio IP non č visibile all'esterno della rete FW. 
Provato hamachi (
www.hamachi.cc
) ?
-- 
bye, Bosk

 ho capito bene?
Non troppo, leggiti bene la man page che è molto chiara e se non basta 
cerca ssh port forwarding su google, ci son decine di guide.
Saluti
Matteo

 Come posso realizzare questa "inversione" di compiti?
Installi OpenVPN su entrambi e configuri che sia il server a fare da
"client". Poi ti setti un DNS dinamico con l'IP del tuo portatile e fai
puntare OpenVPN a questo.
-- 
Flavio Visentin
Membro del CICAP
Comitato Italiano per il Controllo delle Affermazioni di P4

 
provato ora...fa esattamente ciň che mi serve...ma la soddisfazione di 
riuscirci con le mani mie me la voglio togliere :D
intanto grazie, mi hai risolto il problema.


 
ho capito cosa intendevi. Dovrebbe essere la stessa situazione di questo 
post
https://lists.firenze.linux.it/pipermail/tech/2005-February/012840.html
dove però nel mio caso coincidono boxA e boxS
in pratica sarebbe
ssh -R porta_sul_portatile:indirizzo_portatile:porta_del_fisso
e mi apre una porta sul portatile alla quale mi collegherò in locale e 
tutto ciò che invio sarà forwardato al fisso sulla porta dove avrò in 
ascolto un semplice telnet.
andata?



Peccato sia software proprietario.
Comunque č interessante il principio di funzionamento; sto pensando a
come sfruttarlo con openvpn; basta un demone su una macchina
raggiungibile da tutti i peer e il gioco č fatto.


 
il free va molto bene, ha un limite di 16 utenti sulla stessa rete 
virtuale.


 il free va molto bene
Se fosse free veramente sì, ma personalmente lo eviterei per quanto
possibile. Anche perché un'applicazione di sicurezza come una VPN di cui
non si hanno i sorgenti non può essere reputata affidabile.
Se poi viene artificiosamente limitata nella versione free, perde
qualsiasi appeal.


 andata?
Si, ma puoi avere in ascolto qualunque cosa, non necessariamente telnet.
Saluti
Matteo

 
era un esempio. grazie per l'aiuto.


 certo, è qua che parte l'idea. 
Pensavo appunto al port forwarding, ma vedo che ti hanno gia' risposto.

 il mio IP non è visibile all'esterno della rete FW. 
Per divertimento, non perché avessi Fastweb, ho risolto questo problema 
giocando su un computer all'interno di Fastweb cui avevo accesso.
Ho preso i sorgenti di un semplice client ICQ (YSM = You Seek Me), e li 
ho modificati in modo tale da eseguire le operazioni che venivano 
inviate dal client (=computer fuori Fastweb) al contatto di ICQ presente 
sul server (=computer dentro Fastweb).
Come potrai capire, ciò mi permetteva di fare di tutto, in particolare 
dire al sever "aprimi un tunnel verso questo indirizzo ip" e il gioco 
era fatto. Ho preferito fare così perché lo reputo un metodo molto più 
affidabile delle mail in quanto il server rispondeva immediatamente 
tramite messaggi ICQ, avendo così un feedback immediato di quella che 
succedeva.
Ciauz,
	Giacomo.

 Come posso realizzare questa "inversione" di compiti?
Io farei una VPN attivata dal tuo server verso il tuo client (che nel
caso specifico farebbe da server della VPN).
Ovvero, configuri il tuo laptop per fare da server della VPN in grado di
accettare connessioni da roadwarrior, mentre configuri il "server" come
un roadwarrior.
Poi imposti il "server-roadwarrior" in modo che regolarmente scarichi la
posta da un indirizzo e-mail pubblico, e gli configuri uno script di
procmail che vada a riconfigurare ipsec.conf secondo i dati passati
tramite una mail (e relativi "codici di attivazione").
A questo punto la cosa potrebbe funzionare in questo modo:
- metti il laptop sulla rete pubblica;
- invii una e-mail con il subject "attivante" (es.: VPN CON 1.2.3.4)
  all'indirizzo pubblico;
- il server scarica quella mail;
- la elabora e attiva ipsec con quei parametri.
A questo punto, tu dovresti avere un tunnel tra i due PC. Potrai quindi
instaurare una sessione ssh tramite l'indirizzo INTERNO della VPN.
...non so se funziona tramite FastWeb, però si può sempre provare.
P.s.: le VPN per esperienza sono sempre fonte di bestemmioni osceni.
-- 
Massimo Bacilieri AKA Crononauta 
ICQ:4005815

 Come posso realizzare questa "inversione" di compiti?
E' semplice!
Sul server:
ssh -R 3000:localhost:22 -l<utente> -N <ip_del portatile>
Dal portatile
ssh -p 3000 -l<utente> localhost
La porta 3000 puo' essere quella che vuoi, deve essere una porta alta 
libera.
Io lo uso sempre per raggingere i server di alcuni clienti che hanno router 
o firewall non installati da me su quali non posso impostare un nat statico 
verso la macchina che voglio controllare.
Ciao. 

 sul server (=computer dentro Fastweb).
Carino... in effetti non ci avevo pensato, ma basta prendere uno dei
tanti trojan controllati via IRC che vengono usati nelle botnet.
Fanno proprio ciň che ti serve e in modo eccelso :-)))))


 
Ci avevo pensato, avrei anche potuto scrivere un hack di telnet che 
funzionasse al contrario ma sarebbe stata una soluzione oltremodo 
complicata e poco elegante. Sapevo che si poteva fare con gli strumenti già 
a disposizione, dovevo solo scoprire come.


 E' semplice!
Eh no, devi considerare il server inaccessibile fisicamente se non la 
prima volta che lo configuri.
Se ti cade la connessione ssh devi andare fisicamente dal server e 
rilanciarla.
Ciao,
	JacK