Base de Conhecimento Instruções simples para trabalhar com o serviço Profitserver
a Principal Base de Conhecimento Configuração 3proxy no CentOS/ArchLinux

Configuração 3proxy no CentOS/ArchLinux


Neste artigo, mostraremos a configuração do 3proxy em um servidor dedicado alimentado pelo sistema operacional ArchLinux/CentOS. O 3proxy é uma das ferramentas mais relevantes e funcionais. Ele suporta vários tipos de protocolos: HTTP, HTTPS, FTP, SOCKS e outros. Ele ajudará você a configurar seu próprio servidor proxy em questão de minutos.

Este artigo contém um guia passo a passo sobre a instalação do utilitário e sua configuração posterior. São abordados tópicos como instalação a partir de uma fonte oficial, configuração de arquivos, abertura de portas não padrão, além da descrição de erros comuns e recomendações práticas para solucioná-los. Antes de iniciar o programa, você deve contratar um VPS ou servidor dedicado com o sistema operacional CentOS ou Arch Linux. Todas as ações deste exemplo serão realizadas em um servidor dedicado com o sistema operacional CentOS 7 e um endereço IP público estático dedicado.

Instalação

Etapa 1

O 3proxy é instalado diretamente a partir dos fontes. O gcc será usado como compilador. Conectamos ao servidor como root (superusuário) e instalamos o compilador.

yum install gcc

Etapa 2

Agora é necessário baixar os arquivos-fonte do 3proxy. Você pode fazer isso acessando o site oficial e copiando o link para a versão atual:

Instalando utilitário

Caso precise de uma versão arquivada, você também pode baixar o link diretamente do GitHub :

Instalando 3proxy do Github

No momento em que este artigo foi escrito, a versão atual é 0.9.3. Baixe-a e descompacte-a imediatamente:

wget https://github.com/z3APA3A/3proxy/archive/0.9.3.tar.gz
tar -xvzf 0.9.3.tar.gz

Etapa 3

Vá para o diretório com o projeto descompactado e compile:

cd 3proxy-0.9.3/
make -f Makefile.Linux

Etapa 4

Criamos diretórios e copiamos o arquivo 3proxy para /usr/bin:

mkdir -p /var/log/3proxy
mkdir /etc/3proxy
cp bin/3proxy /usr/bin/

Etapa 5

Criamos um usuário para trabalhar com o catálogo. Nesse caso, o nome de usuário é 3proxyuser:

useradd -s /usr/sbin/nologin -U -M -r 3proxyuser

Concedemos os direitos de trabalhar com diretórios ao usuário criado:

chown -R 3proxyuser:3proxyuser /etc/3proxy
chown -R 3proxyuser:3proxyuser /var/log/3proxy
chown -R 3proxyuser:3proxyuser /usr/bin/3proxy

Agora vamos criar um arquivo de configuração usando o comando:

touch /etc/3proxy/3proxy.cfg

Se necessário, você pode definir permissões no arquivo de configuração para o usuário root. Esta etapa não é obrigatória, mas adicionará proteção:

chmod 600 /etc/3proxy/3proxy.cfg

Configuração 3proxy

Etapa 6

É necessário preencher corretamente o arquivo de configuração que foi criado anteriormente. Primeiro, descubra o uid e o gid do usuário pelo comando:

id 3proxyuser

No nosso caso, estes são os seguintes valores:

uid e gid

Para preencher o arquivo de configuração, você pode usar configurações prontas ou consultar a documentação no site oficial. Um arquivo com um exemplo já vem pré-instalado por padrão; você pode encontrá-lo no caminho: /cfg/3proxy.cfg.sample

Como exemplo, consideraremos dois tipos de configuração: com e sem registro de logs . Cada linha será acompanhada de comentários (marcados com o símbolo “#”).

Este é um exemplo de uma configuração pronta sem registro de logs :

# We specify the user's data that we found out in the previous command
setgid 995
setuid 997

# Type the NS-servers. It is possible to clarify your own servers at /etc/resolv.conf
nserver 1.1.1.1
nserver 8.8.8.8

# Cache size
nscache 65536

# Timeouts
timeouts 1 5 30 60 180 1800 15 60

# Authorization of users by login/password (if required). You may not to use it or specify the path to the file in which authorization data is stored, for example, users $/etc/3proxy/.authfile

# If you insert a password in md5 format, replace “CL” with “CR”, as indicated in the example. You can use 2 methods at the same time.
auth cache strong
users "userproxy:CL:passwordproxy"
users "userproxy2:CR:b89097a7ad0b94f13b3c313ae76699d4 "

# Launch mode. Daemon only.
Daemon

# We write the port through which the http connection will take place. The example shows the standard one. To establish a socks connection, use the command specified in the second line, the port is also standard.
proxy -p3128			
socks -p1080

Consideramos a opção de um arquivo de configuração sem registro de logs. Agora, criaremos um arquivo de configuração com registro de logs e autorização de usuários ; ele será usado posteriormente durante a configuração do servidor.

Certifique-se de fornecer as informações de autorização, pois o servidor pode ser detectado mesmo em portas não padrão.

# Configuring the server to launch from the userproxy user and the passwordproxy password.
users userproxy:CL:passwordproxy

# Specify the user's uid and gid
setgid 995
setuid 997

# Nameservers (NS-servers)
nserver 1.1.1.1
nserver 8.8.8.8

# Timeouts
timeouts 1 5 30 60 180 1800 15 60

# Cache size (standard)
nscache 65536

# Indicate the launch mode
daemon

# We install http proxy on a non-standard 50001 port. If there are several IP addresses on the server, be sure to specify a specific address for connecting the network. For example, "-e91.150.32.146". The argument "i" is a local address.
proxy –p50001	

# In a same way as socks proxy, we conduct the installation on a 50002 port.
socks –p50002			

# Path to the directory with logs, logs format and proxy rotation
Log /var/log/3proxy/3proxy.log D	
logformat "- +_L%t.%. %N.%p %E %U %C:%c %R:%r %O %I %h %T"
rotate 30

Isso conclui a configuração do arquivo de configuração principal. Passamos para o estágio final e lançamos.

Etapa 7

Crie um arquivo de inicialização para o systemd:

touch /etc/systemd/system/3proxy.service

Emitir os direitos necessários:

chmod 664 /etc/systemd/system/3proxy.service

Copie e cole os seguintes valores no arquivo e salve:

[Unit]
Description=3proxy Proxy Server
After=network.target
[Service]
Type=simple
ExecStart=/usr/bin/3proxy /etc/3proxy/3proxy.cfg
ExecStop=/bin/kill `/usr/bin/pgrep 3proxyuser`
RemainAfterExit=yes
Restart=on-failure
[Install]
WantedBy=multi-user.target»

Observação: no valor “ExecStop”, você deve especificar o nome de usuário criado na etapa nº 5.

Depois disso, você precisa atualizar a configuração do Daemon com o comando:

systemctl daemon-reload

Etapa 8

A única coisa que precisamos é iniciar o 3proxy configurado, adicioná-lo à inicialização automática e também abrir portas no firewall.

Adicione-o para iniciar automaticamente, iniciar e verificar status:

systemctl enable 3proxy
systemctl start 3proxy
systemctl status 3proxy

Após verificar o status, vemos informações de que o 3proxy foi iniciado com sucesso:

O proxy está em execução

Só falta abrir as portas:

firewall-cmd --zone=public --add-port=50001/tcp
firewall-cmd --zone=public --add-port=50002/tcp
firewall-cmd –reload

Se necessário, reinicie o servidor. É possível verificar se as portas estão abertas com o comando:

firewall-cmd --list-all

O que deveria ser:

Abra as portas do firewall

Como podemos ver, ambas as portas foram abertas com sucesso e estão sendo escutadas. A conexão http está na primeira porta, o socks está na segunda porta.

Verifique a conexão através de qualquer serviço conveniente:

Configuração 3proxy bem-sucedida

Tudo está funcionando. Da nossa parte, não recomendamos o uso de uma conexão não segura sem autenticação por login/senha, bem como com um conjunto padrão de portas . Ao configurar o arquivo de configuração, certifique-se de especificar um login e criar uma senha complexa, além de alterar as portas para portas não padrão . Em casos excepcionais, é possível usar a autenticação por endereço IP.

Problemas comuns

Algo deu errado e o proxy não está funcionando? Talvez a configuração do 3proxy tenha sido feita incorretamente. Vamos considerar os problemas mais comuns e suas soluções durante a instalação e configuração do utilitário.

Sem conexão

O problema mais comum para muitos usuários é uma conexão inacessível quando os arquivos de configuração parecem estar configurados corretamente. Se você tem certeza de que todas as configurações foram configuradas corretamente, o provedor de hospedagem não limita a porta selecionada e todos os dados indicam um serviço funcionando, o problema pode estar no Firewall ou, mais precisamente, sua configuração incorreta. Por exemplo, pode haver mais de dois programas instalados no sistema que entrarão em conflito entre si. Para resolver o problema, basta usar um Firewall específico. Aconselhamos que você selecione apenas iptables ou firewall-cmd.

O serviço não inicia

O serviço não inicia após a configuração de todos os arquivos necessários. Isso ocorre quando uma etapa de configuração é omitida, as permissões apropriadas não são concedidas ou um pequeno erro é cometido nos arquivos de configuração. Recomendamos que você revise cuidadosamente as instruções passo a passo, pois talvez tenha perdido alguma etapa. Se nada funcionar, uma boa ideia é reinstalar o sistema operacional e seguir todos os passos desde o início. Recomendamos usar o arquivo de exemplo localizado em /cfg/3proxy.cfg.sample como configuração de teste e o firewall-cmd pré-instalado como firewall.

Logging

A questão final, mas não menos importante, está relacionada ao armazenamento de arquivos. O 3proxy ocupa vários mb durante a instalação, mas o tamanho pode ser aumentado significativamente apenas por meio de log com o passar do tempo. O fato é que muitos usuários habilitam a gravação de log em um arquivo separado, mas não configuram a rotação e não excluem logs irrelevantes. Três opções podem ser usadas para a solução deste problema:

  1. Habilitar registro;
  2. Exclua periodicamente registros irrelevantes;
  3. Habilite a rotação, como foi feito na configuração acima. Por exemplo, "rotate 30" no arquivo de configuração significa que o 3proxy armazenará apenas os últimos 30 arquivos.

Conclusão

Instalar e configurar o 3proxy nos sistemas operacionais CentOS e ArchLinux é uma tarefa bastante simples, mas ao mesmo tempo eficaz. O artigo cobriu as etapas para instalar os pacotes necessários, configurar arquivos de configuração e iniciar o serviço. O conhecimento adquirido permitirá que você instale e configure seu servidor proxy sozinho, sem nenhuma dificuldade.

❮ Artigo anterior Como redefinir a senha do Windows
Próximo artigo ❯ Como aumentar a partição do disco no sistema operacional Windows

Pergunte-nos sobre VPS

Estamos sempre prontos para responder suas perguntas a qualquer hora do dia ou da noite.