FERRAMENTAS LINUX: Aprenda a configurar um servidor Proxy Socks5 no Ubuntu usando o Dante!

domingo, 9 de abril de 2017

Aprenda a configurar um servidor Proxy Socks5 no Ubuntu usando o Dante!


Configure um servidor proxy socks5 no Ubuntu  usando o Dante.



Vamos aprender hoje como criar um servidor proxy Socks5 no Ubuntu usando o Dante.

Para os que não conhecem o Dante ainda, ele é um servidor de socks5 que podemos usar para  fazer a configuração de um proxy socks5 em uma máquina  que use o Ubuntu ou Debian. Também vamos aprender a configurar o Dante e usar a autenticação. A autenticação quando está ativada,  o servidor proxy Dante exige que todos os clientes forneçam  os detalhes de login para usar o servidor proxy.


Instalação do Dante no Ubumtu

Normalmente, os repositórios padrão do Ubuntu já possuem o pacote dante-server, porém, ele está desatualizado.  A versão atual do Dante é a 1.1.19 sendo que ela é bem antiga e possui muitos bugs  e o recurso de autenticação não funciona corretamente

Se você não precisa da autenticação, instale o dante com o comando abaixo:

sudo apt-get install dante-server

Se quisermos saber qual foi a versão instalada no computador use o comando abaixo (lembrando que devemos usar o root).

danted-v

Na atual versão do Ubuntu vai acontecer um erroque é mostrado abaixo, mas fique calmo, pois como foi dito acima a versão gera esse erro mesmo, por isso que caso não precise da autenticação pode usar sem problemas, o bug é apenas o erro abaixo:

Erro

Mar 22 11:22:05 (1489241105) danted[5020]: pass(1): tcp/accept ]: username%a%uel@122.163.30.234.18600 -> 104.131.115.128.1080: system username/password failed

Caso você precise usar a autenticação não sera possível usar o pacote mostrado acima então vamos usar uma PPA qure já possui uma versão mais recente e o bug corrigido, já que os usuários informaram o erro ao mantenedor do pacote junto ao repositório do Ubuntu, mas até agora o pacote do Dante não foi atualizado.

Então usaremos o pacote disponibilizado no PPA, para fazer isso baixe o pacote e instale ele usando o comando abaixo.

wget http://ppa.launchpad.net/dajhorn/dante/ubuntu/pool/main/d/dante/dante-server_1.4.1-1_amd64.deb

sudo apt-get install gdebi-core

sudo gdebi dante-server_1.4.1-1_amd64.deb

Configurando o servidor Dante

Agora, nós iremos configurar o servidor Dante  antes de iniciarmos ele.  O arquivo de configuração pode ser encontrado logo abaixo, copie e cole, mas se souber o que esta fazendo, faça as alterações que precisar:

Primeiramente vamos editar o arquivo com um editor de sua preferencia nesse caso será usado o nano.

nano /etc/danted.conf

[# /etc/danted.conf
logoutput: syslog
user.privileged: root
user.unprivileged: nobody
# The listening network interface or address.
internal: 0.0.0.0 port=1080
# The proxying network interface or address.
external: eth0
# socks-rules determine what is proxied through the external interface.
# The default of “none” permits anonymous access.
socksmethod: username
# client-rules determine who can connect to the internal interface.
# The default of “none” permits anonymous access.
clientmethod: none
client pass {
        from: 0.0.0.0/0 to: 0.0.0.0/0
        log: connect disconnect error
}
socks pass {
        from: 0.0.0.0/0 to: 0.0.0.0/0
        log: connect disconnect error
}]

Agora vamos iniciar o servidor porxy dante usando o comando abaixo.

service danted start

Agora use o comando abaixo para verificar o número que está sendo usada.

netstat -nlpt | grep dant

Criando um usuário

O Dante pode usar as contas de usuário do sistema unix para autenticar os clientes conectados. Para isso você deve criar um usuário separado. Qualquer cliente que se conectar a este servidor proxy estará enviando a senha em texto sem formatação na rede, então cuidado com isso.

Para fazer isso use o comando abaixo.

adduser usuário

Onde usuário é o nome o usuário a ser criado.

Teste 

Após termos configurado tudo, vamos testar se o servidor está realmente funcionando para isso vamos usar o comando  curl para fazer isso.  Especifique o nome de usuário, a senha, o ip do servidor e o número da porta e tente buscar alguma URL

curl -v -x socks5://emanuel:emanuel@<PROXY_IP>:1080 http://www.google.com/

Caso tudo tenha corrido bem iremos ver o html de google.com no terminal . Agora nós podemos usar o proxy dentro dos navegadores.  

Até a próxima!!!

Nenhum comentário:

Postar um comentário