Linha 104: | Linha 104: | ||
==Patch Mikrotik Rate Limit== | ==Patch Mikrotik Rate Limit== | ||
− | + | <div class="toccolours mw-collapsible mw-collapsed" style="width:auto; overflow:auto;"> | |
+ | <div style="font-weight:bold;line-height:1.6;">MK-rate-limit.patch</div> | ||
+ | <div class="mw-collapsible-content"> | ||
<blockquote><pre> | <blockquote><pre> | ||
--- git a/accel-ppp/accel-pppd/shaper/shaper.c b/accel-ppp/accel-pppd/shaper/shaper.c | --- git a/accel-ppp/accel-pppd/shaper/shaper.c b/accel-ppp/accel-pppd/shaper/shaper.c | ||
Linha 164: | Linha 166: | ||
long int val; | long int val; | ||
</pre></blockquote> | </pre></blockquote> | ||
− | + | </div></div> | |
Poderá copiar do Pastebin | Poderá copiar do Pastebin | ||
Linha 199: | Linha 201: | ||
==Accel-PPP Configuração== | ==Accel-PPP Configuração== | ||
+ | |||
+ | Esse é o exemplo de configuração que melhor se enquadra em conjunto com o [https://controllr.brbyte.com Controllr.]<br> | ||
+ | A configuração pode ser modificada conforme a sua necessidade.<br> | ||
+ | O manual dos módulos, se encontra nesses links abaixo: | ||
+ | |||
+ | https://accel-ppp.org/accel-ppp.conf.html | ||
+ | |||
+ | https://accel-ppp.org/wiki/doku.php?id=configfile | ||
+ | |||
+ | Os campos com <i class="fas fa-hashtag"></i> estão desabilitados, para habilitar basta remover o <i class="fas fa-hashtag"></i>. | ||
<div class="toccolours mw-collapsible mw-collapsed" style="width:auto; overflow:auto;"> | <div class="toccolours mw-collapsible mw-collapsed" style="width:auto; overflow:auto;"> | ||
− | <div style="font-weight:bold;line-height:1.6;"> | + | <div style="font-weight:bold;line-height:1.6;">accel-ppp.conf</div> |
<div class="mw-collapsible-content"> | <div class="mw-collapsible-content"> | ||
<blockquote><pre> | <blockquote><pre> | ||
Linha 271: | Linha 283: | ||
telnet=127.0.0.1:2000 | telnet=127.0.0.1:2000 | ||
tcp=127.0.0.1:2001 | tcp=127.0.0.1:2001 | ||
− | sessions-columns=ifname,username,ip,ip6,ip6-dp,type,state,uptime,uptime-raw,calling-sid,called-sid,sid,comp,rx-bytes,tx-bytes,rx-bytes-raw,tx-bytes-raw,rx-pkts,tx-pkts | + | # sessions-columns=ifname,username,ip,ip6,ip6-dp,type,state,uptime,uptime-raw,calling-sid,called-sid,sid,comp,rx-bytes,tx-bytes,rx-bytes-raw,tx-bytes-raw,rx-pkts,tx-pkts |
# verbose=1 | # verbose=1 | ||
# password=123 | # password=123 | ||
Linha 327: | Linha 339: | ||
nas-identifier=Accel-PPP | nas-identifier=Accel-PPP | ||
nas-ip-address=192.168.142.227 | nas-ip-address=192.168.142.227 | ||
+ | gw-ip-address=192.168.142.227 | ||
server=192.168.142.22,brbyte,auth-port=1812,acct-port=0,req-limit=50,fail-timeout=20,max-fail=30,weight=1 | server=192.168.142.22,brbyte,auth-port=1812,acct-port=0,req-limit=50,fail-timeout=20,max-fail=30,weight=1 | ||
server=192.168.142.22,brbyte,auth-port=0,acct-port=1813,req-limit=50,fail-timeout=20,max-fail=30,weight=1 | server=192.168.142.22,brbyte,auth-port=0,acct-port=1813,req-limit=50,fail-timeout=20,max-fail=30,weight=1 | ||
Linha 336: | Linha 349: | ||
# max-try=30 | # max-try=30 | ||
# acct-on=1 | # acct-on=1 | ||
− | |||
# server=192.168.142.xx,brbyte,auth-port=1812,acct-port=1813,req-limit=50,fail-timeout=0,backup | # server=192.168.142.xx,brbyte,auth-port=1812,acct-port=1813,req-limit=50,fail-timeout=0,backup | ||
# acct-on=0 | # acct-on=0 | ||
Linha 536: | Linha 548: | ||
</pre></blockquote> | </pre></blockquote> | ||
</div></div> | </div></div> | ||
+ | <br> | ||
+ | Módulos que devem se atentar em substituir os dados. | ||
+ | |||
+ | <blockquote><pre> | ||
+ | [pppoe] | ||
+ | verbose=1 | ||
+ | ac-name=Accel-PPP /******** Nome do seu servidor Accel ********/ | ||
+ | service-name=Accel-PPP /******** Nome do seu servidor Accel ********/ | ||
+ | ip-pool=pool-accel /******** Nome da Pool que irá entregar os IPs. Se não for usar basta marcar # ********/ | ||
+ | interface=ens33 /******** Nome da interface de rede da conexão dos clientes ********/ | ||
+ | vlan-mon=ens33,1-4095 /******** Nome da interface de rede da conexão dos clientes ********/ | ||
+ | </pre></blockquote> | ||
+ | <blockquote><pre> | ||
+ | [radius] | ||
+ | nas-identifier=Accel-PPP /******** Nome do seu servidor Accel. Tem que estar o mesmo nome no Radius NAS do Controllr ********/ | ||
+ | nas-ip-address=192.168.142.227 /******** IP do seu Accel-PPP ********/ | ||
+ | gw-ip-address=192.168.142.227 /******** IP do seu Accel-PPP ********/ | ||
+ | server=192.168.142.22,brbyte,auth-port=1812,acct-port=0,req-limit=50,fail-timeout=20,max-fail=30,weight=1 /******** Ip do seu servidor Radius Controllr ********/ | ||
+ | server=192.168.142.22,brbyte,auth-port=0,acct-port=1813,req-limit=50,fail-timeout=20,max-fail=30,weight=1 /******** Ip do seu servidor Radius Controllr ********/ | ||
+ | dae-server=192.168.142.227:3799,brbyte /******** IP do seu Accel-PPP ********/ | ||
+ | </pre></blockquote> | ||
+ | <blockquote><pre> | ||
+ | [ip-pool] | ||
+ | gw-ip-address=192.168.142.227 /******** Gateway do seu range de IP ou o IP do seu Accel-ppp ********/ | ||
+ | 192.168.1.1-255,name=pool-accel /******** Se for entregar IP pelo Accel, basta seguir a lógica e configurar o range de IP. Se for entregar pelo Controllr basta marcar o # ********/ | ||
+ | </pre></blockquote> | ||
+ | <blockquote><pre> | ||
+ | [chap-secrets] | ||
+ | gw-ip-address=192.168.142.227 /******** Gateway do seu range de IP ou o IP do seu Accel-ppp ********/ | ||
+ | </pre></blockquote> | ||
=Dicionario do Mikrotik= | =Dicionario do Mikrotik= |
Edição das 20h58min de 26 de junho de 2020
Índice
Controllr > Accel-PPP
O Accel-PPP é um software compilado para ser usando em diversos serviços de autenticação, compatível com o protocolo Radius. Como por exemplo autenticação PPPoE, IPoE, etc... Essa ferramenta pode ser usada em conjunto com o Controllr.
Instalação do Debian10
Você pode usar tanto o Ubuntu quando o Debian, ou outro derivado do LINUX que seja compatível para instalar o seu Accel-PPP. No exemplo a seguir, iremos ensinar como pode ser instalado no Debian versão 10.4.0 (Download 64x ISO)
- Baixe a ISO e realize a instalação do seu Debian.
- OBS: Se preferir, no momento da instalação escolha somente a opção via terminal shell (SSH), sem interface gráfica (web)
- Dicas Debian
- Habilitar login root via putty:
- Instale o editor de arquivos joe
- Habilitar login root via putty:
apt-get install joe -- Comandos JOE CURSOR MOVER MARCAR BLOCO ^B esquerda ^U tela anterior ^KB início ^P cima ^V tela posterior ^KK final ^Z palavra anterior ^A início da linha ^KM mover ^X palavra posterior ^E fim da linha ^KC copiar ^F direita ^KU início do arquivo ^KW salvar ^N baixo ^KV final do arquivo ^KY apagar ^KL mover para linha ^K/ filtro DELETAR MISCELÂNEA SAIR ^D caracter ^KJ reformatar ^KX salvar ^Y linha ^T opções ^C abortar ^W palavra a direita ^R refrescar ^KZ shell ^O palavra a esquerda ^@ inserir ARQUIVO ^J final da linha SPELL ^KE editar ^_ desfazer ^[N palavra ^KR inserir ^^ refazer ^[L arquivo ^KD salvar BUSCA ^KF procurar texto ^L procurar próximo *^ = CTRL*
- Abra o arquivo:
joe /etc/ssh/sshd_config
- Edite as linha tirando o # e mudando para yes
PermitRootLogin yes
- Após editar o arquivo:
CTRL + K
CTRL + X
- Depois reinicie o SSH
/etc/init.d/ssh restart
Agora vamos instalar o Accel-PPP
- Baixe os pacotes do Accel-PPP no seu Debian
apt-get install -y build-essential cmake gcc linux-headers-`uname -r` git libpcre3-dev libssl-dev liblua5.1-0-dev -- Se não tiver o LIB SNMP instale-o, depois rode novamente o comando acima apt-get install libsnmp-dev
- Agora crie um diretório para baixar o projeto do git
mkdir -p /usr/local/src/accel mkdir -p /usr/local/src/accel/build
- Agora entre nesse diretório criado
cd /usr/local/src/accel
- Depois irar fazer o clone do projeto do git do Accel-PPP
git clone https://github.com/xebd/accel-ppp.git
- Antes de Compilar, rode o PATCH do Mikrotik Rate Limit
Compilação
- Após clonar do git acesse o diretório da Build
cd /usr/local/src/accel/build
- Dentro do diretório da Build, irá escolher o que será compilado, conforme sua necessidade
cmake -DCPACK_TYPE=Debian10 -DBUILD_IPOE_DRIVER=TRUE -DBUILD_VLAN_MON_DRIVER=TRUE -DRADIUS=TRUE -DNETSNMP=TRUE -DCMAKE_BUILD_TYPE=Debug -DCMAKE_INSTALL_PREFIX=/usr -DKDIR=/usr/src/linux-headers-$(uname -r) ../accel-ppp
- Agora irá compilar o Accel-PPP no Debian
make
- Após irá copiar o modulo do Kernel Vlan_mon e IPoE em seguida carregue-os
cp drivers/ipoe/driver/ipoe.ko /lib/modules/$(uname -r) cp drivers/vlan_mon/driver/vlan_mon.ko /lib/modules/$(uname -r) depmod -a modprobe vlan_mon modprobe ipoe
- Devemos adicionar os módulos para iniciarem com o Boot
echo "vlan_mon" >> /etc/modules echo "ipoe" >> /etc/modules
- Iremos criar o pacote .DEB
cpack -G DEB apt install ./accel-ppp.deb
Instalação do Accel-PPP Completa no seu Debian
- Agora habilite o seu Accel-PPP para iniciar com o seu Debian
systemctl enable accel-ppp
- O pacote vem com um modelo de exemplo, jogue esse modelo de configuração no seu Accel-PPP e edite-o conforme a sua necessidade.
cp /etc/accel-ppp.conf.dist /etc/accel-ppp.conf
- Apos a edição do arquivo, sempre reinicie o seu Accel-PPP
systemctl restart accel-ppp systemctl status accel-ppp
Patch Mikrotik Rate Limit
Poderá copiar do Pastebin
Esse patch deve ser jogado no seu Accel-PPP para que você consiga usar o vendor Mikrotik Rate limit no Shaper.
- Copie essas linhas de código e salve com a extensão .patch
- Depois jogue esse arquivo no diretório
cd /usr/local/src/accel
- Poderá transferir via SCP, segue exemplo de como transferir usando o CMD do Windows:
scp -P (porta ssh)(diretório onde se encontra o arquivo) (usuário@X.X.X.X):(diretório que irá mandar o arquivo) scp -P 22 D:/ISO/MK-rate-limit.patch root@192.168.142.227:/usr/local/src/accel
- Outra opção é fazer tudo via shell
cd /usr/local/src/accel touch MK-rate-limit.patch joe MK-rate-limit.patch -- Colar o script CTRL + K CTRL + X --Por fim rodar o patch patch -p 1 < MK-rate-limit.patch -- Confira se subiu o patch corretamente cat /usr/local/src/accel/accel-ppp/accel-pppd/shaper/shaper.c | grep -A50 'static void parse_string_simple'
Agora volte para a compilação do seu Accel-PPP
Accel-PPP Configuração
Esse é o exemplo de configuração que melhor se enquadra em conjunto com o Controllr.
A configuração pode ser modificada conforme a sua necessidade.
O manual dos módulos, se encontra nesses links abaixo:
https://accel-ppp.org/accel-ppp.conf.html
https://accel-ppp.org/wiki/doku.php?id=configfile
Os campos com estão desabilitados, para habilitar basta remover o .
Módulos que devem se atentar em substituir os dados.
[pppoe] verbose=1 ac-name=Accel-PPP /******** Nome do seu servidor Accel ********/ service-name=Accel-PPP /******** Nome do seu servidor Accel ********/ ip-pool=pool-accel /******** Nome da Pool que irá entregar os IPs. Se não for usar basta marcar # ********/ interface=ens33 /******** Nome da interface de rede da conexão dos clientes ********/ vlan-mon=ens33,1-4095 /******** Nome da interface de rede da conexão dos clientes ********/
[radius] nas-identifier=Accel-PPP /******** Nome do seu servidor Accel. Tem que estar o mesmo nome no Radius NAS do Controllr ********/ nas-ip-address=192.168.142.227 /******** IP do seu Accel-PPP ********/ gw-ip-address=192.168.142.227 /******** IP do seu Accel-PPP ********/ server=192.168.142.22,brbyte,auth-port=1812,acct-port=0,req-limit=50,fail-timeout=20,max-fail=30,weight=1 /******** Ip do seu servidor Radius Controllr ********/ server=192.168.142.22,brbyte,auth-port=0,acct-port=1813,req-limit=50,fail-timeout=20,max-fail=30,weight=1 /******** Ip do seu servidor Radius Controllr ********/ dae-server=192.168.142.227:3799,brbyte /******** IP do seu Accel-PPP ********/
[ip-pool] gw-ip-address=192.168.142.227 /******** Gateway do seu range de IP ou o IP do seu Accel-ppp ********/ 192.168.1.1-255,name=pool-accel /******** Se for entregar IP pelo Accel, basta seguir a lógica e configurar o range de IP. Se for entregar pelo Controllr basta marcar o # ********/
[chap-secrets] gw-ip-address=192.168.142.227 /******** Gateway do seu range de IP ou o IP do seu Accel-ppp ********/
Dicionario do Mikrotik
Você pode pegar o dicionário do Mikrotik direto no site deles.
https://wiki.mikrotik.com/wiki/Manual:RADIUS_Client/vendor_dictionary