Como forçar o rsync a usar minhas configurações de proxy?

6

Estou instalando macports no meu Mac OS X e, para buscar os binários do repositório, ele usa o protocolo rsync. Infelizmente parece que o repositório não é acessível por conexão direta da minha máquina. Então eu corri um programa proxy local (suporta http, https, ftp e socks) e agora tentando descobrir como redirecionar a conexão rsync através do meu proxy. Existe alguém que saiba disso? Felicidades,

    
por ashkrosh 26.12.2009 / 17:10

2 respostas

7

man rsync é seu amigo.

You may establish the connection via a web proxy by setting the environment variable RSYNC_PROXY to a host-name:port pair pointing to your web proxy. Note that your web proxy's configuration must support proxy connections to port 873.

Portanto, supondo que seu proxy esteja na porta 3128, RSYNC_PROXY=localhost:3128 deve fazer o que você precisa.

    
por 28.12.2009 / 04:31
5

Se você usar o squid para o seu proxy web, adicione as duas linhas centrais ao squid.conf (/etc/squid/squid.conf na maioria dos sistemas unix, ou / opt / local / etc / squid / squid.conf no MacPorts):

acl SSL_ports port 443

acl SSL_ports port 873     # ADD THIS FOR RSYNC ACCESS
acl Safe_ports port 873    # ADD THIS FOR RSYNC ACCESS

acl CONNECT method CONNECT

Em seguida, a partir de um shell (se isso funcionar, você pode tentar configurá-lo permanentemente), digite:

export RSYNC_PROXY=proxyhost:proxyport

Se o seu proxy exigir uma senha:

export RSYNC_PROXY=username:password@proxyhost:proxyport

Se o acima for impossível para você configurar, você também pode tentar isso. Isso requer que você tenha acesso via ssh para um servidor que possa atuar como proxy.

export RSYNC_CONNECT_PROG='ssh tunnelhost nc %H 873'

O servidor ssh terá que ter o 'netcat' instalado, quase todos. Caso contrário, pode ser instalado usando algo semelhante a:

debian / ubuntu:

apt-get install netcat

centos / redhat

yum install nc
    
por 28.11.2011 / 12:22