Este guia o guiará pela instalação, operação e manutenção do proxy Snowflake em sistemas baseados em Linux.
Executar um proxy Snowflake é uma maneira fácil de contribuir com os esforços anticensura do Projeto Tor.
1. Instale o Go
Primeiro, você precisará instalar e configurar o compilador Go para construir o proxy autônomo a partir do código-fonte.
Faça login usando uma conta de usuário com direitos sudo ou diretamente com root (neste último caso, omita a parte sudo nos comandos a seguir).
Se você estiver executando o Ubuntu ou Debian, você pode instalar o Go executando sudo apt install golang.
Se você estiver usando Fedora, Red Hat ou Amazon Linux com sudo yum install golang ou sudo dnf install golang.
Você precisará do Go 1.21 ou mais recente para executar o proxy Snowflake.
Verifique sua versão do Go usando o comando go version.
Caso contrário, baixe Go binary do site oficial e siga suas instruções de instalação.
2. Instale o git e clone o repositório Snowflake
Segundo, você precisa do cliente git para baixar o código-fonte do Snowflake.
Se você estiver executando o Ubuntu ou Debian, você pode instalar o git executando sudo apt install git.
Se você estiver usando Fedora, Red Hat ou Amazon Linux com sudo yum install git ou sudo dnf install git.
Caso contrário, consulte a documentação do seu sistema operacional.
Execute os seguintes passos com a conta de usuário sob a qual o proxy deve ser executado.
Não use root.
É recomendável criar uma conta snowflake separada com direitos restritos no sistema.
Abra seu terminal e clone o código-fonte:
git clone https://gitlab.torproject.org/tpo/anti-censorship/pluggable-transports/snowflake.git
3. Construir proxy Snowflake
Depois de clonar o repositório, você pode construir o binário proxy do Snowflake executando o comando:
cd snowflake/proxy
go build
4. Execute o proxy Snowflake
Depois que seu proxy terminar de compilar, você pode executá-lo com o comando:
nohup ./proxy &
Nota: O comando nohup permite que o programa seja executado em segundo plano mesmo após o terminal ser fechado, e & coloca o comando em segundo plano imediatamente.
Se você quiser salvar a saída do proxy em um arquivo de log, por exemplo, para ver seu uso do proxy, você pode usar:
nohup ./proxy >snowflake.log 2>&1 &
5. Certifique-se de que o proxy seja iniciado após a reinicialização do sistema
Edite seu crontab executando o comando:
crontab -e
Digite a seguinte linha (exemplo: adapte os caminhos à sua situação)
@reboot nohup /home/snowflake/snowflake/proxy/proxy > /home/snowflake/snowflake/proxy/snowflake.log 2>&1 &
Verifique se isso está funcionando reiniciando o sistema e verificando o log.
Observação: em algumas instalações do Linux isso pode não funcionar.
6. Mantenha seu proxy Snowflake atualizado
Para manter seu proxy snowflake atualizado, execute os seguintes comandos a cada poucas semanas (faça login com a conta de usuário que você usou durante a instalação do proxy):
kill -9 $(pidof proxy)
cd snowflake/
git pull
cd proxy
go build
nohup ./proxy >snowflake.log 2>&1 &