Mudanças entre as edições de "Como Ter Seu Proprio Looking Glass"

De Wiki BPF
Ir para: navegação, pesquisa
Linha 70: Linha 70:
 
<code>$config['frontpage']['disclaimer'] = <nowiki>''</nowiki>;</code>
 
<code>$config['frontpage']['disclaimer'] = <nowiki>''</nowiki>;</code>
  
Esse arquivo vem pré-configurado para conversar com varios roteadores. Aqui explicarei um cenário simples, onde o Quagga estará instalado no mesmo S.O. que o LG. Caso precise que funcione em um ambiente diferente, você terá que adaptar para o cenário de sua rede, utilizando a mesma lógica aqui explicada.
+
Esse arquivo vem pré-configurado para conversar com varios roteadores. Aqui explicarei um cenário simples, onde o FRRouting estará instalado no mesmo S.O. que o LG. Caso precise que funcione em um ambiente diferente, você terá que adaptar para o cenário de sua rede, utilizando a mesma lógica aqui explicada.
  
 
Da linha 38 em diante, teremos as configuraçoes relacionadas aos roteadores, vamos editar apenas as linhas relacionadas ao "router1".
 
Da linha 38 em diante, teremos as configuraçoes relacionadas aos roteadores, vamos editar apenas as linhas relacionadas ao "router1".
Linha 111: Linha 111:
 
* Com a senha "SENHA-DO-USUARIO-LOOKINGGLASS";
 
* Com a senha "SENHA-DO-USUARIO-LOOKINGGLASS";
 
* Utilizando SSH;
 
* Utilizando SSH;
* Definimos que ele consultará um Quagga;
+
* Definimos que ele consultará um Quagga, porém na verdade será um FRRouting;
 
* Comentamos a interface de origem;
 
* Comentamos a interface de origem;
 
* A descrição do roteador é "Roteador de Borda".
 
* A descrição do roteador é "Roteador de Borda".
Linha 117: Linha 117:
 
Caso queira remover o restante dos roteadores que aparecem, basta apagar ou comentar (//) as linhas referente aos outros roteadores.
 
Caso queira remover o restante dos roteadores que aparecem, basta apagar ou comentar (//) as linhas referente aos outros roteadores.
  
O proximo passo é instalar o Quagga:
+
O proximo passo é instalar o FRRouting:
  
<code>apt-get install quagga && mkdir -p /var/log/quagga && chown quagga:quagga /var/log/quagga</code>
+
<code>apt-get install frr</code>
  
Adicione o usuario "lookingglass" no seu linux, e o adicione ao grupo "quagga":
+
Adicione o usuario "lookingglass" no seu linux, e o adicione ao grupo "frr":
  
 
<code>adduser lookingglass</code>
 
<code>adduser lookingglass</code>
Linha 129: Linha 129:
 
Repita a senha
 
Repita a senha
  
<code>usermod -aG lookingglass quagga</code>
+
<code>usermod -aG lookingglass frrvty</code>
  
 
Habilite o forwarding IPv4 e IPv6 no linux:
 
Habilite o forwarding IPv4 e IPv6 no linux:
Linha 149: Linha 149:
 
<code>sysctl -p</code>
 
<code>sysctl -p</code>
  
Acesse a pasta do Quagga:
+
Acesse a pasta do FRR:
  
<code>cd /etc/quagga/</code>
+
<code>cd /etc/frr/</code>

Edição das 20h50min de 3 de novembro de 2019

ARTIGO EM DESENVOLVIMENTO

Assim como explicado em detalhes no artigo Looking Glass, ter um LG é fundamental para sua rede, principalmente se o ISP em questão for transito. Mesmo se tratando de casos onde não é transito, ter um LG facilita muito o troubleshoot para seu time técnico.

Na tentativa de incentivar todos os ISP's a terem seu próprio Looking Glass, vou explicar passo-a-passo como configurar um utilizando um LG OpenSource Web utilizando Debian 10, caso tenha preferencia por outra distribuição, apenas adapte conforme sua necessidade.

Após instalar seu Debian 10, atualize seus repositórios com o comando abaixo:

apt update -y

Instale as dependências:

apt install git apache2 libapache2-mod-php php php-common -y

Faça o clone do LG no GitHub:

git clone https://github.com/respawner/looking-glass.git /var/www/html/lg

Reinicie o serviço do Apache2:

service apache2 restart

Por padrão você só conseguirá acessar o LG a partir do momento que copiar o arquivo config.php.example para config.php, e é exatamente o que faremos agora.

(Prefira copiar a mover/renomear, para que possa ter backup da configuração padrão)

LookingGlassDefaultScreen.png

cd /var/www/html/lg

cp config.php.example config.php

Caso tenha deixado seu linux em DHCP, verifique qual o IP recebido utilizando seguinte comando:

ip addr

Supondo que o IP seja 192.168.0.10, acesse com a seguinte URL:

http://192.168.0.10/lg

O próximo passo é editar o arquivo de configuração que copiamos, para isso, utilize o editor de texto de sua preferencia.

nano /var/www/html/lg/config.php

No arquivo de configuração possuímos alguns campos básicos como:

  • Nome;
  • E-mail;
  • Titulo;
  • Logo;
  • Disclaimer.

Esses campos deverão ser preenchidos mediante suas informações, segue um exemplo:

LG-Interface-Configurado2.png

$config['contact']['name'] = 'NOC HexaNetworks';

$config['contact']['mail'] = 'andredias@hexanetworks.com.br';

// Frontpage configuration

// Title of the page

$config['frontpage']['title'] = 'Looking Glass - Hexa Networks';

// Logo to display (remove it to not display any logo)

$config['frontpage']['image'] = 'logo.png';

// Disclaimer to inform people using the looking glass

// Set it to null to not display a disclaimer

$config['frontpage']['disclaimer'] = '';

Esse arquivo vem pré-configurado para conversar com varios roteadores. Aqui explicarei um cenário simples, onde o FRRouting estará instalado no mesmo S.O. que o LG. Caso precise que funcione em um ambiente diferente, você terá que adaptar para o cenário de sua rede, utilizando a mesma lógica aqui explicada.

Da linha 38 em diante, teremos as configuraçoes relacionadas aos roteadores, vamos editar apenas as linhas relacionadas ao "router1".

Configure mediante o exemplo:

// Authentication based on SSH or Telnet with password

// The hostname or the IP address

$config['routers']['router1']['host'] = '127.0.0.1';

// The user to use to connect to the router

$config['routers']['router1']['user'] = 'lookingglass';

// The password of the given user

$config['routers']['router1']['pass'] = 'SENHA-DO-USUARIO-LOOKINGGLASS';

// The authentication mechanism to use (can be ssh-password or telnet)

$config['routers']['router1']['auth'] = 'ssh-password';

// The router type (can be cisco, ios, juniper or junos)

$config['routers']['router1']['type'] = 'quagga';

// The router source interface to be used

//$config['routers']['router1']['source-interface-id'] = 'lo0';

// The router description to be displayed in the router list

LG-Configurado-3.png

$config['routers']['router1']['desc'] = 'Roteador de Borda';

Acima determinamos que:

  • O LG fará consultas local;
  • Utilizará o usuário "lookingglass" para tal;
  • Com a senha "SENHA-DO-USUARIO-LOOKINGGLASS";
  • Utilizando SSH;
  • Definimos que ele consultará um Quagga, porém na verdade será um FRRouting;
  • Comentamos a interface de origem;
  • A descrição do roteador é "Roteador de Borda".

Caso queira remover o restante dos roteadores que aparecem, basta apagar ou comentar (//) as linhas referente aos outros roteadores.

O proximo passo é instalar o FRRouting:

apt-get install frr

Adicione o usuario "lookingglass" no seu linux, e o adicione ao grupo "frr":

adduser lookingglass

Informe a senha

Repita a senha

usermod -aG lookingglass frrvty

Habilite o forwarding IPv4 e IPv6 no linux:

echo "net.ipv4.conf.all.forwarding=1" | tee -a /etc/sysctl.conf

echo "net.ipv4.conf.default.forwarding=1" | tee -a /etc/sysctl.conf

sed 's/#net.ipv6.conf.all.forwarding=1/net.ipv6.conf.all.forwarding=1/g' /etc/sysctl.conf | tee /etc/sysctl.conf

echo "net.ipv6.conf.default.forwarding=1" | tee -a /etc/sysctl.conf

sysctl -p

echo "net.ipv4.conf.all.mc_forwarding=1" | tee -a /etc/sysctl.conf

echo "net.ipv4.conf.default.mc_forwarding=1" | tee -a /etc/sysctl.conf

sysctl -p

Acesse a pasta do FRR:

cd /etc/frr/