From: Anthony Liguori <anthony@codemonkey.ws>
To: "Ciprian Dorin, Craciun" <ciprian.craciun@gmail.com>
Cc: linux-newbie@vger.kernel.org, nbd-general@lists.sourceforge.net,
qemu-devel@nongnu.org
Subject: Re: [Qemu-devel] Transforming stdin and stdout pair into a socket
Date: Mon, 11 May 2009 07:02:30 -0500 [thread overview]
Message-ID: <4A0813D6.3050609@codemonkey.ws> (raw)
In-Reply-To: <8e04b5820905101119u39ae84bfp1bae24be6e057086@mail.gmail.com>
Ciprian Dorin, Craciun wrote:
> Hello all!
>
> Today I've played around with NBD (Network Block Disk), and
> qemu-nbd (a NBD client that exports QEMU disks as NBD's).
>
> My problem is the following: both NBD kernel module and qemu-nbd
> implementation expect to use a socket in order to communicate.
> This means that in order to securely tunnel the connection over
> SSH (OpenSSH), I need an intermediary process that creates a socket
> and forwards all input / output between this socket and stdin / stdout
> (which are in fact pipes received from OpenSSH).
>
> My question is: can I somehow make the pair of stdin / stdout seem
> as a socket to the Linux syscalls (read and write)? (I would have to
> make stdin / stdout pair look like a single file descriptor.) (This
> would eliminate the intermediate process that just pipes data, and
> thus reduce the overhead.)
>
Something like socat should to do the trick.
For instance, if you have qemu-nbd on localhost:1025:
ssh -l user hostname.com socat stdio tcp:localhost:1025
Alternative, you could just do ssh based port forwarding. For instance:
ssh -l user -L 1025:localhost:1025 hostname.com
And then connect locally with nbd-client
Regards,
Anthony Liguori
--
To unsubscribe from this list: send the line "unsubscribe linux-newbie" in
the body of a message to majordomo@vger.kernel.org
More majordomo info at http://vger.kernel.org/majordomo-info.html
Please read the FAQ at http://www.linux-learn.org/faqs
WARNING: multiple messages have this Message-ID (diff)
From: Anthony Liguori <anthony@codemonkey.ws>
To: "Ciprian Dorin, Craciun" <ciprian.craciun@gmail.com>
Cc: nbd-general@lists.sourceforge.net, linux-newbie@vger.kernel.org,
qemu-devel@nongnu.org
Subject: Re: [Qemu-devel] Transforming stdin and stdout pair into a socket
Date: Mon, 11 May 2009 07:02:30 -0500 [thread overview]
Message-ID: <4A0813D6.3050609@codemonkey.ws> (raw)
In-Reply-To: <8e04b5820905101119u39ae84bfp1bae24be6e057086@mail.gmail.com>
Ciprian Dorin, Craciun wrote:
> Hello all!
>
> Today I've played around with NBD (Network Block Disk), and
> qemu-nbd (a NBD client that exports QEMU disks as NBD's).
>
> My problem is the following: both NBD kernel module and qemu-nbd
> implementation expect to use a socket in order to communicate.
> This means that in order to securely tunnel the connection over
> SSH (OpenSSH), I need an intermediary process that creates a socket
> and forwards all input / output between this socket and stdin / stdout
> (which are in fact pipes received from OpenSSH).
>
> My question is: can I somehow make the pair of stdin / stdout seem
> as a socket to the Linux syscalls (read and write)? (I would have to
> make stdin / stdout pair look like a single file descriptor.) (This
> would eliminate the intermediate process that just pipes data, and
> thus reduce the overhead.)
>
Something like socat should to do the trick.
For instance, if you have qemu-nbd on localhost:1025:
ssh -l user hostname.com socat stdio tcp:localhost:1025
Alternative, you could just do ssh based port forwarding. For instance:
ssh -l user -L 1025:localhost:1025 hostname.com
And then connect locally with nbd-client
Regards,
Anthony Liguori
next prev parent reply other threads:[~2009-05-11 12:02 UTC|newest]
Thread overview: 16+ messages / expand[flat|nested] mbox.gz Atom feed top
2009-05-10 18:19 Transforming stdin and stdout pair into a socket Ciprian Dorin, Craciun
2009-05-10 18:19 ` [Qemu-devel] " Ciprian Dorin, Craciun
2009-05-11 8:03 ` [Nbd] " Laurent Vivier
2009-05-11 8:03 ` [Qemu-devel] " Laurent Vivier
2009-05-11 13:28 ` Ciprian Dorin, Craciun
2009-05-11 13:28 ` [Qemu-devel] Re: [Nbd] " Ciprian Dorin, Craciun
2009-05-11 12:02 ` Anthony Liguori [this message]
2009-05-11 12:02 ` [Qemu-devel] " Anthony Liguori
2009-05-11 13:32 ` Ciprian Dorin, Craciun
2009-05-11 13:32 ` Ciprian Dorin, Craciun
[not found] ` <8e04b5820905110632q1a3b9ad4u49d4f3208d994755-JsoAwUIsXosN+BqQ9rBEUg@public.gmane.org>
2009-05-11 19:31 ` Wouter Verhelst
2009-05-11 19:31 ` [Nbd] " Wouter Verhelst
2009-05-11 23:07 ` Paul Brook
2009-05-11 23:07 ` Paul Brook
2009-05-12 2:24 ` Anthony Liguori
2009-05-12 2:24 ` Anthony Liguori
Reply instructions:
You may reply publicly to this message via plain-text email
using any one of the following methods:
* Save the following mbox file, import it into your mail client,
and reply-to-all from there: mbox
Avoid top-posting and favor interleaved quoting:
https://en.wikipedia.org/wiki/Posting_style#Interleaved_style
* Reply using the --to, --cc, and --in-reply-to
switches of git-send-email(1):
git send-email \
--in-reply-to=4A0813D6.3050609@codemonkey.ws \
--to=anthony@codemonkey.ws \
--cc=ciprian.craciun@gmail.com \
--cc=linux-newbie@vger.kernel.org \
--cc=nbd-general@lists.sourceforge.net \
--cc=qemu-devel@nongnu.org \
/path/to/YOUR_REPLY
https://kernel.org/pub/software/scm/git/docs/git-send-email.html
* If your mail client supports setting the In-Reply-To header
via mailto: links, try the mailto: link
Be sure your reply has a Subject: header at the top and a blank line
before the message body.
This is an external index of several public inboxes,
see mirroring instructions on how to clone and mirror
all data and code used by this external index.