HTTP encapsulated rsync??

2007-04-17 Thread Robert Denton
Hi folks, I am hoping someone here can offer some suggestions.  Here  
is my situation:


I am using rsync over the internet for several hundred clients to  
keep them in sync with a master repository of files.  The rsync  
daemon is listening on port 80, because most of the clients are  
behind firewalls that only allow outbound port 80 (and other common  
ports).  This works fine for most of them but not all.


The trouble is that some of them are also behind devices that do not  
allow non-http traffic on port 80 and thus block the rsync.  
Therefore, I am looking for a way to use http encapsulation as a  
means to bypass the blocking devices. I have seen a few scattered  
queries around the net asking similar questions but I have not seen  
any good solutions offered.


One person suggested that http-tunnel be used but this is not a very  
elegant solution and I would like to avoid it if at all possible. If  
the tunnel were to hang or sever then I would have a difficult time  
correcting it since I do not have direct access to many of the  
clients. Does anyone here have any ideas?  Surely I am not the first  
person to ask this question.  Thanks!!


Robert



--
To unsubscribe or change options: https://lists.samba.org/mailman/listinfo/rsync
Before posting, read: http://www.catb.org/~esr/faqs/smart-questions.html


Re: HTTP encapsulated rsync??

2007-04-17 Thread Aaron W Morris

On 4/17/07, Robert Denton [EMAIL PROTECTED] wrote:

Hi folks, I am hoping someone here can offer some suggestions.  Here
is my situation:

I am using rsync over the internet for several hundred clients to
keep them in sync with a master repository of files.  The rsync
daemon is listening on port 80, because most of the clients are
behind firewalls that only allow outbound port 80 (and other common
ports).  This works fine for most of them but not all.

The trouble is that some of them are also behind devices that do not
allow non-http traffic on port 80 and thus block the rsync.
Therefore, I am looking for a way to use http encapsulation as a
means to bypass the blocking devices. I have seen a few scattered
queries around the net asking similar questions but I have not seen
any good solutions offered.

One person suggested that http-tunnel be used but this is not a very
elegant solution and I would like to avoid it if at all possible. If
the tunnel were to hang or sever then I would have a difficult time
correcting it since I do not have direct access to many of the
clients. Does anyone here have any ideas?  Surely I am not the first
person to ask this question.  Thanks!!

Robert


You can use an HTTP proxy.  Look at the RSYNC_PROXY environment
variable in the man page.

--
Aaron W Morris (decep)
--
To unsubscribe or change options: https://lists.samba.org/mailman/listinfo/rsync
Before posting, read: http://www.catb.org/~esr/faqs/smart-questions.html


Re: HTTP encapsulated rsync??

2007-04-17 Thread Robert Denton
Do you mean for example..  Instead of running rsync on port 80, have  
rsync listen for requests on 873 as usual, but also have squid  
running on the same server listening for port 80 connections, and  
then just configure squid to send all port 80 traffic to 873?


Robert


On Apr 17, 2007, at 1:27 PM, Aaron W Morris wrote:


On 4/17/07, Robert Denton [EMAIL PROTECTED] wrote:

Hi folks, I am hoping someone here can offer some suggestions.  Here
is my situation:

I am using rsync over the internet for several hundred clients to
keep them in sync with a master repository of files.  The rsync
daemon is listening on port 80, because most of the clients are
behind firewalls that only allow outbound port 80 (and other common
ports).  This works fine for most of them but not all.

The trouble is that some of them are also behind devices that do not
allow non-http traffic on port 80 and thus block the rsync.
Therefore, I am looking for a way to use http encapsulation as a
means to bypass the blocking devices. I have seen a few scattered
queries around the net asking similar questions but I have not seen
any good solutions offered.

One person suggested that http-tunnel be used but this is not a very
elegant solution and I would like to avoid it if at all possible. If
the tunnel were to hang or sever then I would have a difficult time
correcting it since I do not have direct access to many of the
clients. Does anyone here have any ideas?  Surely I am not the first
person to ask this question.  Thanks!!

Robert


You can use an HTTP proxy.  Look at the RSYNC_PROXY environment
variable in the man page.

--
Aaron W Morris (decep)



--
To unsubscribe or change options: https://lists.samba.org/mailman/listinfo/rsync
Before posting, read: http://www.catb.org/~esr/faqs/smart-questions.html


Re: HTTP encapsulated rsync??

2007-04-17 Thread Aaron W Morris

On 4/17/07, Robert Denton [EMAIL PROTECTED] wrote:

Do you mean for example..  Instead of running rsync on port 80, have
rsync listen for requests on 873 as usual, but also have squid
running on the same server listening for port 80 connections, and
then just configure squid to send all port 80 traffic to 873?

Robert


I was thinking more along the lines of creating a proxy for all of
your rsync requests.

You would not necessarily have to do any special configuration to
squid (except allow CONNECT with port 873, something I know has to be
done with mod_proxy), it should route the request itself.  Apache with
mod_proxy would work as well.

--
Aaron W Morris (decep)
--
To unsubscribe or change options: https://lists.samba.org/mailman/listinfo/rsync
Before posting, read: http://www.catb.org/~esr/faqs/smart-questions.html


Re: HTTP encapsulated rsync??

2007-04-17 Thread Robert Denton

This is an interesting idea.  Here is what I am trying:

I have set up squid to listen on port 81, since rsync on the same  
machine is already listening for requests on 80. I have set the  
RSYNC_PROXY env var to the hostname:81 and rand a quick test.  The  
result is that I am getting this error:


bad response from proxy -- HTTP/1.0 503 Service Unavailable
rsync: failed to connect to 192.168.233.56: Success (0)

I am thinking this is a problem with the squid config not passing the  
rsync request to the rsync daemon.


Another though occurs to me:  many of the clients are behind enforced  
proxies of their own, set via an env var: http_proxy.  Is this going  
to work with the RSYNC_PROXY? Since the rsync proxy is pointing to an  
http port on a server, will the request automatically be channeled  
through the enforced http_proxy?



Robert


On Apr 17, 2007, at 4:00 PM, Aaron W Morris wrote:


On 4/17/07, Robert Denton [EMAIL PROTECTED] wrote:

Do you mean for example..  Instead of running rsync on port 80, have
rsync listen for requests on 873 as usual, but also have squid
running on the same server listening for port 80 connections, and
then just configure squid to send all port 80 traffic to 873?

Robert


I was thinking more along the lines of creating a proxy for all of
your rsync requests.

You would not necessarily have to do any special configuration to
squid (except allow CONNECT with port 873, something I know has to be
done with mod_proxy), it should route the request itself.  Apache with
mod_proxy would work as well.

--
Aaron W Morris (decep)



--
To unsubscribe or change options: https://lists.samba.org/mailman/listinfo/rsync
Before posting, read: http://www.catb.org/~esr/faqs/smart-questions.html


Re: HTTP encapsulated rsync??

2007-04-17 Thread Aaron W Morris

On 4/17/07, Robert Denton [EMAIL PROTECTED] wrote:

This is an interesting idea.  Here is what I am trying:

I have set up squid to listen on port 81, since rsync on the same
machine is already listening for requests on 80. I have set the
RSYNC_PROXY env var to the hostname:81 and rand a quick test.  The
result is that I am getting this error:

bad response from proxy -- HTTP/1.0 503 Service Unavailable
rsync: failed to connect to 192.168.233.56: Success (0)

I am thinking this is a problem with the squid config not passing the
rsync request to the rsync daemon.

Another though occurs to me:  many of the clients are behind enforced
proxies of their own, set via an env var: http_proxy.  Is this going
to work with the RSYNC_PROXY? Since the rsync proxy is pointing to an
http port on a server, will the request automatically be channeled
through the enforced http_proxy?


Robert


If some of the clients are already having to go through proxies, it
does complicate matters.  If that is the case, you may have to
investigate setting up said proxies to proxy again using proxy
chaining/cascading, but that's a bit out of scope for this mailing
list.

It's difficult for me to say what the problem is with the 503 error,
but it sounds like you're on the right track.

--
Aaron W Morris (decep)
--
To unsubscribe or change options: https://lists.samba.org/mailman/listinfo/rsync
Before posting, read: http://www.catb.org/~esr/faqs/smart-questions.html