WebHTB - Controle de banda de internet

O WebHTB é uma excelente ferramenta para controlar a velocidade da internet na rede local. Resolvi criar este artigo usando três grandes distros de referência: Debian, CentOS (Red Hat) e Slackware, mostrando as diferenças em cada caso.

[ Hits: 39.565 ]

Por: Ronaldo Moraes Junior em 19/03/2015


Problemas (e soluções) encontrados



Durante minhas instalações do WebHTB, eu encontrei alguns problemas em casos específicos e que não foram muito claros, difíceis de diagnosticar. Caso tenham problemas, talvez a solução esteja aqui.

Caso você já possua o servidor SSH ativo em uma porta diferente da 22, provavelmente ao logar, ficará em espera infinitamente aguardando a tela inicial. Isso porque ao logar, o WebHTB faz uma conexão SSH para o próprio servidor (127.0.0.1) para manipular os arquivos e tabelas do banco de dados.

Para isso, primeiro abra o arquivo "auth.php" (que está na raiz dos diretórios do WebHTB) e procure pelo seguinte trecho:

$ssh = new Net_SSH2('127.0.0.1');

if(!$ssh->login('root', $AuthPW)){

$connection = ssh2_connect('127.0.0.1', 22);
if(!ssh2_auth_password($connection, 'root', $AuthPW)){


E altere de acordo com a porta utilizada. Neste exemplo, estamos utilizando o servidor SSH na porta 2222:

$ssh = new Net_SSH2('127.0.0.1', 2222);

if(!$ssh->login('root', $AuthPW)){

$connection = ssh2_connect('127.0.0.1', 2222);
if(!ssh2_auth_password($connection, 'root', $AuthPW)){

A seguir, vamos editar o arquivo "apply_changes.php" e modificarmos exatamente a mesma coisa. Procuramos pelo trecho:

include_once("Net/SSH2.php");
$ssh = new Net_SSH2('127.0.0.1');

if(!$ssh->login('root', $AuthPW)){

$connection = ssh2_connect('127.0.0.1', 22);
if(!ssh2_auth_password($connection, 'root', $AuthPW)){


E mudamos para:

include_once("Net/SSH2.php");
$ssh = new Net_SSH2('127.0.0.1', 2222);

if(!$ssh->login('root', $AuthPW)){

$connection = ssh2_connect('127.0.0.1', 2222);
if(!ssh2_auth_password($connection, 'root', $AuthPW)){

Basta salvar e o login na tela inicial do WebHTB ocorrerá corretamente.

Outro problema que pode ocorrer, dependendo da versão do seu servidor SSH, é que o WebHTB utiliza um determinado grupo de algoritmos de criptografia e, se dentre este grupo não houver algum que seja utilizado pelo SSH, ele não se conecta e gera um erro sobre isso no syslog (ou messages). Caso tenha problemas para logar e o procedimento acima não resolva, a chave do problema pode estar aí.

Para resolver é muito fácil, basta abrir o arquivo de configuração do SSH, que provavelmente está em /etc/ssh/sshd_config e inserir a seguinte linha ao final do arquivo:

Ciphers aes128-ctr,aes192-ctr,aes256-ctr,aes128-gcm@openssh.com,aes256-gcm@openssh.com,chacha20-poly1305@openssh.com,blowfish-cbc,aes128-cbc,3des-cbc,cast128-cbc,arcfour,aes192-cbc,aes256-cbc

Após isso, reinicie o sshd e o problema estará resolvido!

Bibliografia


Página anterior    

Páginas do artigo
   1. Introdução
   2. Instalando o WebHTB no Debian
   3. Instalando o WebHTB no CentOS
   4. Instalando o WebHTB no Slackware
   5. Problemas (e soluções) encontrados
Outros artigos deste autor

Instalando Squid a partir do código fonte

DVDAuthor: Como autorar DVDs no Linux

Leitura recomendada

Envio de e-mail criptografado pelo Zabbix usando Postfix

PABX IP Asterisk - Instalação no Debian/Ubuntu

Testando velocidade entre equipamentos Ubiquiti

Roubando bits (parte 2): como resolver questões rapidamente sem calculadora

Utilizando o script vpnautomatica

  
Comentários
[1] Comentário enviado por stremenx em 16/02/2016 - 17:43h

Boa tarde, segui 100% sua dica mais está retornando assim quando tento entrar:
https://127.0.0.1/html/webhtb/setup/index.php

Sendo essa imagem do erro:
https://www.dropbox.com/s/ubt0npn1dy2jqzg/Screenshot.png?dl=0

Poderia me dar uma ajuda.

[2] Comentário enviado por ronaldomjunior em 17/02/2016 - 23:19h

Já verificou se o PHP está ativo? outra coisa, verifique se o SERVIDOR SSH também está ativo e configurado para iniciar automaticamente.

--
Ronaldo Moraes Junior
Divinópolis - MG

[3] Comentário enviado por stremenx em 18/02/2016 - 11:47h

Bom dia, achei o problema era php.ini onde deve ser alterado no Debian 8, /etc/php5/apache2/php.ini
Poderia me ajudar, tenho squid3 e dansguard tudo funcionado mais queria fazer controle de velocidade (Downloads e Update) como seria no meu caso pois não estou achando tutorial, pois tenho internet de 10 mg e queria quer todos tivesse apenas acesso a downloads até 200 kbps.

[4] Comentário enviado por ediwisa em 07/03/2016 - 17:34h

Boa Tarde, sou iniciante em linux e tambem aqui no forum.Gostaria de saber , se possivel , o que é necessario alterar no Debian 8, /etc/php5/apache2/php.ini para acessar a pagina de setup corretamente, pois estou com o mesmo problema que o amigo stremenx
estava.Obrigado!

[5] Comentário enviado por stremenx em 07/03/2016 - 20:13h

Boa noite, para alterar bastar alterar a permissão #chmod 777 /etc/php5/apache2/php.ini e basta abrir e salvar dentro somente "short_open_tag = on".

Mais eu recomendo você ir para pfsense é mais rápido se quiser somente squid, squidguard, dansguards e controle de banda, pois já vem mastigado seria melhor que debian.

[6] Comentário enviado por ediwisa em 08/03/2016 - 08:58h

Bom dia , consegui concluir o setup agora ,seguindo a dica do amigo stremenx.Tenho agora que fazer ele logar na pagina,pois ele esta dando o problema de ficar girando a animaçao do webhtb e não logou ainda.Já verifiquei a questão da porta do ssh, a qual não foi alterada.Vou tentar mais um pouco .Muito obrigado e que Deus os abençoe.

[7] Comentário enviado por stremenx em 08/03/2016 - 09:53h

Amigo basta seguir o ultimo passo para corrigir.

https://www.vivaolinux.com.br/artigo/WebHTB-Controle-de-banda-de-internet?pagina=5

Só que como você é iniciante recomendo você pegar o PfSense, muito mais fácil de configura, além de ser gratuito.

https://www.pfsense.org/

https://forum.pfsense.org/index.php?board=12.0

[8] Comentário enviado por ediwisa em 08/03/2016 - 19:17h

Boa noite , consegui colocar pra rodar o webhtb senguindo as dicas passadas.Fiz os testes e esta perfeito.Muito obrigado!

[9] Comentário enviado por nizopi em 11/06/2016 - 12:29h

Boa tarde pessoal, segui todo o tutorial e tudo tem dado certo, até o momento de logar no sistema, o mesmo fica parado na animação do login, mas já conferi a porta do SSH e está na 22, tbm adicionei o grupo de algoritmos no final do arquivo de configuração do SSH, mas tbm não resolveu, e outra duvida tbm é referente ao local /var/www/html, já que o mesmo já existe no sistema, até aí ok, o conteúdo está la em html/, mas na hora de abrir no navegador ele só abre se eu tirar o html e colocar direto http://127.0.0.1/webhtb/setup/index.php e não http://127.0.0.1/html/webhtb/setup/index.php, isso poderia estar influenciando no erro?

Estou usando o Debian 8 Jessie 3.16.0-4-686pae

Obg.

[10] Comentário enviado por nizopi em 11/06/2016 - 18:39h


[9] Comentário enviado por nizopi em 11/06/2016 - 12:29h

Boa tarde pessoal, segui todo o tutorial e tudo tem dado certo, até o momento de logar no sistema, o mesmo fica parado na animação do login, mas já conferi a porta do SSH e está na 22, tbm adicionei o grupo de algoritmos no final do arquivo de configuração do SSH, mas tbm não resolveu, e outra duvida tbm é referente ao local /var/www/html, já que o mesmo já existe no sistema, até aí ok, o conteúdo está la em html/, mas na hora de abrir no navegador ele só abre se eu tirar o html e colocar direto http://127.0.0.1/webhtb/setup/index.php e não http://127.0.0.1/html/webhtb/setup/index.php, isso poderia estar influenciando no erro?

Estou usando o Debian 8 Jessie 3.16.0-4-686pae

Obg.


Já resolvi esse problema, estava na configuração do SSH, só o caso de não iniciar com html que ainda resta dúvida, mas funcionou..

Agora o problema é outro, o webhtb só entra em ação se eu abrir a interface e clicar em "Start/Restart QOS", mesmo inserindo o script no init.d e mesmo adicionando os modulos como indicado no artigo, mas não inicia automaticamente, o que poderia ser?

Obg.

[11] Comentário enviado por ajsalmeida em 23/02/2017 - 14:47h

Olá. Consegui ir até o final, mas quando loga no webHTB ele entra no sistema e aparecem algumas imagens azuis e só.
Já tentei mudar o arquivo php.ini mas não deu resultado. Na verdade estou usando ubuntu server, eu sei eu sou meio maluco, mas
não posso usar o pfsense aqui. Alguma ideia de como resolver esse problema de não carregar tudo da página depois que loga?


Contribuir com comentário