logo Home / Manuais de Utilizaçãov1.0 / Instalação GSClient no Linux

Instalação GSClient no Linux

Documento com a lista de códigos de erros

#Requisitos Básicos

#Liberações no Firewall

Segue abaixo o nosso range de IPs e portas para liberação no firewall da máquina ou da rede, ou validação e liberação da rota por parte de todos os provedores de internet do cliente.

IP:

  • 18.231.194.64/26

Portas:

  • 443/UDP

  • 443/TCP

  • 55844/TCP

  • 55845/TCP

E DNS local 53/UDP (consultas em gsurfnet.com).

#Distribuições Homologadas

S.O

Arquitetura

Versão

Fingerprint

glibc

Ubuntu

x86

14.04.5 até 21.10

/var/lib/dbus/machine-id

2.11.1

Ubuntu

x64

14.04.5 até 21.10

/var/lib/dbus/machine-id

2.14

CentOS

x86

7

/etc/machine-id

2.11.1

CentOS

x64

7

/etc/machine-id

2.14

#Instalação

A instalação deve ser realizada com o usuário root. Para alternar para este usuário, você pode utilizar o comando abaixo:

sudo su

Existem duas maneiras de realizar a instalação: via script ou manualmente. Escolha e execute apenas uma delas.

#Instalação via script

Executar o comando abaixo e seguir a instalação conforme o script solicitar:

mkdir /gsurf && cd /gsurf
wget https://gsurf.com.br/lib/linux/script_gsclient_classic.sh
chmod +x /gsurf/script_gsclient_classic.sh
/gsurf/script_gsclient_classic.sh

Observação: Antes de iniciar a nova instalação, o script removerá automaticamente versões anteriores, mas apenas se estiverem no padrão GSurf, instalações customizadas (pastas, arquivos ou serviços renomeados) exigem remoção manual.

#Instalação manual

Clique aqui para abrir o passo a passo de instalação manual

#Remoção de GSClient antigo

Somente realizar esse passo caso tenha algum GSClient instalado na máquina.

1 - Anotar a identificação do terminal da Central de Parceiros (CDP) que está instalado para reinstalar a OTP dele e utilizar na nova instalação:

cat /usr/gsurf/gsurfcli.txt

2 - Realizar a remoção completa dos arquivos antigos padrão GSurf:

killall serverSSL 2>/dev/null
killall gsclient 2>/dev/null
rm -r /usr/gsurf 2>/dev/null
rm -r /gsurf/ 2>/dev/null
rm -r /usr/sbin/gsurf/ 2>/dev/null
rm /usr/sbin/gsclient.AppImage 2>/dev/null    
find /lib* /usr/lib* -name "libGSurfRSA.so" -delete 2>/dev/null
rm /usr/lib/systemd/system/libssl.service 2>/dev/null
rm /usr/lib/systemd/system/gsclient.service 2>/dev/null
rm /etc/init.d/serverSSL 2>/dev/null
rm /etc/init.d/gsclient 2>/dev/null
sed -i '/serverSSL/d' /etc/rc.local 2>/dev/null
sed -i '/gsclient.AppImage/d' /etc/rc.local 2>/dev/null
sed -i '/serverSSL/d' /etc/rc.d/rc.local 2>/dev/null
sed -i '/gsclient.AppImage/d' /etc/rc.d/rc.local 2>/dev/null

Esses comandos realizam a desinstalação e limpeza completa do GSClient (Classic e AppImage), interrompendo os serviços em execução e removendo seus arquivos, pastas e registros de inicialização automática (systemd, init.d e rc.local).

Observação: Os comandos removerão automaticamente apenas instalações no padrão GSurf. Instalações customizadas (outras pastas, arquivos ou serviços renomeados) exigem remoção manual.

#Início da instalação

1 - Criar o diretório gsurf para os arquivos e alterar para ele:

mkdir /gsurf && cd /gsurf

2 - Instalar uma das 4 versões do GSClient dentro da pasta gsurf especificando o link:

wget 'https://gsurf.com.br/lib/linux/gsclient_ubuntu_x86.zip' -P /gsurf
wget 'https://gsurf.com.br/lib/linux/gsclient_ubuntu_x64.zip' -P /gsurf
wget 'https://gsurf.com.br/lib/linux/gsclient_centos_x86.zip' -P /gsurf
wget 'https://gsurf.com.br/lib/linux/gsclient_centos_x64.zip' -P /gsurf

3 - Descompactar o arquivo, copiar a libGSurfRSA.so para as pastas lib do Linux e conceder permissão de execução:

(unzip -o /gsurf/gsclient_*.zip -d /gsurf/ || bsdtar -xf /gsurf/gsclient_*.zip -C /gsurf/ || busybox unzip -o /gsurf/gsclient_*.zip -d /gsurf/) 2>/dev/null
cp /gsurf/libGSurfRSA.so /lib && cp /gsurf/libGSurfRSA.so /usr/lib
chmod +x /gsurf/*

#Instalação do Certificado

1 - Executar o instalador do certificado:

/gsurf/instalador

Com o instalador em execução, informe na seguinte ordem: usuário, senha da Central de Parceiros e o OTP (código de 10 números encontrados dentro do terminal na Central).

No final deverá ocorrer a mensagem Certificado instalado, pronto para execução do GS Client.

#Configurar execução como serviço

Para que a VPN seja iniciada automaticamente com o sistema operacional, utilize somente um dos métodos a seguir, escolhendo conforme o padrão suportado pela sua distribuição (Systemd, Init.d ou Rc.local):

#Opção 1: Systemd

1 - Verificar se o sistema utiliza systemd:

  • Utilizando o comando abaixo o resultado deve ser systemd:

ps -p 1 -o comm=

2 - Criar a pasta system caso ela não exista e criar o arquivo libssl.service que será responsável por iniciar a VPN junto da máquina:

mkdir /usr/lib/systemd/system
vi /usr/lib/systemd/system/libssl.service

Caso o comando vi não funcione, pode utilizar o nano, vim ou outro editor de texto da sua escolha.

3 - Será aberto um arquivo vazio para edição, no caso do vi apertar i para editar.

  • Preencher com o conteúdo abaixo caso seja SiTef:

[Unit]
Description=LibSSL_GSurf
After=network-online.target
Wants=network-online.target

[Service]
ExecStart=/gsurf/serverSSL -s sitef

[Install]
WantedBy=multi-user.target
  • Preencher com o conteúdo abaixo caso seja Scope:

[Unit]
Description=LibSSL_GSurf
After=network-online.target
Wants=network-online.target

[Service]
ExecStart=/gsurf/serverSSL -s scopelegado -p 2046

[Install]
WantedBy=multi-user.target

Apertar esc para sair do modo edição, apertar shift e : juntos, escrever wq e apertar enter para salvar.

4 - Conceder a permissão para o arquivo:

chmod +x /usr/lib/systemd/system/libssl.service

5 - Executar os 4 comandos na sequência (o primeiro atualiza a lista de serviço, o segundo configura o serviço como automático, o terceiro inicia o serviço e o quarto verifica o status do serviço):

systemctl daemon-reload
systemctl enable libssl.service
systemctl start libssl.service
systemctl status libssl.service

(Obs. Pressione q ou ctrl e c para sair).

#Opção 2: Init.d

1 - Caso não utilize systemd, verificar se o sistema utiliza init.d:

  • O comando abaixo deve executar sem erros:

ls /etc/init.d/

2 - Crie o arquivo serverSSL dentro do init.d que será responsável por iniciar a VPN junto da máquina:

vi /etc/init.d/serverSSL

Caso o comando vi não funcione, pode utilizar o nano, vim ou outro editor de texto da sua escolha.

3 - Será aberto um arquivo vazio para edição, no caso do vi apertar i para editar.

  • Preencher com o conteúdo abaixo caso seja SiTef:

#!/bin/sh
### BEGIN INIT INFO 
# Provides: testone 
# Required-Start: $local_fs 
# Required-Stop: $local_fs 
# Default-Start: 2 3 4 5 
# Default-Stop: 0 1 6 
# X-Interactive: false 
# Short-Description: Example init script 
# Description: Start/stop an example script 
### END INIT INFO

DESC="SSL script"
NAME=serverSSL

do_start() {
echo "starting!";
/gsurf/serverSSL -s sitef &
}

do_stop() {
echo "stopping!"
killall serverSSL
}

case "$1" in
start)
do_start
;; stop)
do_stop
;;

esac
exit 0
  • Preencher com o conteúdo abaixo caso seja Scope:

#!/bin/sh
### BEGIN INIT INFO 
# Provides: testone 
# Required-Start: $local_fs 
# Required-Stop: $local_fs 
# Default-Start: 2 3 4 5 
# Default-Stop: 0 1 6 
# X-Interactive: false 
# Short-Description: Example init script 
# Description: Start/stop an example script 
### END INIT INFO

DESC="SSL script"
NAME=serverSSL

do_start() {
echo "starting!";
/gsurf/serverSSL -s scopelegado -p 2046 &
}

do_stop() {
echo "stopping!"
killall serverSSL
}

case "$1" in
start)
do_start
;; stop)
do_stop
;;

esac
exit 0

Apertar esc para sair do modo edição, apertar shift e : juntos, escrever wq e apertar enter para salvar.

4 - Executar os 2 comandos na sequência (o primeiro adiciona permissão e o segundo configura o serviço como automático):

chmod +x /etc/init.d/serverSSL
update-rc.d serverSSL defaults

5 - Iniciar o serviço:

/etc/init.d/serverSSL start

#Opção 3: Rc.local

1 - Caso não utilize systemd ou init.d, verificar se o sistema utiliza rc.local:

  • Verificar se a localização é: /etc/rc.local

ls /etc/rc.local
  • Verificar se a localização é: /etc/rc.d/rc.local

ls /etc/rc.d/rc.local

2 - Acessar o rc.local dependendo da localização verificada no passo anterior:

vi /etc/rc.local
vi /etc/rc.d/rc.local

Caso o comando vi não funcione, pode utilizar o nano, vim ou outro editor de texto da sua escolha.

3 - Será aberto um arquivo para edição, no caso do vi apertar i para editar e na última linha do arquivo:

  • Preencher com o conteúdo abaixo caso seja SiTef:

/gsurf/serverSSL -s sitef &
  • Preencher com o conteúdo abaixo caso seja Scope:

/gsurf/serverSSL -s scopelegado -p 2046 &

Apertar esc para sair do modo edição, apertar shift e : juntos, escrever wq e apertar enter para salvar.

4 - Conceder a permissão para o arquivo:

chmod +x /etc/rc.local || chmod +x /etc/rc.d/rc.local

5 - Iniciar o serviço:

/etc/rc.local || /etc/rc.d/rc.local

Ambos os métodos de instalação contemplam o procedimento completo, uma vez concluído um deles com sucesso, a VPN já estará pronta para comunicação.

Abaixo, disponibilizamos alguns tópicos adicionais com instruções sobre como reiniciar o serviço, testar a conexão e verificar logs, entre outros.

#Inicialização

O serviço já é iniciado automaticamente tanto pelo script quanto no procedimento manual de instalação. Contudo, caso necessitem que seja iniciado ou reiniciado o serviço em algum momento, é possível realizar com os comandos abaixo, dependendo de qual inicializador está sendo utilizado:

1 - Systemd

systemctl daemon-reload
systemctl enable libssl.service
systemctl start libssl.service
systemctl status libssl.service

2 - Init.d

/etc/init.d/serverSSL start

3 - Rc.local

/etc/rc.local || /etc/rc.d/rc.local

4 - Manualmente

Caso a execução como serviço não tenha sido configurada, é possível iniciar manualmente:

  • Caso seja SiTef:

/gsurf/serverSSL -s sitef &
  • Caso seja Scope:

/gsurf/serverSSL -s scopelegado -p 2046 &

Apertar enter até ele voltar para o terminal normal (mostrando o usuário e etc).

#Teste de conexão

1 - Verificar se o serviço está rodando:

pgrep -af serverSSL

2 - Execute um teste de comunicação utilizando telnet ou nc:

  • Caso seja SiTef:

telnet 127.0.0.1 4096
  • Caso seja Scope:

telnet 127.0.0.1 2046

Aperte Ctrl e c ou Ctrl e ç, q e enter para fechar a conexão.

#Logs

Existem diferentes arquivos onde podem ser armazenados os logs da VPN.

1 - Journal:

journalctl $(journalctl -F SYSLOG_IDENTIFIER | grep ^GSURF | sed 's/^/-t /') --no-pager

2 - Syslog:

cat /var/log/syslog | grep GSURF

3 - Messages:

cat /var/log/messages | grep GSURF

4 - Loggs.txt (Apenas versão x86/x32)

cat /tmp/loggs.txt

#Arquivos

Segue abaixo todos os arquivos do GSClient em suas localização padrões, juntamente de informações sobre eles:

  • /usr/gsurf/certificado.pfx

    • Certificado.

  • /usr/gsurf/tk.dat

    • Autenticador (criado após primeira conexão).

  • /usr/gsurf/gsurfcli.txt

    • Identificação do terminal da CDP.

  • /usr/gsurf/region.txt

    • Região de conexão.

      • Deve conter escrito somente 3 ou sp2.

  • /usr/gsurf/serverSSL

    • Arquivo de execução da VPN.

  • /usr/lib/systemd/system/libssl.service

    • Inicializador do serviço pelo Systemd.

  • /etc/init.d/serverSSL

    • Inicializador do serviço pelo Init.d.

  • /etc/rc.local

    • Inicializador do serviço pelo rc.local.

  • /etc/rc.d/rc.local

    • Inicializador do serviço pelo rc.d/rc.local.

#Histórico de Revisões

Descrição

Autor

Versão e Data

Revisão de documento

Anderson Hoffmann

12/03/2018 – v1.0

Revisão de documento

Rafael Frasson

27/06/2018 – v2.0

Revisão de documento

Anderson Hoffmann

22/07/2019 – v3.0

Revisão de documento

Raphael Brito
Gabriel Lopes

22/11/2021 – v4.0

Revisão de documento

Vitor Hugo

19/03/2025 – v5.0

Revisão de documento

Vitor Hugo

10/09/2025 – v6.0