Anda di halaman 1dari 21

VPS Manager 2.

0 by Phreaker56
VPS Manager 2.0 um conjunto de scripts cuja funo simplificar o gerenciamento de
usurios SSH em um servidor, seja um Servidor Privado Virtual (VPS), Hospedagem Cloud ou
um Servidor Dedicado.
Alm dos comandos para gerenciar usurios o VPS Manager 2.0 tambm contm comandos
para gerenciar o Proxy Squid, permitindo adicionar ou remover domnios usados em payloads com
facilidade.
O instalador do VPS Manager 2.0 tambm instala e configura automaticamente o Proxy Squid
no servidor rodando nas porta 80, 3128. 8080 e 8799. Assim como configura o OpenSSH para
funcionar nas portas 22 e 443.
Caso o servidor j esteja configurado com o Proxy Squid, OpenSSH rodando na porta 443 e
j tenha usurios, o script ir substituir apenas a configurao do Proxy Squid e criar uma base de
dados dos usurios SSH no arquivo /root/usuarios.db que ser usado pelos comandos usados
para gerenciar usurios.
O instalador tambm remover o Servidor HTTP Apache para liberar a porta 80 para o
Proxy Squid e economizar memria RAM.
O VPS Manager 2.0 foi testado com sucesso nos seguintes sistemas: Debian 7, Debian 8,
Debian 8 minimal, Ubuntu 12.04, Ubuntu 14.04, Ubuntu 15.10, Ubuntu 15.10 minimal e Ubuntu
16.04.

Termos de Uso
Ao utilizar o 'VPS Manager 2.0' voc concorda com os seguintes termos de uso.
1. Voc pode:
a. Instalar e usar o 'VPS Manager 2.0' no(s) seu(s) servidor(es).
b. Criar, gerenciar e remover um nmero ilimitado de usurios atravs desse conjunto de
scripts.
2. Voc no pode:
a. Editar, modificar, compartilhar ou redistribuir (gratuitamente ou comercialmente)
esse conjunto de scripts sem autorizao do desenvolvedor.
b. Modificar ou editar o conjunto de scripts para fazer voc parecer o desenvolvedor dos
scripts.
3. Voc aceita que:
a. O valor pago por esse conjunto de scripts no inclui garantias ou suporte adicional, porm
o usurio poder, de forma promocional e no obrigatria, por tempo limitado, receber suporte
e ajuda para soluo de problemas desde que respeite os termos de uso.
b. O usurio desse conjunto de scripts o nico resposvel por qualquer tipo de implicao
tica ou legal causada pelo uso desse conjunto de scripts para qualquer tipo de finalidade.
4. Voc concorda que o desenvolvedor no se responsabilizar pelos:
a. Problemas causados pelo uso dos scripts distribudos sem autorizao.
b. Problemas causados por conflitos entre este conjunto de scripts e scripts de outros
desenvolvedores.
c. Problemas causados por edies ou modificaes do cdigo do script sem autorizao.
d. Problemas do sistema causados por programas de terceiro ou
modificaes/experimentaes do usurio.
e. Problemas causados por modificaes no sistema do servidor.
f. Problemas causados pelo usurio no seguir as instrues da documentao do
conjunto de scripts.
g. Problemas ocorridos durante o uso dos scripts para obter lucro comercial.
h. Problemas que possam ocorrer ao usar o conjunto de scripts em sistemas que no esto
na lista de sistemas testados.

Obs: Estes termos no se aplicam a verso gratuita do VPS Manager 2.0, tendo essa verso seus prprios
termos de uso apresentados durante a instalao.

Instalador
O Instalador do VPS Manager 2.0 um script que foi feito para configurar do zero um servidor
recm-criado ou ento reconfigurar um servidor j configurado.
Ele instalar os seguintes pacotes no sistema: squid3, bc, screen, nano, unzip, dos2unix e
wget que sero utilizados para o funcionamento correto dos comandos de gerenciamento e a
instalao em si.
O instalador ir verificar a verso do sistema e configurar o Proxy Squid e os comandos de
gerenciamento de forma automtica para funcionar corretamente mesmo com as diferenas nos
comandos e localizao das configuraes do Proxy Squid que variam conforme a verso do
sistema Linux.
Aps instalar o Proxy Squid, o instalador ir configurar ou substituir a configurao j
existente do arquivo squid.conf que fica localizada em /etc/squid/squid.conf ou
/etc/squid3/squid.conf (varia conforme a verso do Linux, no se preocupe, o Instalador detecta e
configura isso automaticamente).
O arquivo squid.conf ficar da seguinte forma:
acl url1 dstdomain -i 127.0.0.1
acl url2 dstdomain -i localhost
acl url3 dstdomain -i 191.141.214.14*
acl payload dstdomain -i "/etc/squid3/payload.txt"**
http_access allow url1
http_access allow url2
http_access allow url3
http_access allow payload
http_access deny all
http_port 80
http_port 3128
http_port 8080
http_port 8799
visible_hostname vpsmanager
forwarded_for off
via off
* Este ser o IP do prprio servidor, informado pelo usurio durante a instalao do VPS
Manager 2.0 usado para liberar conexes SSH para o prprio servidor.
** Esta linha poder variar conforme a localizao da pasta de configurao do Proxy Squid.
Podendo ser tambm /etc/squid/payload.txt

O arquivo payload.txt contm a lista de domnios que so aceitos pelo Proxy Squid. So
domnios usados nas payloads usadas no HTTP Injector e programas semelhantes. No
recomendvel que voc edite esse arquivo manualmente.
Aps a instalao, o arquivo payload.txt estar assim:
.claro.com.br
.claro.com.sv
.facebook.net
.netclaro.com.br
.speedtest.net
.tim.com.br
.vivo.com.br
.oi.com.br
O ponto no incio de cada domnio permite liberar automaticamente os subdomnios, no
sendo necessrio liberar subdomnios como recargawap.claro.com.br porque o domnio
.claro.com.br j est presente.
Para adicionar ou remover um domnio da lista use os comando addhost ou delhost.

Comandos de Gerenciamento
O VPS Manager 2.0 formado pelos seguintes comandos:
ajuda
Mostra a lista de comandos disponveis.
addhost
Comando para adicionar um domnio a lista de domnios permitidos no Proxy Squid.
alterarlimite
Comando para alterar o nmero mximo de conexes simultneas permitidas para um
usurio. Usado para definir o funcionamento do SSH Limiter.
alterarsenha
Comando que simplifica a troca de senha de usurio mesmo que ele esteja conectado.
criarusuario
Comando para criar um usurio com acesso apenas ao tnel SSH (sem acesso ao terminal)
com data de expirao e um nmero mximo de conexes simultneas permitidas.
delhost
Comando para remover um domnio da lista de domnios permitidos no Proxy Squid.
expcleaner
Comando que remove automaticamente todas os usurios que passaram da data de
expirao. Use com cuidado.
mudardata
Comando que altera a data de expirao de um usurio ou reativa um usurio expirado.
remover
Comando para remover um usurio SSH, mesmo que ele esteja conectado.
sshlimiter
Comando que deve continuar funcionando em segundo plano, desconecta os usurios que
ultrapassarem o limite de conexes simultneas definidos na criao do usurio.
sshmonitor
Comando que lista os usurios SSH e mostra o nmero de conexes de cada um. til para
ver quem est online sem precisar retornar a sesso screen do sshlimiter.

Os comandos: criarusuario, alterarlimite, sshlimiter e sshmonitor usam o mesmo arquivo


como base de dados contendo o nome de cada usurio e o nmero de conexes permitidas para
cada um. O arquivo o /root/usuarios.db e no deve ser removido ou editado manualmente .
Esse arquivo criado durante a instalao do VPS Manager 2.0 de duas formas:
Se no houver nenhum usurio no servidor, ele ficar vazio, caso tenha, ele ter uma lista
com cada usurio seguido do nmero 1 na frente. Esse nmero usado pelo sshlimiter como
nmero mximo de conexes simultneas permitidas.
Por exemplo:
joao 1
maria 1
pedro 1
sara 1
mario 1
No recomendado editar arquivo /root/usuarios.db manualmente para evitar
problemas no funcionamento dos comandos de gerenciamento. Para alterar o limite de
conexes simultneas de cada usurio, use o comando alterarlimite:

Caso voc instale o VPS Manager 2.0 em um servidor ainda sem usurios. Sempre que criar
um usurio com o comando criarusuario ele ser adicionado a lista. O usurio ser removido
automaticamente da lista quando removido atravs do comando remover.

Importante
Para o funcionamento correto dos scripts importante que voc apenas adicione, remova e
altere datas de expirao atravs dos comandos de gerenciamento do VPS Manager 2.0.
Os comandos de gerenciamento do VPS Manager 2.0 funcionam em conjunto utilizando um
mesmo arquivo como base de dados (/root/usuarios.db), ento ao criar um usurio com o comando
criarusuario ele ser adicionado a base de dados automaticamente, e ele ser removido da base
de dados quando for removido com o comando remover.
Se voc usar comandos nativos do Linux como useradd o usurio no ser adicionado a
base de dados, no sendo possvel gerenci-lo corretamente com os comandos de gerenciamento e
o sshlimiter no ter efeito sobre ele, a mesma coisa se voc remover um usurio com userdel em
vez de usar o comando de gerenciamento remover, o usurio continuar na base de dados e
poder causar problemas ao criar usurios com o mesmo nome.
Por isso para evitar problemas, ao gerenciar usurios use apenas os comandos de
gerenciamento do VPS Manager 2.0: criarusuario, remover, alterarlimite, alterarsenha,
mudardata, expcleaner, sshmonitor e sshlimiter.

No crie usurios com apenas sequncia nmerica. Isso poder causar conflito com
nmeros presentes no arquivo de usurios do sistema (/etc/passwd) e causar problemas ao
tentar remover ou criar usurios.
Ou seja, no crie usurios com apenas nmeros como: 103, 104, 105. Use letras e
nmeros e um tamanho razovel (por exemplo: anamaria25). Assim evitar futuros problemas
devido ao modo como o Linux funciona.

Dicas para o Terminal


Voc poder cancelar a executao de um comando ou script apertando as teclas CTRL+C.
Se voc usa o aplicativo JuiceSSH para acessar o terminal do seu servidor, v nas
configuraes do aplicativo e escolha o tema dark (escuro) para no ter problemas com as cores
utilizadas nos comandos de gerenciamento. O tema de cores padro do JuiceSSH acaba alterando
as cores utilizadas nos comandos tornando difcil a visualizao das palavras.
Caso voc tenha problemas com acentuao nas palavras nos comandos de gerenciamento,
verifique se o programa que voc est usando para acessar o terminal est configurado para utilizar
codificao UTF-8.
Voc pode usar a tecla TAB para completar os comandos, por exemplo, se digitar cri e
apertar a tecla TAB o comando ser completado para criarusuario.
Voc pode limpar a tela do terminal para facilitar o uso usando o comando clear

Como criar um usurio


Use o comando: criarusuario
Ser solicitado um nome de usurio, use apenas letras, nmeros, pontos e traos entre 2
a 32 caracteres e aperte ENTER.
Em seguida ser solicitado uma senha, voc dever criar uma senha com no mnimo 6
caracateres. recomendado usar senhas complexas misturando letras e nmeros para garantir a
segurana do usurio e do seu servidor.
Agora voc deve digitar o nmero de dias para a conta expirar. Expirar no significa que a
conta ser excluida, apenas desativada, voc poder usar o comando mudardata para alterar a
data de expirao de uma conta e para reativar contas expiradas. Para remover todas as contas
expiradas do sistema basta usar o comando expcleaner.
Ser solicitado o nmero de conexes simultneas permitidas, ou seja, de quantos lugares
ou dispositivos o usurio poder se conectar ao mesmo tempo sem ser desconectado pelo comando
sshlimiter. Digite um nmero vlido (maior que zero).
Aps tudo digitado corretamente aparecer a confirmao do usurio criado, a data de
expirao e o nmero de conexes simultneas permitido.

O usurio automaticamente adicionado a base de dados no arquivo /root/usuarios.db.


Usurios criados com o comando criarusuario no tem acesso ao terminal para garantir
a segurana do servidor.
recomendado no criar nomes sequenciais de usurios (por exemplo: usuario1, usuario2,
usuario3) para evitar tentativas de logins no autorizadas. E tambm importante no criar usurios
usando apenas nmeros para evitar conflitos com a verificao de usurios existentes (como
avisado na pgina 7).

Como mudar a data de expirao de um usurio


Use o comando: mudardata
Ser mostrado a lista de usurios e suas respectivas data de expirao e (se necessrio)
um aviso que determinado usurio j expirou.
(Obs: o usurio expira no primeiro segundo da data de expirao, portanto usurios cuja
data de expirao o dia de hoje j expiraram).
Escreva o nome do usurio que deseja alterar a data de expirao e aperte ENTER.
Digite uma nova data de expirao, que no seja uma data passada (como uma semana
atrs) ou o dia de hoje, mas uma data futura, no formado DIA/MES/ANO. Por exemplo: 20/05/2022.
A data de expirao no ser alterada se voc digitar uma data invlida.

Como alterar a senha de um usurio


Use o comando: alterarsenha
Ser mostrado a lista de usurios, digite o nome do usurio que deseja alterar a senha.
Digite uma nova senha maior que 6 caracteres.

Alterar limite de conexes simultneas de um usurio


Use o comando: alterarlimite
Ser mostrado uma lista com o nome de cada usurio seguido do nmero mximo de
conexes simultneas permitidos para cada um.
Digite o nome do usurio que deseja alterar o limite de conexes simultneas.
Em seguida digite o nmero de conexes simultneas.

Como remover todos os usurios expirados de uma vez


Use o comando: expcleaner
Ele ir comparar a data de expirao dos usurios com a data de hoje. Se a data de
expirao for hoje ou anterior a hoje, o usurio ser removido automaticamente, se a data de
expirao for amanh ou daqui muitos dias, o usurio no ser removido.

Obs: usurios sem data de expirao (que no foram criados atravs do comando
criarusuario) no aparecero no comando e no sero afetados.

Remover um usurio
Use o comando: remover
Ser mostrada a lista de usurios, digite o nome do usurio que deseja remover.
O usurio ser removido, caso o usurio esteja conectado, ele ser desconectado
automaticamente e removido. O comando remover tambm atualiza a base de dados do arquivo
/root/usuarios.db mantendo o funcionamento correto dos demais comandos do VPS Manager 2.0.
Por isso importante remover usurios com o comando remover em vez do userdel nativo
do Linux.

Verificar lista de usurios e quem est conectado


Use o comando: sshmonitor
Ser mostrada a lista de usurios, o nmero de conexes e o limite de conexes permitidos
na criao da conta.
Este comando no impede multi login, apenas mostra o nmero de conexes de cada
usurio* e o limite de conexes simultneas configurado durante a criao do usurio.

*Caso o usurio desconecte-se por queda de sinal e reconecte em seguida, ser


somado uma conexo a mais porque o processo da conexo anterior permanece ativo no
servidor por um tempo. No recomendado usar o SSH Monitor como um indicador que a
mesma conta est sendo usada em vrios dispositivos ao mesmo tempo, exceto se o nmero
de conexes simultneas for bem alto.Tentativas de login tambm so somadas ao nmero
de conexes simultneas daquele usurio.

Impedir conexes simultneas alm do limite


Use o comando: sshlimiter
O comando ir verificar a cada 5 segundos as conexes do usurio e comparar com o limite
de conexes de cada usurio no arquivo /root/usuarios.db
Se o nmero de conexes** for maior que o limite, todas as conexes deste usurio*** sero
desconectadas na hora.

Porm ao parar o comando com CTRL+C ou ento fechar a janela do terminal, o sshlimiter
ir parar de funcionar. Para manter rodando em segundo plano mesmo depois de desconectar do
terminal voc pode executar o comando:
sshlimiter &
E se quiser parar o processo do sshlimiter em segundo plano use o comando:
pkill -f sshlimiter
Ou ento criar uma sesso screen, que simula uma janela virtual que continua rodando
mesmo depois de se desconectar do terminal. Basta usar o comando:
screen
Se surgir um texto na tela aperte ESPAO ou ENTER para continuar.
Para iniciar o sshlimiter dentro da sesso screen execute o comando:
sshlimiter
Para sair do screen pressione CTRL+A+D ou apenas se desconecte do terminal
desconectando normalmente ou ento fechando a janela. O sshlimiter continuar rodando dentro
da sesso screen, para voltar a sesso screen para ver o comando funcionando em tempo real use
o comando:
screen -r

Caso voc esteja com problemas para retornar a sesso screen com o comando screen -r,
termine o processo do screen com o comando:
killall screen
E crie uma nova sesso screen e execute novamente o sshlimiter.
** Caso o usurio desconecte e reconecte em seguida, o sshlimiter ir detectar duas
conexes por causa do processo da conexo anterior continuar ativo no servidor. No
recomendado usar as desconexes do SSH Limiter como prova que um mesmo usurio est
sendo usado em vrios dispositivos ao mesmo tempo.
Imagine que uma conta de usurio est sendo usada por vrias pessoas, todas as
vezes que mais de uma se conecta (caso o limite de conexo deste usurio seja apenas uma
conexo) todos so desconectados, bastante desencorajador para continuar usando dessa
forma. O objetivo do SSH Limiter no revelar qual conta de usurio est sendo usada para
conectar de mais de um lugar ao mesmo tempo alm do limite permitido, mas para
desencorajar esse tipo de ao.
*** O problema que desconectava todos os usurios com nome sequencial (exemplo:
joao, joao1, joao2, joao3) presente na verso anterior do SSH Limiter foi resolvido nessa
verso.

Adicionar Host ao Proxy Squid


Host como so chamados os domnios utilizados em payloads utilizadas no HTTP Injector
e programas similares. Esses domnios normalmente so sites de operadoras ou ento sites
parceiros das operadoras que tem acesso liberado mesmo sem crditos ou pacote de dados.
Para permitir o uso de um determinado domnio e seus subdomnios, basta usar o comando:
addhost
Ir ser mostrada a lista de domnios do arquivo payload.txt, adicione o dominio desejado
comeando com um ponto. O arquivo ser atualizado e o Proxy Squid recarregado, permitindo
aquele domnio ser usado em payloads para se conectar ao servidor.

Ao adicionar o domnio com um ponto no incio j libera os subdomnios como


www.claromusica.com, ento no h necessidade de liberar cada subdomnio usado nas payload
mas apenas o domnio principal.
Por exemplo, no necessrio liberar recargawap.claro.com.br pois o domnio
.claro.com.br j est presente na lista.

Remover Host do Proxy Squid


basicamente a mesma coisa que o anterior, porm com o comando: delhost
Ao executar ser mostrada a lista de domnios que est no arquivo payload.txt e basta digitar
o domnio que deseja remover.

Alterar o fuso horrio do servidor


Para o funcionamento correto dos comandos de gerenciamento e tambm para a expirao
do usurio ocorrer no horrio certo, no primeiro segundo da data de expirao, necessrio que o
fuso horrio do servidor esteja configurado corretamente.
Para verificar se a hora est certa, digite o comando date
Caso a hora esteja diferente do fuso horrio desejado (por exemplo: o horrio de Braslia) use
o comando: dpkg-reconfigure tzdata
Dependendo do sistema que voc usa no servidor, ir aparecer uma interface para selecionar
o continente ou regio atravs das teclas direcionais ou ento uma interface para selecionar
pressionando o nmero da regio e apertando ENTER.

Resumo geral

Para evitar problemas use apenas os comandos do VPS Manager 2.0 para gerenciar os
usurios e para adicionar ou remover os domnios permitidos no Proxy Squid.

bom sempre remover os usurios expirados do sistema para evitar conflitos ao adicionar
novos usurios com o mesmo nome.

No exagere em nmeros como por exemplo o tanto de dias para a conta expirar. Se o
sistema do seu servidor for de 32 bits, datas maiores que 19 de janeiro de 2038 no
funcionaro corretamente devido ao Problema do ano 2038.

A melhor maneira de impedir abusos dos usurios (como compartilhamento indevido da conta
para outras pessoas) criando regras entre voc e o usurio, comandos como o
sshlimiter apenas ajuda a desencorajar abusos mas no 100% eficiente em todos os
casos.

Ajuste a hora do seu servidor para a expirao da conta do usurio ocorrer no horrio certo e
evitar problemas.

O sshlimiter s impede conexes simultneas alm do limite se permanecer ativo, ou seja,


rodando no servidor. Caso no esteja rodando ele no far nada.

Dica:
Leia sobre o funcionamento do Linux e suas distribuies assim como o funcionamento de
servidores. O melhor jeito de resolver problemas estar preparado para resolv-los antes deles
aparecerem. Na internet h milhares de tutoriais, livros e documentaes sobre o funcionamento do
Linux. Muitas vezes basta pesquisar uma mensagem de erro que aparece para encontrar a soluo.

Phreaker56 2016

Anda mungkin juga menyukai