Re: Strano problema con ssh -addendum

Dario Lombardo <[email protected]>
Newsgroups gmane.comp.security.italian
Message-ID <CAOYJJftwrOwBR+vOppOj5AYv0_A8FZ9rE+uk2+Fv6-J+8fLLXA@mail.gmail.com>
Proverei ad indagare l'uso di pipe in PHP. Nei due esempi che riporti in
uno c'e' e nell'altro no.
In questi casi di sotto-shell, spesso la redirezione su pipe non e'
immediatamente trasportabile da un linguaggio ad un altro (da bash a php,
ad es).
Ciao
Dario.

2016-11-26 16:25 GMT+01:00 Gelpi Andrea <[email protected]>:

> Il 26/11/2016 13:24, Gelpi Andrea ha scritto:
> > Salve,
> >       sto attivando un sistema di disaster recovery basato su filesystem
> ZFS
> >
> > Con uno script in PHP (trovato in rete) sto cercando di lanciare i due
> > comandi necesari.
> >
> > Sul recevier: mbuffer | zfs receive
> > Sul sender zfs send | mbuffer
> >
> > Poichè lo script gira sul sender il primo comando viene lanciato con ssh
> >
> > ssh host 'mbuffer | zfs receive'
> >
> > Il server sender è una Centos 6.8
> > IL receiver è una Debian 8
> >
> > Il problema è che se faccio ssh da Debian verso il receiver e lancio il
> > primo comando a mano tutto funziona.
> >
> > Se invece il comando ssh lo faccio lanciare dallo script php ottengo:
> > mbuffer: warning: error connecting to 192.168.65.200:9090: Connection
> > refused
> >
> > Facendo diagnosi sul server ricevente ottengo:
> > mbuffer: error: outputThread: error writing to <stdout> at offset
> > 0x60000: Broken pipe
> >
> > Ho verificato che sul receiver entrambi i processi sono in esecuzione,
> > cioè zfs receive è in esecuzione, am appena riceve dati chiude.
> >
> > In pratica se il comando lo lancia lo script php da Centos il comando
> > lanciato da ssh va in crash.
> >
> > Se invece lo stesso comando lo lancio a mano dopo aver fatto ssh nel
> > server tutto funziona.
> >
> > Ho provato anche a modificare /etc/ssh/ssh_config rendendolo uguale a
> > quello di debian, ma non aiuta.
> >
> > Non riesco a capire dove sta il problema e come fare a fare ulteriore
> > diagnosi.
> >
> > Idee?
> >
>
> Dopo numerose prove sono convinto che il problema stia nell'uso del pipe
> dentro il comando ssh lanciato da php.
>
> Infatti se uso un solo comando con ssh tutto funziona.
>
> Esempio:
>
> zfs send | ssh host 'zfs receive'
>
> Questo funziona perfettamente se lanciato dallo script, ma ovviamente le
> prestazioni sono quello che sono.
>
> Per escludere mbuffer ho provato anche con netcat e le cose non cambiano.
>
> Per motivi che non riesco a comprendere se lancio da php:
>
> proc_open("ssh host 'mbuffer -I 9090 | zfs receive tank/datasore &', ...
>
> Non funziona.
>
> proc_open("ssh host 'zfs list -t snap', ...
>
> Invece funziona perfettamente.
>
> --
> Gelpi ing. Andrea
> --------------------------------------------------------------
> It took the computing power of three C-64s to fly to the Moon.
> It takes a 486 to run Windows 95. Something is wrong here.
> --------------------------------------------------------------
> ________________________________________________________
> http://www.sikurezza.org - Italian Security Mailing List
>
>
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.