Linux, proxy http simples

5

Eu tenho um servidor linux em execução em um data center que possui recursos e largura de banda extra.

Gostaria de configurar um serviço de proxy para poder rotear todo o tráfego http / https de casa por meio dele. Eu sei como configurar o meu navegador para falar com o proxy, eu só não sei como configurá-lo do lado do servidor. Eu também gostaria de ter autenticação para que só eu possa usá-lo

    
por David 27.11.2011 / 00:31

6 respostas

12

Minha maneira favorita de fazer isso é usar o tunelamento ssh / SOCKS e SOCKS.

Se você tem sshd em execução no seu servidor de cores, é tudo que precisa.

Use

ssh -D 9000 yourhost.foo.com

E, em seguida, ajuste seu navegador para usar um proxy SOCKS na porta 127.0.0.1 9000.

Com o Firefox, gosto de usar o Foxyproxy para alterar rapidamente a configuração do proxy.

Aqui está uma página OK com mais detalhes. Detalhes do proxy SSH

    
por 27.11.2011 / 00:38
2

Talvez, mas talvez seja uma boa escolha neste tipo de situação usar algum tipo de solução geral. Então eu recomendo o squid o máximo que posso, quando alguém precisa de um serviço de proxy. Os motivos são múltiplos: a documentação está em toda parte, é uma solução geral para solicitações básicas e muito mais específicas e, o mais importante, minha experiência mostrou que clientes com solicitações simples se tornaram clientes com solicitações muito sofisticadas em relação ao serviço de proxy.

    
por 28.11.2011 / 15:33
2

Um pouco atrasado para a discussão ...

Eu acho o tinyproxy mais fácil de configurar e mais leve que o squid, especialmente para um servidor que é apenas para seu próprio uso.

A chave é se o servidor do datacenter está executando o sshd.

Se for, as respostas aqui que usam o ssh para fazer o encaminhamento de porta resolvem o problema de autorização automaticamente. Defina tinyproxy para ligar a 127.0.0.1 e apenas usuários que tenham acesso ssh podem se conectar a ele.

Se não estiver, você pode configurar o tinyproxy para aceitar apenas conexões de determinados hosts ou endereços IP. Se você tiver um endereço IP estático em casa, o problema foi resolvido.

Se você tiver um endereço dinâmico, talvez esteja disposto a aceitar conexões de uma parte secundária da sua conexão doméstica. Por exemplo. seu ISP configura sua conexão doméstica para se parecer com 192-192-192-192-area1-san-fran-cal-usa, você pode configurar o tinyproxy para aceitar conexões somente a partir de area1-san-fran-cal-usa (ignorando assim o IP parte da conexão). O risco é que outros assinantes de area1 descubram seu proxy e comecem a usá-lo.

Isso é o que eu uso para meu proxy VPS e funciona bem, especialmente porque estou em uma área de captação relativamente pequena do meu provedor. Nunca tive mais ninguém usando o proxy, mas sei que é um risco (estou disposto a aceitar - sempre posso mudar tinyproxy se descobrir alguém usando-o).

    
por 23.03.2012 / 03:38
1

A maneira mais fácil de simplesmente enviar todo o seu tráfego HTTP / HTTPS através do seu servidor Linux no trabalho é usar um túnel ssh dinâmico. Isso não requer nenhuma configuração em seu servidor no datacenter - supondo que ele já tenha um servidor ssh que não tenha o tunelamento SSH desabilitado.

O tunelamento SSH dinâmico é um recurso presente em muitos clientes SSH - openssh e PuTTY, entre outros, onde os clientes SSH configuram um "proxy SOCKS falso" na máquina em que o cliente está sendo executado, que traduz essas solicitações em SSH tunelamento, saindo para a Internet maior do seu servidor.

Se você estiver usando openssh como seu cliente, use ssh -D 3128 yourserver.example.com e, em seguida, configure seu navegador da Web para usar localhost: 3128 como seu proxy SOCKS.

PuTTY fará isso também, dê uma olhada em Conexão - > SSH - > Túneis e adicione uma porta dinâmica encaminhada (insira a porta Source, mas deixe o Destination em branco) e configure seu navegador para apontar para localhost: 3128 como um proxy SOCKS, assim como com o OpenSSH.

    
por 27.11.2011 / 00:40
1

A maneira mais simples de fazer isso é por meio de um túnel SSH:

ssh -D 8080 yourserver.com

Agora você pode apontar seu navegador para o proxy (SOCKS) localhost:8080 .
O SSH só ligará 8080 a 127.0.0.1 (e :: 1), então ninguém mais poderá usá-lo.

Se você está no Windows, você pode usar o Putty para estabelecer este túnel também.

    
por 27.11.2011 / 00:40
0

Ou, se você quiser configurar o proxy HTTP (s) simples no seu servidor, tente o link É muito simples de configurar, fácil de usar e tem um bom conjunto de recursos ...

    
por 27.11.2011 / 00:59