<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>Arquivos configuração de rede - Remontti</title>
	<atom:link href="https://blog.remontti.com.br/tag/configuracao-de-rede/feed" rel="self" type="application/rss+xml" />
	<link>https://blog.remontti.com.br/tag/configuracao-de-rede</link>
	<description>rudimar@remontti</description>
	<lastBuildDate>Tue, 24 Mar 2026 13:00:23 +0000</lastBuildDate>
	<language>pt-BR</language>
	<sy:updatePeriod>
	hourly	</sy:updatePeriod>
	<sy:updateFrequency>
	1	</sy:updateFrequency>
	<generator>https://wordpress.org/?v=6.9.4</generator>

<image>
	<url>https://blog.remontti.com.br/wp-content/uploads/2024/09/icone-rr-80x80.png</url>
	<title>Arquivos configuração de rede - Remontti</title>
	<link>https://blog.remontti.com.br/tag/configuracao-de-rede</link>
	<width>32</width>
	<height>32</height>
</image> 
	<item>
		<title>Configurando OpenVPN no RouterOS v7</title>
		<link>https://blog.remontti.com.br/7921</link>
					<comments>https://blog.remontti.com.br/7921#comments</comments>
		
		<dc:creator><![CDATA[Rudimar Remontti]]></dc:creator>
		<pubDate>Fri, 12 Apr 2024 20:58:46 +0000</pubDate>
				<category><![CDATA[Linux]]></category>
		<category><![CDATA[Mikrotik]]></category>
		<category><![CDATA[Tutoriais]]></category>
		<category><![CDATA[configuração de rede]]></category>
		<category><![CDATA[configuração de VPN]]></category>
		<category><![CDATA[criptografia]]></category>
		<category><![CDATA[IP público]]></category>
		<category><![CDATA[isp]]></category>
		<category><![CDATA[MikroTik Hex RB750Gr3]]></category>
		<category><![CDATA[OpenVPN]]></category>
		<category><![CDATA[routeros]]></category>
		<category><![CDATA[RouterOS 6]]></category>
		<category><![CDATA[RouterOS 7]]></category>
		<category><![CDATA[Segurança de Rede]]></category>
		<category><![CDATA[tutoriais MikroTik]]></category>
		<category><![CDATA[vpn]]></category>
		<category><![CDATA[VPN segura]]></category>
		<guid isPermaLink="false">https://blog.remontti.com.br/?p=7921</guid>

					<description><![CDATA[<p>Hoje, vamos aprender a configurar o OpenVPN no RouterOS v7. Com vasta experiência junto a ISPs, percebo que muitos ainda utilizam protocolos como PPTP, SSTP e L2TP, que oferecem menor segurança. Optar pelo OpenVPN&#46;&#46;&#46;</p>
<p>O post <a href="https://blog.remontti.com.br/7921">Configurando OpenVPN no RouterOS v7</a> apareceu primeiro em <a href="https://blog.remontti.com.br">Remontti</a>.</p>
]]></description>
										<content:encoded><![CDATA[<p><img fetchpriority="high" decoding="async" src="https://blog.remontti.com.br/wp-content/uploads/2024/04/openvpn-remontti.com_.br_.png" alt="" width="1530" height="826" class="alignnone size-full wp-image-7933" srcset="https://blog.remontti.com.br/wp-content/uploads/2024/04/openvpn-remontti.com_.br_.png 1530w, https://blog.remontti.com.br/wp-content/uploads/2024/04/openvpn-remontti.com_.br_-300x162.png 300w, https://blog.remontti.com.br/wp-content/uploads/2024/04/openvpn-remontti.com_.br_-1024x553.png 1024w, https://blog.remontti.com.br/wp-content/uploads/2024/04/openvpn-remontti.com_.br_-768x415.png 768w" sizes="(max-width: 1530px) 100vw, 1530px" /><br />
Hoje, vamos aprender a configurar o OpenVPN no RouterOS v7. Com vasta experiência junto a ISPs, percebo que muitos ainda utilizam protocolos como PPTP, SSTP e L2TP, que oferecem menor segurança. Optar pelo OpenVPN é uma escolha superior, pois ele não só fornece criptografia robusta e configurações altamente personalizáveis, mas também garante uma proteção mais eficaz contra as vulnerabilidades comuns nesses protocolos menos seguros.</p>
<p>Para configurar nosso servidor OpenVPN, precisaremos de um IP público para acessar o servidor. Uma vantagem interessante é que esse IP pode estar em &#8220;<strong>blackhole</strong>&#8220;, o que significa que ele não responderá a nenhuma porta indiscriminadamente, economizando recursos da CPU ao evitar a criação extensiva de regras de firewall. Vou ilustrar essa configuração com um exemplo prático:</p>
<p>Imagine que você adquiriu um MikroTik <em>Hex RB750Gr3</em> para gerenciar sua rede interna. Você conecta esse dispositivo ao seu roteador de borda. Para configurar a comunicação, você estabelece um segmento de rede /30, por exemplo, 10.7.7.0/30. No roteador de borda, você configura o IP 10.7.7.1/30, e no seu Hex RB750Gr3, você configura o IP 10.7.7.2/30. Em seguida, você adiciona um gateway padrão com o IP 10.7.7.1 e configura na tabela de rotas o IP 250.250.250.250 em balckhole.</p>
<p>No roteador de borda, você cria uma rota estática com destino a 250.250.250.250 com gateway 10.7.7.2. Com isso, você estabelece um caminho direto para o seu IP público, mas sem responder a nenhuma solicitação de conexão externa.</p>
<p>Se você precisar acessar o dispositivo via Winbox, basta criar uma regra de redirecionamento (redirect) para essa porta específica, permitindo o acesso externo somente por ela. Usar um IP em &#8220;blackhole&#8221; é como ter um firewall que automaticamente descarta qualquer pacote não solicitado, proporcionando uma camada extra de segurança e eficiência.</p>
<h3>Exemplo acima ficaria da seguinte forma:</h3>
<p><strong>Borda</strong></p>
<pre class="remontti-code">
# Adicione o IP à interface que comunica com sua HE
/ip address add address=10.7.7.1/30 comment=&quot;WAN&quot; interface=ether1

# Cria rota estática dizendo que seu IP público está atrás do endereço &quot;tal&quot;
/ip route add comment=&quot;Rota_HEX&quot; dst-address=250.250.250.250/32 gateway=10.7.7.2
</pre>
<p><strong>Hex RB750Gr3</strong></p>
<pre class="remontti-code">
# Adicione o IP à interface que comunica com sua Borda
/ip address add address=10.7.7.2/30 comment=&quot;WAN&quot; interface=ether1

# Adiciona um gateway
/ip route add comment=&quot;Gateway&quot; dst-address=0.0.0.0/0 gateway=10.7.7.1

# Adiciona seu IP público em blackhole
/ip route add blackhole comment=&quot;Blackhole&quot; dst-address=250.250.250.250/32

# Redirect para winbox (Não use porta padrão para segurança, ex: 61000)
/ip firewall nat add action=redirect chain=dstnat comment=&quot;Winbox&quot; \
    dst-address=250.250.250.250 dst-port=61000 protocol=tcp to-ports=8291
</pre>
</p>
<h3>Configurando o Servidor OpenVPN</h3>
<p>Para a criação do servidor OpenVPN, será necessário gerar três certificados distintos. Seguem os passos detalhados:</p>
<p><strong>Crie o certificado CA (Certificado de Autoridade)</strong></p>
<p>Para iniciar, crie o certificado da Autoridade Certificadora (CA), que será a base da confiança dos certificados subsequentes:</p>
<pre class="remontti-code">/certificate add name=CA common-name=CA key-usage=crl-sign,key-cert-sign days-valid=36500</pre>
<p>Após criar o certificado CA, você deve assiná-lo. Substitua <strong>250.250.250.250</strong> pelo seu IP público:</p>
<pre class="remontti-code">/certificate sign CA ca-crl-host=250.250.250.250</pre>
<p><strong>Crie e assine o certificado SERVIDOR</strong></p>
<p>Este certificado será usado para autenticar o servidor durante as conexões:</p>
<pre class="remontti-code">/certificate add name=SERVIDOR common-name=SERVIDOR key-usage=digital-signature,key-encipherment,tls-server days-valid=36500
/certificate sign SERVIDOR ca=CA
/certificate set SERVIDOR trusted=yes</pre>
<p><strong>Crie e assine o certificado CLIENTE</strong></p>
<p>Em seguida, crie o certificado do cliente, que será utilizado pelos clientes para estabelecer uma conexão segura com o servidor:</p>
<pre class="remontti-code">/certificate add name=CLIENTE common-name=CLIENTE key-usage=tls-client days-valid=36500
/certificate sign CLIENTE ca=CA</pre>
<p><strong>Exportação dos certificados</strong></p>
<p>Por fim, exporte os certificados para arquivos PEM, o que facilitará a importação em diferentes clientes. Não se esqueça de substituir <strong>sup3s3nha0p3nvpn</strong> pela senha que protegerá o certificado do cliente:</p>
<pre class="remontti-code">/certificate export-certificate CA type=pem file-name=CA
/certificate export-certificate CLIENTE type=pem file-name=CLIENTE export-passphrase=sup3s3nha0p3nvpn</pre>
<p>Este processo garante que tanto o servidor quanto os clientes possam estabelecer uma conexão VPN segura através do uso de certificados confiáveis.</p>
<p>Irá ser criado 3 arquivos CA.crt, CLIENTE.crt e CLIENTE.key</p>
<pre class="remontti-code">/file print </pre>
<pre class="remontti-code-plain"> # NAME                             TYPE                                   SIZE CREATION-TIME       
 0 CA.crt                           .crt file                              1180 apr/12/2024 14:33:11
 1 CLIENTE.crt                      .crt file                              1143 apr/12/2024 14:33:16
 2 CLIENTE.key                      .key file                              1858 apr/12/2024 14:33:16</pre>
<p>Pelo menu FILE do winbox faça download do mesmo se você estiver utilizando a versão 6 do RouterOS, para versão 7 não é necessário baixar, pois o mesmo tem um gerador que iremos ver mais a frente.</p>
<p>Agora vamos as configurações que serão entregues ao cliente. Crie uma pool qual será entregue.</p>
<pre class="remontti-code">/ip pool 
add name=POOL_OpenVPN ranges=192.168.250.128/25</pre>
<p>Crie um o profile especifico para OPEN_VPN, no exemplo estou definindo também uma velocidade de 50MB de upload e download.</p>
<pre class="remontti-code">/ppp profile
add change-tcp-mss=yes local-address=192.168.250.1 name=OPEN_VPN rate-limit=50m/50m remote-address=POOL_OpenVPN use-encryption=yes</pre>
<p>Se você deseja ser notificado via Telegram sempre que alguém se conectar ao seu servidor VPN (algo que eu recomendo e costumo fazer), você pode facilmente configurar essa integração editando o perfil no servidor e incluindo um script para enviar alertas. Para isso, siga os passos abaixo:</p>
<p>1. Acesse o perfil do servidor VPN (<strong>OPEN_VPN</strong>) e localize a aba &#8220;Scripts&#8221;.<br />
2. Insira o script fornecido, substituindo `XXXXXXXXXXXXXXXXXXXXXX` pelo token do seu bot no Telegram, e `-10000000000` pelo ID do seu grupo ou usuário do Telegram.<br />
<strong># On Up:</strong></p>
<pre class="remontti-code">:local callerId $&quot;caller-id&quot;
/tool fetch url=&quot;https://api.telegram.org/botXXXXXXXXXXXXXXXXXXXXXX/sendMessage\?parse_mode=HTML&amp;chat_id=-10000000000&amp;text=%E2%9D%8E%20OpenVPN%20ON%20USUARIO:%20&lt;code&gt;$user&lt;/code&gt;%20ORIGEM:%20&lt;code&gt;$callerId&lt;/code&gt;&amp;disable_web_page_preview=true&quot; keep-result=no</pre>
<p><strong># On Down:</strong></p>
<pre class="remontti-code">
:local callerId $&quot;caller-id&quot;
/tool fetch url=&quot;https://api.telegram.org/botXXXXXXXXXXXXXXXXXXXXXX/sendMessage\?parse_mode=HTML&amp;chat_id=-10000000000&amp;text=%E2%9D%8C%20OpenVPN%20OFF%20USUARIO:%20&lt;code&gt;$user&lt;/code&gt;%20ORIGEM:%20&lt;code&gt;$callerId&lt;/code&gt;&amp;disable_web_page_preview=true&quot; keep-result=no</pre>
<p>Esse ajuste permitirá que você receba uma notificação imediata sempre que ocorrer uma conexão, aumentando o controle e a segurança da sua rede.</p>
<p>Faça uma <strong>regra de NAT </strong>(src-nat) para fornecer internet ao cliente, onde 250.250.250.250 é nosso querido IP que está em blackhole, e ether1 seria minha interface WAN (Upstream)</p>
<pre class="remontti-code">
/ip firewall nat
add action=src-nat chain=srcnat comment=&quot;NAT_OpenVPN&quot; out-interface=ether1 \
    src-address=192.168.250.128/25 to-addresses=250.250.250.250</pre>
<p>Iremos ativar o servidor OpenVPN agora, a porta padrão é a 1194, porem estarei adotando a boa pratica de utilizar outra como a 61194</p>
<pre class="remontti-code">/interface ovpn-server server
add name=open-vpn-server \
 auth=sha1 \
 certificate=SERVIDOR \
 cipher=aes256-cbc \
 default-profile=OPEN_VPN \
 require-client-certificate=yes \
 port=61194 \
 redirect-gateway=def1

/interface ovpn-server server print
/interface ovpn-server server enable 0
</pre>
<p><strong>Crie seus usuários</strong>, vou criar um de exemplo:</p>
<pre class="remontti-code">/ppp secret add comment=&quot;Key: sup3s3nha0p3nvpn&quot; name=remontti@remontti.vpn profile=OPEN_VPN service=ovpn password=su4senhAparaL0gar </pre>
<p>Você pode também utilizar os usuários via Radius, basta fazer a integração. Exemplo:</p>
<pre class="remontti-code">/ppp aaa set interim-update=5m use-radius=yes
/radius add address=10.10.10.10 secret=senha service=ppp</pre>
<p><strong>Na versão 7 </strong>do routerOS podemos criar nosso <em>arquivo.ovpn</em> direto pelo botão <strong>Export .ovpn </strong></p>
<p>Altere <strong>server-address</strong> para seu endereço de ip público.</p>
<pre class="remontti-code">/interface ovpn-server server export-client-configuration \
  server-address=250.250.250.250 \
  ca-certificate=CA.crt \
  client-certificate=CLIENTE.crt \
  client-cert-key=CLIENTE.key \
  server=open-vpn-server 
</pre>
<p>Se estiver utilizando o ip em blackhole vc precisa fazer o redirect para porta que irá utilizar ex.: &#8220;61194&#8221;</p>
<pre class="remontti-code">
/ip firewall nat add action=redirect chain=dstnat comment=&quot;OpenVPN&quot; \
    dst-address=250.250.250.250 dst-port=61194 protocol=tcp to-ports=61194
</pre>
<p>Veja os arquivos novamente.</p>
<pre class="remontti-code">/file print </pre>
<p>Perceba que temos agora um novo arquivo <strong>client1712413538.ovpn</strong>, faça donwload do mesmo e pule a próxima etapa da versão 6 direto para configuração do cliente OpenVPN.</p>
<pre class="remontti-code-plain">#  NAME                   TYPE        SIZE  CREATION-TIME      
0  CLIENTE.key            .key file   1858  2024-04-06 10:53:13
1  client1712413538.ovpn  .ovpn file  4393  2024-04-06 11:25:38
2  CLIENTE.crt            .crt file   1090  2024-04-06 10:53:13
3  CA.crt                 .crt file   1123  2024-04-06 10:53:07
</pre>
<h3>Cliente OpenVPN</h3>
<p>Acessando https://openvpn.net/client/ voce encontra cliente para <a href="https://openvpn.net/client/client-connect-vpn-for-windows/" rel="noopener" target="_blank">Windows</a>, <a href="https://openvpn.net/downloads/openvpn-connect-v3-macos.dmg" rel="noopener" target="_blank">MacOS</a>, <a href="https://openvpn.net/openvpn-client-for-linux/" rel="noopener" target="_blank">Linux</a>, <a href="https://play.google.com/store/apps/details?id=net.openvpn.openvpn" rel="noopener" target="_blank">Android</a>,  <a href="https://apps.apple.com/us/app/openvpn-connect-openvpn-app/id590379981" rel="noopener" target="_blank">iOS</a> e <a href="https://play.google.com/store/apps/details?id=net.openvpn.openvpn" rel="noopener" target="_blank">ChromeOS</a>.</p>
<p>Com o cliente instalado basta você importar o arquivo .ovpn e infomar seu usuário e senha, ao conectar pela primeira vez irá solicitar a chave do certificado. </p>
<p>No linux você pode configurar também automaticamente nas configurações de rede sem a necessidade de instalar nenhum programa.<br />
<img decoding="async" src="https://blog.remontti.com.br/wp-content/uploads/2024/04/debian-12-gnome-openvpn.png" alt="" width="1173" height="806" class="alignnone size-full wp-image-7929" srcset="https://blog.remontti.com.br/wp-content/uploads/2024/04/debian-12-gnome-openvpn.png 1173w, https://blog.remontti.com.br/wp-content/uploads/2024/04/debian-12-gnome-openvpn-300x206.png 300w, https://blog.remontti.com.br/wp-content/uploads/2024/04/debian-12-gnome-openvpn-1024x704.png 1024w, https://blog.remontti.com.br/wp-content/uploads/2024/04/debian-12-gnome-openvpn-768x528.png 768w" sizes="(max-width: 1173px) 100vw, 1173px" /></p>
<p>Gostou? Quer ajudar manter o blog? <img src="https://s.w.org/images/core/emoji/17.0.2/72x72/1f642.png" alt="🙂" class="wp-smiley" style="height: 1em; max-height: 1em;" /></p>
<p><strong>Se quiser fazer uma doação para o café ficarei muito feliz pelo seu reconhecimento!</strong><br />
<a href="https://blog.remontti.com.br/doar"><img decoding="async" src="https://blog.remontti.com.br/wp-content/uploads/2019/07/quero-doar-remontti.png" /></a></p>
<p>Se não puder doar pode deixar seu agradecimento nos comentário também ficarei feliz em saber que ajudei. Se tiver qualquer pergunta deixe-a também. Se preferir entrar em Contato <a href="https://blog.remontti.com.br/meucontato" rel="noopener noreferrer" target="_blank">clique aqui.</a></p>
<p>O post <a href="https://blog.remontti.com.br/7921">Configurando OpenVPN no RouterOS v7</a> apareceu primeiro em <a href="https://blog.remontti.com.br">Remontti</a>.</p>
]]></content:encoded>
					
					<wfw:commentRss>https://blog.remontti.com.br/7921/feed</wfw:commentRss>
			<slash:comments>10</slash:comments>
		
		
			</item>
		<item>
		<title>Guia Completo de Instalação e Configuração do GenieACS em Debian 12 Bookworm</title>
		<link>https://blog.remontti.com.br/7904</link>
					<comments>https://blog.remontti.com.br/7904#comments</comments>
		
		<dc:creator><![CDATA[Rudimar Remontti]]></dc:creator>
		<pubDate>Wed, 10 Apr 2024 15:18:40 +0000</pubDate>
				<category><![CDATA[Linux]]></category>
		<category><![CDATA[Tutoriais]]></category>
		<category><![CDATA[ACS (Sistema de Configuração Automática)]]></category>
		<category><![CDATA[Automação de Serviços]]></category>
		<category><![CDATA[configuração de rede]]></category>
		<category><![CDATA[Configuração do Node.js]]></category>
		<category><![CDATA[CWMP]]></category>
		<category><![CDATA[Debian 12]]></category>
		<category><![CDATA[GenieACS]]></category>
		<category><![CDATA[Gerenciamento de Dispositivos]]></category>
		<category><![CDATA[Gerenciamento de Firmware]]></category>
		<category><![CDATA[Instalação do MongoDB]]></category>
		<category><![CDATA[Monitoramento de CPE]]></category>
		<category><![CDATA[Protocolo de Gerenciamento WAN]]></category>
		<category><![CDATA[Segurança de Rede]]></category>
		<category><![CDATA[tr-069]]></category>
		<category><![CDATA[Tutorial Linux]]></category>
		<guid isPermaLink="false">https://blog.remontti.com.br/?p=7904</guid>

					<description><![CDATA[<p>Cliente TR-069 (Relatório Técnico 069) é uma implementação do CWMP (CPE WAN Management Protocol) para gerenciar dispositivos de usuários finais de forma centralizada. Este CWMP é executado em uma rede IP usando HTTP ou&#46;&#46;&#46;</p>
<p>O post <a href="https://blog.remontti.com.br/7904">Guia Completo de Instalação e Configuração do GenieACS em Debian 12 Bookworm</a> apareceu primeiro em <a href="https://blog.remontti.com.br">Remontti</a>.</p>
]]></description>
										<content:encoded><![CDATA[<p><img decoding="async" src="https://blog.remontti.com.br/wp-content/uploads/2024/04/genieacs-debian12.png" alt="" width="1792" height="838" class="alignnone size-full wp-image-7908" srcset="https://blog.remontti.com.br/wp-content/uploads/2024/04/genieacs-debian12.png 1792w, https://blog.remontti.com.br/wp-content/uploads/2024/04/genieacs-debian12-300x140.png 300w, https://blog.remontti.com.br/wp-content/uploads/2024/04/genieacs-debian12-1024x479.png 1024w, https://blog.remontti.com.br/wp-content/uploads/2024/04/genieacs-debian12-768x359.png 768w, https://blog.remontti.com.br/wp-content/uploads/2024/04/genieacs-debian12-1536x718.png 1536w" sizes="(max-width: 1792px) 100vw, 1792px" /><br />
Cliente TR-069 (Relatório Técnico 069) é uma implementação do CWMP (CPE WAN Management Protocol) para gerenciar dispositivos de usuários finais de forma centralizada. Este CWMP é executado em uma rede IP usando HTTP ou HTTPS para se comunicar com dispositivos ACS (Sistema de configuração automática), onde ACS é um sistema usado para monitorar, configurar e atualizar o firmware de dispositivos remotos.</p>
<p>Em geral, a função do TR-069 é mais amplamente usada em ISPs para gerenciamento de dispositivos do usuário final. Alguns dispositivos que estão atualmente começando a implementar as funções do TR-069, como FTTH CPE/ONT, WIMAX CPE, também podem ser usados ​​para monitoramento de VoIP ou CFTV. E no próprio MikroTik, a função Cliente TR-069 também foi adicionada a partir do RouterOS versão 6.38.</p>
<p><strong>Leitura recomendada:</strong><br />
<a href="https://blog.remontti.com.br/5848" rel="noopener" target="_blank"><strong>Configurando interface de rede no Debian</strong></a></p>
<h3>Requisitos Debian 12 Bookworm</h3>
<p><a href="https://blog.remontti.com.br/7236" rel="noopener" target="_blank">Instalação do Debian 12 Bookworm limpa passo-a-passo</a></p>
<h3>Melhorando o seu BASH</h3>
<p>Para melhorar seu bash e entender o comando a seguir, visite: Como melhorar a produtividade no seu Debian após a instalação</p>
<pre class="remontti-code"># apt -y install wget; wget remontti.com.br/debian; bash debian; su -</pre>
<h3>Repositório</h3>
<p>Adicione <strong>contrib non-free </strong>aos repositórios</p>
<pre class="remontti-code"># vim /etc/apt/sources.list</pre>
<p>Ajuste:</p>
<pre class="remontti-code-plain">
deb http://deb.debian.org/debian/ bookworm main non-free-firmware contrib non-free
deb-src http://deb.debian.org/debian/ bookworm main non-free-firmware contrib non-free

deb http://security.debian.org/debian-security bookworm-security main non-free-firmware contrib non-free
deb-src http://security.debian.org/debian-security bookworm-security main non-free-firmware contrib non-free

deb http://deb.debian.org/debian/ bookworm-updates main non-free-firmware contrib non-free
deb-src http://deb.debian.org/debian/ bookworm-updates main non-free-firmware contrib non-free
</pre>
<p>Atualize o repositório:</p>
<pre class="remontti-code"># apt update</pre>
<p>Se tiver algum pacote para atualização também faça:</p>
<pre class="remontti-code"># apt upgrade -y</pre>
<p>Instale os firmware-linux*</p>
<pre class="remontti-code"># apt install firmware-linux firmware-linux-free firmware-linux-nonfree -y</pre>
<p>Reinicie seu servidor para carregar os novos módulos do kernel</p>
<pre class="remontti-code"># reboot</pre>
<p>Pacotes requisitos</p>
<pre class="remontti-code"># apt -y install gnupg gnupg2 curl wget rsyslog</pre>
<h4>Repositório MongoDB</h3>
<pre class="remontti-code"># curl -fsSL https://www.mongodb.org/static/pgp/server-7.0.asc | \
 gpg -o /usr/share/keyrings/mongodb-server-7.0.gpg --dearmor

# echo &quot;deb [ signed-by=/usr/share/keyrings/mongodb-server-7.0.gpg ] \
 http://repo.mongodb.org/apt/debian bookworm/mongodb-org/7.0 main&quot; \
 &gt; /etc/apt/sources.list.d/mongodb-org-7.0.list</pre>
<p>Recarregue o repositório, e instale o MongoDB vamos</p>
<pre class="remontti-code"># apt update
# apt -y install mongodb-org </pre>
<p>Ative o serviço para iniciar com o boot, inicie o serviço e verifique se o mesmo iniciou com êxito. </p>
<pre class="remontti-code"># systemctl enable mongod
# systemctl start mongod
# systemctl status mongod</pre>
<h4>Node.js</h4>
<pre class="remontti-code"># apt -y install nodejs npm --no-install-recommends
# apt -y install node-mongodb</pre>
<h3>Instalação do GenieACS</h3>
<p>Procure se o pacote existe:</p>
<pre class="remontti-code"># npm search -g genieacs</pre>
<pre class="remontti-code-plain">
NAME                   | DESCRIPTION    | AUTHOR    | DATE       | VERSION | KEYWORDS       
genieacs               | A TR-069 Auto… | =zaidka   | 2024-03-28 | 1.2.12  | TR-069 CWMP ACS
@anlix-io/genieacs-sim | TR-069 client… | =anlix-io | 2024-01-15 | 1.14.0  | TR-069 CWMP ACS Simulator
genieacs-sim           | TR-069 client… | =zaidka   | 2017-02-05 | 0.9.0   | TR-069 CWMP ACS

</pre>
<p>Instale o genieacs</p>
<pre class="remontti-code"># npm install -g genieacs</pre>
<pre class="remontti-code-plain">
added 220 packages in 5s

18 packages are looking for funding
  run `npm fund` for details

</pre>
<p>Crie um usuário do sistema para executar daemons GenieACS</p>
<pre class="remontti-code"># useradd --system --no-create-home --user-group genieacs</pre>
<p>Crie um diretório para salvar extensões e arquivo de ambiente<br />
Usaremos o diretório /opt/genieacs/ext/ para armazenar scripts de extensão (se houver).</p>
<pre class="remontti-code"># mkdir /opt/genieacs
# mkdir /opt/genieacs/ext</pre>
<p>Crie o arquivo /opt/genieacs/genieacs.envpara que irá conter as opções de configuração, que passamos ao GenieACS como variáveis de ambiente. </p>
<pre class="remontti-code"># vim /opt/genieacs/genieacs.env</pre>
<p>Adicione:</p>
<pre class="remontti-code-plain">GENIEACS_CWMP_ACCESS_LOG_FILE=/var/log/genieacs/genieacs-cwmp-access.log
GENIEACS_NBI_ACCESS_LOG_FILE=/var/log/genieacs/genieacs-nbi-access.log
GENIEACS_FS_ACCESS_LOG_FILE=/var/log/genieacs/genieacs-fs-access.log
GENIEACS_UI_ACCESS_LOG_FILE=/var/log/genieacs/genieacs-ui-access.log
GENIEACS_DEBUG_FILE=/var/log/genieacs/genieacs-debug.yaml
NODE_OPTIONS=--enable-source-maps
GENIEACS_EXT_DIR=/opt/genieacs/ext</pre>
<p>Gere um segredo JWT seguro e anexe a /opt/genieacs/genieacs.env:</p>
<pre class="remontti-code"># node -e &quot;console.log(\&quot;GENIEACS_UI_JWT_SECRET=\&quot; + require(&#039;crypto&#039;).\
 randomBytes(128).toString(&#039;hex&#039;))&quot; \
 &gt;&gt; /opt/genieacs/genieacs.env</pre>
<p>Defina a propriedade e as permissões do arquivo:</p>
<pre class="remontti-code"># chown genieacs: /opt/genieacs -R
# chmod 600 /opt/genieacs/genieacs.env</pre>
<p>Criar diretório de logs</p>
<pre class="remontti-code"># mkdir /var/log/genieacs
# chown genieacs: /var/log/genieacs</pre>
<p>Configure os serviços no systemd</p>
<pre class="remontti-code"># systemctl edit --force --full genieacs-cwmp</pre>
<p>Adicione:</p>
<pre class="remontti-code-plain">
[Unit]
Description=GenieACS CWMP
After=network.target

[Service]
User=genieacs
EnvironmentFile=/opt/genieacs/genieacs.env
ExecStart=/usr/local/bin/genieacs-cwmp

[Install]
WantedBy=default.target
</pre>
<pre class="remontti-code"># systemctl edit --force --full genieacs-nbi</pre>
<p>Adicione:</p>
<pre class="remontti-code-plain">
[Unit]
Description=GenieACS NBI
After=network.target

[Service]
User=genieacs
EnvironmentFile=/opt/genieacs/genieacs.env
ExecStart=/usr/local/bin/genieacs-nbi

[Install]
WantedBy=default.target
</pre>
<pre class="remontti-code"># systemctl edit --force --full genieacs-fs</pre>
<p>Adicione:</p>
<pre class="remontti-code-plain">
[Unit]
Description=GenieACS FS
After=network.target

[Service]
User=genieacs
EnvironmentFile=/opt/genieacs/genieacs.env
ExecStart=/usr/local/bin/genieacs-fs

[Install]
WantedBy=default.target
</pre>
<pre class="remontti-code"># systemctl edit --force --full genieacs-ui</pre>
<p>Adicione:</p>
<pre class="remontti-code-plain">
[Unit]
Description=GenieACS UI
After=network.target

[Service]
User=genieacs
EnvironmentFile=/opt/genieacs/genieacs.env
ExecStart=/usr/local/bin/genieacs-ui

[Install]
WantedBy=default.target
</pre>
<p>Configure o logrotate para rotação dos log gerados</p>
<pre class="remontti-code"># vim /etc/logrotate.d/genieacs</pre>
<p>Adicione:</p>
<pre class="remontti-code-plain">
/var/log/genieacs/*.log /var/log/genieacs/*.yaml {
    daily
    rotate 30
    compress
    delaycompress
    dateext
}
</pre>
<p>Ative e inicie serviços, e revise a mensagem de status de cada um para verificar se os serviços estão sendo executados com êxito.</p>
<pre class="remontti-code"># systemctl daemon-reload
# systemctl enable genieacs-cwmp genieacs-nbi genieacs-fs genieacs-ui
# systemctl start genieacs-cwmp genieacs-nbi genieacs-fs genieacs-ui
# systemctl status genieacs-cwmp genieacs-nbi genieacs-fs genieacs-ui --no-pager</pre>
<pre class="remontti-code-plain">
● genieacs-cwmp.service - GenieACS CWMP
     Loaded: loaded (/etc/systemd/system/genieacs-cwmp.service; enabled; preset: enabled)
     Active: active (running) since Wed 2024-04-10 12:09:13 -03; 44s ago
   Main PID: 9695 (node)
      Tasks: 25 (limit: 4645)
     Memory: 101.1M
        CPU: 1.541s
     CGroup: /system.slice/genieacs-cwmp.service
             ├─9695 node /usr/local/bin/genieacs-cwmp
             ├─9725 /usr/bin/node /usr/local/bin/genieacs-cwmp
             └─9730 /usr/bin/node /usr/local/bin/genieacs-cwmp

abr 10 12:09:13 deb12-rr-flow systemd[1]: Started genieacs-cwmp.service - GenieACS CWMP.
abr 10 12:09:14 deb12-rr-flow genieacs-cwmp[9695]: 2024-04-10T15:09:14.701Z [INFO] genieacs-cwmp starting; …80f66&quot;
abr 10 12:09:16 deb12-rr-flow genieacs-cwmp[9695]: 2024-04-10T15:09:16.465Z [INFO] Worker listening; pid=97…t=7547
abr 10 12:09:16 deb12-rr-flow genieacs-cwmp[9695]: 2024-04-10T15:09:16.475Z [INFO] Worker listening; pid=97…t=7547

● genieacs-nbi.service - GenieACS NBI
     Loaded: loaded (/etc/systemd/system/genieacs-nbi.service; enabled; preset: enabled)
     Active: active (running) since Wed 2024-04-10 12:09:13 -03; 44s ago
   Main PID: 9696 (node)
      Tasks: 25 (limit: 4645)
     Memory: 98.5M
        CPU: 1.639s
     CGroup: /system.slice/genieacs-nbi.service
             ├─9696 node /usr/local/bin/genieacs-nbi
             ├─9731 /usr/bin/node /usr/local/bin/genieacs-nbi
             └─9737 /usr/bin/node /usr/local/bin/genieacs-nbi

abr 10 12:09:13 deb12-rr-flow systemd[1]: Started genieacs-nbi.service - GenieACS NBI.
abr 10 12:09:14 deb12-rr-flow genieacs-nbi[9696]: 2024-04-10T15:09:14.710Z [INFO] genieacs-nbi starting; pi…80f66&quot;
abr 10 12:09:16 deb12-rr-flow genieacs-nbi[9696]: 2024-04-10T15:09:16.497Z [INFO] Worker listening; pid=973…t=7557
abr 10 12:09:16 deb12-rr-flow genieacs-nbi[9696]: 2024-04-10T15:09:16.523Z [INFO] Worker listening; pid=973…t=7557

● genieacs-fs.service - GenieACS FS
     Loaded: loaded (/etc/systemd/system/genieacs-fs.service; enabled; preset: enabled)
     Active: active (running) since Wed 2024-04-10 12:09:13 -03; 44s ago
   Main PID: 9697 (node)
      Tasks: 25 (limit: 4645)
     Memory: 88.0M
        CPU: 1.561s
     CGroup: /system.slice/genieacs-fs.service
             ├─9697 node /usr/local/bin/genieacs-fs
             ├─9723 /usr/bin/node /usr/local/bin/genieacs-fs
             └─9724 /usr/bin/node /usr/local/bin/genieacs-fs

abr 10 12:09:13 deb12-rr-flow systemd[1]: Started genieacs-fs.service - GenieACS FS.
abr 10 12:09:14 deb12-rr-flow genieacs-fs[9697]: 2024-04-10T15:09:14.676Z [INFO] genieacs-fs starting; pid=…80f66&quot;
abr 10 12:09:16 deb12-rr-flow genieacs-fs[9697]: 2024-04-10T15:09:16.386Z [INFO] Worker listening; pid=9723…t=7567
abr 10 12:09:16 deb12-rr-flow genieacs-fs[9697]: 2024-04-10T15:09:16.497Z [INFO] Worker listening; pid=9724…t=7567

● genieacs-ui.service - GenieACS UI
     Loaded: loaded (/etc/systemd/system/genieacs-ui.service; enabled; preset: enabled)
     Active: active (running) since Wed 2024-04-10 12:09:13 -03; 44s ago
   Main PID: 9698 (node)
      Tasks: 25 (limit: 4645)
     Memory: 114.1M
        CPU: 2.003s
     CGroup: /system.slice/genieacs-ui.service
             ├─9698 node /usr/local/bin/genieacs-ui
             ├─9777 /usr/bin/node /usr/local/bin/genieacs-ui
             └─9778 /usr/bin/node /usr/local/bin/genieacs-ui

abr 10 12:09:13 deb12-rr-flow systemd[1]: Started genieacs-ui.service - GenieACS UI.
abr 10 12:09:15 deb12-rr-flow genieacs-ui[9698]: 2024-04-10T15:09:15.244Z [INFO] genieacs-ui starting; pid=…80f66&quot;
abr 10 12:09:16 deb12-rr-flow genieacs-ui[9698]: 2024-04-10T15:09:16.757Z [INFO] Worker listening; pid=9777…t=3000
abr 10 12:09:16 deb12-rr-flow genieacs-ui[9698]: 2024-04-10T15:09:16.763Z [INFO] Worker listening; pid=9778…t=3000
Hint: Some lines were ellipsized, use -l to show in full.

</pre>
<p>Acesse em seu navegador: <strong>http://IP:3000 </strong></p>
<p>Clique em: <strong>ABRACADABRA! </strong><br />
<img loading="lazy" decoding="async" src="https://blog.remontti.com.br/wp-content/uploads/2021/10/genieacs_debian_11_1.png" alt="" width="1194" height="446" class="alignnone size-full wp-image-6003" srcset="https://blog.remontti.com.br/wp-content/uploads/2021/10/genieacs_debian_11_1.png 1194w, https://blog.remontti.com.br/wp-content/uploads/2021/10/genieacs_debian_11_1-300x112.png 300w, https://blog.remontti.com.br/wp-content/uploads/2021/10/genieacs_debian_11_1-1024x382.png 1024w, https://blog.remontti.com.br/wp-content/uploads/2021/10/genieacs_debian_11_1-768x287.png 768w" sizes="auto, (max-width: 1194px) 100vw, 1194px" /></p>
<p>Clique em: <strong>Open Sesame!</strong><br />
<img loading="lazy" decoding="async" src="https://blog.remontti.com.br/wp-content/uploads/2021/10/genieacs_debian_11_2.png" alt="" width="1194" height="446" class="alignnone size-full wp-image-6004" srcset="https://blog.remontti.com.br/wp-content/uploads/2021/10/genieacs_debian_11_2.png 1194w, https://blog.remontti.com.br/wp-content/uploads/2021/10/genieacs_debian_11_2-300x112.png 300w, https://blog.remontti.com.br/wp-content/uploads/2021/10/genieacs_debian_11_2-1024x382.png 1024w, https://blog.remontti.com.br/wp-content/uploads/2021/10/genieacs_debian_11_2-768x287.png 768w" sizes="auto, (max-width: 1194px) 100vw, 1194px" /></p>
<p>Entre com: <strong>admin/admin</strong><br />
<img loading="lazy" decoding="async" src="https://blog.remontti.com.br/wp-content/uploads/2021/10/genieacs_debian_11_3.png" alt="" width="1194" height="386" class="alignnone size-full wp-image-6005" srcset="https://blog.remontti.com.br/wp-content/uploads/2021/10/genieacs_debian_11_3.png 1194w, https://blog.remontti.com.br/wp-content/uploads/2021/10/genieacs_debian_11_3-300x97.png 300w, https://blog.remontti.com.br/wp-content/uploads/2021/10/genieacs_debian_11_3-1024x331.png 1024w, https://blog.remontti.com.br/wp-content/uploads/2021/10/genieacs_debian_11_3-768x248.png 768w" sizes="auto, (max-width: 1194px) 100vw, 1194px" /></p>
<p><img loading="lazy" decoding="async" src="https://blog.remontti.com.br/wp-content/uploads/2021/10/genieacs_debian_11_4.png" alt="" width="1194" height="483" class="alignnone size-full wp-image-6006" srcset="https://blog.remontti.com.br/wp-content/uploads/2021/10/genieacs_debian_11_4.png 1194w, https://blog.remontti.com.br/wp-content/uploads/2021/10/genieacs_debian_11_4-300x121.png 300w, https://blog.remontti.com.br/wp-content/uploads/2021/10/genieacs_debian_11_4-1024x414.png 1024w, https://blog.remontti.com.br/wp-content/uploads/2021/10/genieacs_debian_11_4-768x311.png 768w" sizes="auto, (max-width: 1194px) 100vw, 1194px" /></p>
<p>Grupo do telegram: <strong><a href="https://t.me/acsbrasil" rel="noopener" target="_blank">ACS/CWMP &#8211; TR069 &#8211; Brasil (PT-Br)</a></strong></p>
<p>Gostou? Quer ajudar manter o blog? <img src="https://s.w.org/images/core/emoji/17.0.2/72x72/1f642.png" alt="🙂" class="wp-smiley" style="height: 1em; max-height: 1em;" /></p>
<p><strong>Se quiser fazer uma doação para o café ficarei muito feliz pelo seu reconhecimento!</strong><br />
<a href="https://blog.remontti.com.br/doar"><img decoding="async" src="https://blog.remontti.com.br/wp-content/uploads/2019/07/quero-doar-remontti.png" /></a></p>
<p>Se não puder doar pode deixar seu agradecimento nos comentário também ficarei feliz em saber que ajudei. Se tiver qualquer pergunta deixe-a também. Se preferir entrar em Contato <a href="https://blog.remontti.com.br/meucontato" rel="noopener noreferrer" target="_blank">clique aqui.</a></p>
<p>Fonte: <a href="https://genieacs.com/" rel="noopener" target="_blank">https://genieacs.com/</a></p>
<p>O post <a href="https://blog.remontti.com.br/7904">Guia Completo de Instalação e Configuração do GenieACS em Debian 12 Bookworm</a> apareceu primeiro em <a href="https://blog.remontti.com.br">Remontti</a>.</p>
]]></content:encoded>
					
					<wfw:commentRss>https://blog.remontti.com.br/7904/feed</wfw:commentRss>
			<slash:comments>18</slash:comments>
		
		
			</item>
		<item>
		<title>Instalação do Nginx Proxy Manager</title>
		<link>https://blog.remontti.com.br/6561</link>
					<comments>https://blog.remontti.com.br/6561#comments</comments>
		
		<dc:creator><![CDATA[Rudimar Remontti]]></dc:creator>
		<pubDate>Sat, 18 Jun 2022 19:07:54 +0000</pubDate>
				<category><![CDATA[Linux]]></category>
		<category><![CDATA[Tutoriais]]></category>
		<category><![CDATA[administração web]]></category>
		<category><![CDATA[apache]]></category>
		<category><![CDATA[autenticação HTTP]]></category>
		<category><![CDATA[cgnat]]></category>
		<category><![CDATA[configuração de rede]]></category>
		<category><![CDATA[debian]]></category>
		<category><![CDATA[debian 11]]></category>
		<category><![CDATA[Debian 12]]></category>
		<category><![CDATA[Debian 12 Bookworm]]></category>
		<category><![CDATA[docker]]></category>
		<category><![CDATA[Docker Compose]]></category>
		<category><![CDATA[gerenciamento de certificados]]></category>
		<category><![CDATA[instalação de software]]></category>
		<category><![CDATA[letsencrypt]]></category>
		<category><![CDATA[nginx]]></category>
		<category><![CDATA[Nginx Proxy Manager]]></category>
		<category><![CDATA[otimização de servidor]]></category>
		<category><![CDATA[proxy reverso]]></category>
		<category><![CDATA[proxy-cache]]></category>
		<category><![CDATA[segurança de aplicação]]></category>
		<category><![CDATA[SSL grátis]]></category>
		<category><![CDATA[tutorial de tecnologia]]></category>
		<category><![CDATA[webserver]]></category>
		<guid isPermaLink="false">https://blog.remontti.com.br/?p=6561</guid>

					<description><![CDATA[<p>O que é o Nginx Proxy Manager? É um sistema que possui uma interface web limpa, eficiente e fácil de configurar, sem precisar saber muito sobre Nginx ou Letsencrypt. Característica &#8211; Interface de administração&#46;&#46;&#46;</p>
<p>O post <a href="https://blog.remontti.com.br/6561">Instalação do Nginx Proxy Manager</a> apareceu primeiro em <a href="https://blog.remontti.com.br">Remontti</a>.</p>
]]></description>
										<content:encoded><![CDATA[<p><img loading="lazy" decoding="async" src="https://blog.remontti.com.br/wp-content/uploads/2022/06/nginx_proxy_manager_cover.png" alt="" width="720" height="340" class="alignnone size-full wp-image-6588" srcset="https://blog.remontti.com.br/wp-content/uploads/2022/06/nginx_proxy_manager_cover.png 720w, https://blog.remontti.com.br/wp-content/uploads/2022/06/nginx_proxy_manager_cover-300x142.png 300w, https://blog.remontti.com.br/wp-content/uploads/2022/06/nginx_proxy_manager_cover-520x245.png 520w" sizes="auto, (max-width: 720px) 100vw, 720px" /></p>
<p>O que é o <a href="https://nginxproxymanager.com/guide/#project-goal"><strong>Nginx Proxy Manager</strong></a>?<br />
É um sistema que possui uma interface web limpa, eficiente e fácil de configurar, sem precisar saber muito sobre Nginx ou Letsencrypt.</p>
<p><b>Característica</b><br />
 &#8211; Interface de administração bonita e segura baseada<br />
 &#8211; Crie facilmente domínios de encaminhamento, redirecionamentos, streams e hosts 404 sem saber nada sobre Nginx<br />
 &#8211; SSL grátis usando Let&#8217;s Encrypt ou forneça seus próprios certificados SSL personalizados<br />
 &#8211; Listas de acesso e autenticação HTTP básica para seus hosts<br />
 &#8211; Configuração avançada do Nginx disponível para superusuários<br />
 &#8211; Gerenciamento de usuários, permissões e log de auditoria</p>
<p><strong>Distribuição testadas:</strong><br />
<a href="https://blog.remontti.com.br/7236" rel="noopener" target="_blank">Debian 12 Bookworm</a><br />
<a href="https://blog.remontti.com.br/5792" rel="noopener" target="_blank"><del datetime="2024-08-23T13:04:44+00:00">Debian 11 Bullseye</del></a></p>
<p><a href="https://blog.remontti.com.br/5867" rel="noopener" target="_blank">Como melhorar a produtividade no seu Debian após instalação</a> (Recomendado)</p>
<p><strong>Porta Utilizadas</strong><br />
81  &#8211; Porta de administração do Nginx Proxy Manager<br />
80  &#8211; Porta HTTP pública<br />
443 &#8211; Porta HTTP pública</p>
<h4>Configurações de interface de Rede</h4>
<p>Para a configuração da interface de rede vou usar uma configuração <strong>Pointopoint</strong> (Ponto a ponto) assim utilizando de apenas um endereço IP público, você pode (deve) <a href="https://blog.remontti.com.br/5848" rel="noopener" target="_blank">ler este tutorial</a> para conhecer varias possibilidades de configuração de rede pensa em como economizar endereços IPs.</p>
<pre class="remontti-code"># vim /etc/network/interfaces</pre>
<p>No meu exemplo vamos pesar que esse servidor esteja conectado ao RouterOS/Mikrotik ether2 e meu endereço de IP publico será o <em>200.200.200.255</em></p>
<pre class="remontti-code-plain">allow-hotplug enp0s3
iface enp0s3 inet static
        address 200.200.200.255
        pointopoint 192.168.171.171
        netmask 255.255.255.255
        gateway 192.168.171.171
</pre>
<p>Agora no seu RouterOS vamos criar nosso Pointopoint gatewai 192.168.171.171 tendo como network o endereço IP público.</p>
<pre class="remontti-code-plain">RouterOS# /ip address
RouterOS# add address=192.168.171.171 comment=Pointopoint interface=ether2 network=200.200.200.255</pre>
<p>Se você não tem IP publico para colocar em seu servidor, então fixe um endereço IP Privado e redirecione as potas 80,81 e 443 para ele, utilizando seu IP público que está em seu router. Exemplo:</p>
<pre class="remontti-code-plain">allow-hotplug enp0s3
iface enp0s3 inet static
        address 10.10.10.2/24
        gateway 10.10.10.1</pre>
<p>E é clario se você conter endereço IPv6, não deixe de configurar sua placa! Exemplo:</p>
<pre class="remontti-code-plain">iface enp0s3 inet6 static
        pre-up modprobe ipv6
        address 2804:bebe:cafe::2
        netmask 64
        gateway 2804:bebe:cafe::1</pre>
<h4>Instalação Docker</h4>
<p>Iremos instalar os pacotes necessários, bem como adicionar o repositório oficial do Docker</p>
<pre class="remontti-code"># apt install ca-certificates curl gnupg2 apt-transport-https lsb-release
# curl -fsSL https://download.docker.com/linux/debian/gpg | apt-key add -
# echo &quot;deb https://download.docker.com/linux/debian $(lsb_release -cs) stable&quot; &gt; /etc/apt/sources.list.d/docker.list</pre>
<p>Atualize o repositório e instale-o</p>
<pre class="remontti-code"># apt update
# apt install docker-ce docker-ce-cli containerd.io</pre>
<h4>Instalação Docker Compose</h4>
<p>Vamos fazer download do Docker Compose, e adicionar aos binários do nosso servidor como um executável. </p>
<pre class="remontti-code"># curl -L &quot;https://github.com/docker/compose/releases/download/v2.24.5/docker-compose-$(uname -s)-$(uname -m)&quot; -o /usr/local/bin/docker-compose
# chmod +x /usr/local/bin/docker-compose
# ln -s /usr/local/bin/docker-compose /usr/bin/docker-compose</pre>
<p>Versão baixada foi a 2.24.5, mas você pode consultar uma mais recente em: <a href="https://github.com/docker/compose/releases/" rel="noopener" target="_blank">https://github.com/docker/compose/releases/</a>, para verificar qual versão instalado use:</p>
<pre class="remontti-code"># docker-compose --version</pre>
<pre class="remontti-code-plain">Docker Compose version v2.24.5</pre>
<h4>Instação Nginx Proxy Manager</h4>
<p>Crie os diretórios quais ficarão todas as configurações:</p>
<pre class="remontti-code"># mkdir /etc/nginx-proxy
# mkdir /etc/nginx-proxy/{data,letsencrypt}</pre>
<p>Crie seu arquivo de composição do Docker com as configuração, para realizar a instalação dos containers do Nginx Proxy Manager e MariaDB com o Docker Compose. (Ajustes as senhas)</p>
<pre class="remontti-code"># vim /etc/nginx-proxy/docker-compose.yml</pre>
<p>Adicione:</p>
<pre class="remontti-code-plain">version: &quot;3&quot;
services:
  app:
    image: &#039;jc21/nginx-proxy-manager:latest&#039;
    restart: unless-stopped
    ports:
      # These ports are in format &lt;host-port&gt;:&lt;container-port&gt;
      - &#039;80:80&#039;       # Porta HTTP pública
      - &#039;443:443&#039;     # Porta HTTPS pública
      - &#039;81:81&#039; # Porta de administracao do Nginx Proxy
      # Adicione qualquer outra porta Stream que você queira expor, ex
      # - &#039;21:21&#039; # FTP
    environment:
      DB_MYSQL_HOST: &quot;db&quot;
      DB_MYSQL_PORT: 3306
      DB_MYSQL_USER: &quot;nginxproxy&quot;
      DB_MYSQL_PASSWORD: &quot;S3NHA_NGINX_PR0XY&quot;
      DB_MYSQL_NAME: &quot;nginxproxy&quot;
      # Remova o comentário se você não tem o IPv6 em seu host
      # DISABLE_IPV6: &#039;true&#039;
    volumes:
      - ./data:/data
      - ./letsencrypt:/etc/letsencrypt
    depends_on:
      - db

  db:
    image: &#039;jc21/mariadb-aria:latest&#039;
    restart: unless-stopped
    environment:
      MYSQL_ROOT_PASSWORD: &#039;S3NHA_D3_R00T&#039;
      MYSQL_DATABASE: &#039;nginxproxy&#039;
      MYSQL_USER: &#039;nginxproxy&#039;
      MYSQL_PASSWORD: &#039;S3NHA_NGINX_PR0XY&#039;
    volumes:
      - ./mysql:/var/lib/mysql</pre>
<p>Execute o comando Docker Compose</p>
<pre class="remontti-code"># cd /etc/nginx-proxy
# docker-compose up -d</pre>
<p>Aguarde finalizar&#8230; em seguida visualize se os containers que foram criados</p>
<pre class="remontti-code"># docker ps -a</pre>
<pre class="remontti-code-plain">
CONTAINER ID   IMAGE                             COMMAND             CREATED          STATUS         PORTS                                                                                  NAMES
6b796a07af22   jc21/nginx-proxy-manager:latest   &quot;/init&quot;             9 seconds ago    Up 7 seconds   0.0.0.0:80-81-&gt;80-81/tcp, :::80-81-&gt;80-81/tcp, 0.0.0.0:443-&gt;443/tcp, :::443-&gt;443/tcp   nginx-proxy-app-1
4c93d3b8a544   jc21/mariadb-aria:latest          &quot;/scripts/run.sh&quot;   13 seconds ago   Up 8 seconds   3306/tcp                                                                               nginx-proxy-db-1
</pre>
<p>Abra em navegador <strong>http://IP_SERVIDOR/</strong> se tudo ocorreu bem você verá:<br />
<img loading="lazy" decoding="async" src="https://blog.remontti.com.br/wp-content/uploads/2022/06/nginx_proxy_manager_1.png" alt="" width="1274" height="666" class="alignnone size-full wp-image-6566" srcset="https://blog.remontti.com.br/wp-content/uploads/2022/06/nginx_proxy_manager_1.png 1274w, https://blog.remontti.com.br/wp-content/uploads/2022/06/nginx_proxy_manager_1-300x157.png 300w, https://blog.remontti.com.br/wp-content/uploads/2022/06/nginx_proxy_manager_1-1024x535.png 1024w, https://blog.remontti.com.br/wp-content/uploads/2022/06/nginx_proxy_manager_1-768x401.png 768w" sizes="auto, (max-width: 1274px) 100vw, 1274px" /></p>
<p>Agora abra na porta 81 <strong>http://IP_SERVIDOR:81/</strong> e entre com:</p>
<pre class="remontti-code-plain">Email: admin@example.com 
Password: changeme</pre>
<p><img loading="lazy" decoding="async" src="https://blog.remontti.com.br/wp-content/uploads/2022/06/nginx_proxy_manager_2a.png" alt="" width="1255" height="661" class="alignnone size-full wp-image-6576" srcset="https://blog.remontti.com.br/wp-content/uploads/2022/06/nginx_proxy_manager_2a.png 1255w, https://blog.remontti.com.br/wp-content/uploads/2022/06/nginx_proxy_manager_2a-300x158.png 300w, https://blog.remontti.com.br/wp-content/uploads/2022/06/nginx_proxy_manager_2a-1024x539.png 1024w, https://blog.remontti.com.br/wp-content/uploads/2022/06/nginx_proxy_manager_2a-768x405.png 768w" sizes="auto, (max-width: 1255px) 100vw, 1255px" /><br />
Ao entrar pela primeira vez um formulário com informações será exibido para você alterar seus dados, <strong>altere seus e-mail e senha</strong>.<br />
<img loading="lazy" decoding="async" src="https://blog.remontti.com.br/wp-content/uploads/2022/06/nginx_proxy_manager_3_a.png" alt="" width="1257" height="664" class="alignnone size-full wp-image-6575" srcset="https://blog.remontti.com.br/wp-content/uploads/2022/06/nginx_proxy_manager_3_a.png 1257w, https://blog.remontti.com.br/wp-content/uploads/2022/06/nginx_proxy_manager_3_a-300x158.png 300w, https://blog.remontti.com.br/wp-content/uploads/2022/06/nginx_proxy_manager_3_a-1024x541.png 1024w, https://blog.remontti.com.br/wp-content/uploads/2022/06/nginx_proxy_manager_3_a-768x406.png 768w" sizes="auto, (max-width: 1257px) 100vw, 1257px" /></p>
<h4>Configurações de DNS Autoritativa</h4>
<p>Para que possamos encaminhar os acessos iremos necessitar configurar um subdomínios para cada situação em nosso servidor <a href="https://blog.remontti.com.br/5958" rel="noopener" target="_blank">DNS autoritativo</a>. </p>
<p>Vamos criar um cenário fictício para ilustrar melhor. Temos 1 clientes recebendo IPs privados da classe de um CGNAT, e o mesmo solicita um redirecionamento de portas para seu DVR. O cliente recebe o endereço IP privado 100.64.0.71 (Fixado) seu DVR esta na porta 80 na rede local 192.168.0.7. Para cada situação irei criar um novo subdomínio, exemplo &#8220;dvrudi&#8221; no servidor DNS autoritativo apontando para o IP Público do seu servidor Nginx Proxy, assim eu acesso <em>&#8220;dvrudi.remontti.com.br&#8221;</em>. Agora ao acessar o roteato e criar o redirecionamento provavelmente não iremos poder usar a porta 80, pois ela já é a porta de acesso do roteador 100.64.0.71, e é bem possível que você tenha fechado ela em seu firewall também para se proteger de ataques, neste caso use outra porta exemplos 60080 para fazer o direcionamento para a porta 80 do DVR, o cliente nem precisa saber desta porta 60080 ela é a penas a porta de entrada do Nginx Proxy. Agora volte ao Admin do NPM, no menu <strong>Hosts</strong> >> <strong>Proxy Hosts</strong> >> <strong>Add Proxy Host</strong><br />
<img loading="lazy" decoding="async" src="https://blog.remontti.com.br/wp-content/uploads/2022/06/nginx_proxy_manager_4_a.png" alt="" width="1256" height="593" class="alignnone size-full wp-image-6571" srcset="https://blog.remontti.com.br/wp-content/uploads/2022/06/nginx_proxy_manager_4_a.png 1256w, https://blog.remontti.com.br/wp-content/uploads/2022/06/nginx_proxy_manager_4_a-300x142.png 300w, https://blog.remontti.com.br/wp-content/uploads/2022/06/nginx_proxy_manager_4_a-1024x483.png 1024w, https://blog.remontti.com.br/wp-content/uploads/2022/06/nginx_proxy_manager_4_a-768x363.png 768w, https://blog.remontti.com.br/wp-content/uploads/2022/06/nginx_proxy_manager_4_a-520x245.png 520w, https://blog.remontti.com.br/wp-content/uploads/2022/06/nginx_proxy_manager_4_a-720x340.png 720w" sizes="auto, (max-width: 1256px) 100vw, 1256px" /></p>
<p><img loading="lazy" decoding="async" src="https://blog.remontti.com.br/wp-content/uploads/2022/06/nginx_proxy_manager_6.png" alt="" width="1257" height="449" class="alignnone size-full wp-image-6577" srcset="https://blog.remontti.com.br/wp-content/uploads/2022/06/nginx_proxy_manager_6.png 1257w, https://blog.remontti.com.br/wp-content/uploads/2022/06/nginx_proxy_manager_6-300x107.png 300w, https://blog.remontti.com.br/wp-content/uploads/2022/06/nginx_proxy_manager_6-1024x366.png 1024w, https://blog.remontti.com.br/wp-content/uploads/2022/06/nginx_proxy_manager_6-768x274.png 768w" sizes="auto, (max-width: 1257px) 100vw, 1257px" /></p>
<p>Se desejar pode ativar certificado grátis com Lets Encrypt.<br />
<img loading="lazy" decoding="async" src="https://blog.remontti.com.br/wp-content/uploads/2022/06/nginx_proxy_manager_5_a.png" alt="" width="1253" height="595" class="alignnone size-full wp-image-6572" srcset="https://blog.remontti.com.br/wp-content/uploads/2022/06/nginx_proxy_manager_5_a.png 1253w, https://blog.remontti.com.br/wp-content/uploads/2022/06/nginx_proxy_manager_5_a-300x142.png 300w, https://blog.remontti.com.br/wp-content/uploads/2022/06/nginx_proxy_manager_5_a-1024x486.png 1024w, https://blog.remontti.com.br/wp-content/uploads/2022/06/nginx_proxy_manager_5_a-768x365.png 768w" sizes="auto, (max-width: 1253px) 100vw, 1253px" /></p>
<p>Agora ao acessar <em>&#8220;dvrudi.remontti.com.br&#8221;</em> ele estará acessando diretamente o DVR. #clientefeliz</p>
<p>Legal não? Agora você pode ter um painel administrativo para redirecionamento de serviços web, no exemplo sitei o caso de CGNAT, mas você pode usar para qualquer outra situação, bem como até apontar para um subdiretório, e restringir o acesso do mesmo, sabe esses ERP <del datetime="2022-06-18T18:45:32+00:00">porco</del> que você acessar com /admin, daria para restringir. Bom o painel do NPM é bem intuitivo, para quem já conhece o Nginx sabe das suas enumeras possibilidades vai achar um doce.</p>
<h4>Atualizando do NPM</h4>
<pre class="remontti-code"># cd /etc/nginx-proxy/
# docker-compose down
# docker-compose pull
# docker-compose up -d</pre>
<p><strong>Gostou? Se quiser apoiar o blog e fazer uma doação para o café ficarei muito feliz pelo seu reconhecimento!</strong><br />
<a href="https://blog.remontti.com.br/doar"><img decoding="async" src="https://blog.remontti.com.br/wp-content/uploads/2019/07/quero-doar-remontti.png" /></a></p>
<p>Se não puder doar pode deixar seu agradecimento nos comentário também ficarei feliz em saber que ajudei. Se tiver qualquer pergunta deixe-a também. Se preferir entrar em Contato <a href="https://blog.remontti.com.br/meucontato" rel="noopener noreferrer" target="_blank">clique aqui.</a></p>
<p>Abraço!</p>
<p><img loading="lazy" decoding="async" src="https://blog.remontti.com.br/wp-content/uploads/2022/06/nginx_proxy_manager.png" alt="" width="261" height="90" class="alignnone size-full wp-image-6583" /><br />
<strong>Fonte: </strong><br />
<a href="https://nginxproxymanager.com/guide/" rel="noopener" target="_blank">https://nginxproxymanager.com/guide/</a><br />
<a href="https://github.com/NginxProxyManager/nginx-proxy-manager" rel="noopener" target="_blank">https://github.com/NginxProxyManager/nginx-proxy-manager</a></p>
<p>O post <a href="https://blog.remontti.com.br/6561">Instalação do Nginx Proxy Manager</a> apareceu primeiro em <a href="https://blog.remontti.com.br">Remontti</a>.</p>
]]></content:encoded>
					
					<wfw:commentRss>https://blog.remontti.com.br/6561/feed</wfw:commentRss>
			<slash:comments>6</slash:comments>
		
		
			</item>
		<item>
		<title>Configurando interface de rede no Debian 10/11/12/13</title>
		<link>https://blog.remontti.com.br/5848</link>
					<comments>https://blog.remontti.com.br/5848#comments</comments>
		
		<dc:creator><![CDATA[Rudimar Remontti]]></dc:creator>
		<pubDate>Sat, 18 Sep 2021 20:14:42 +0000</pubDate>
				<category><![CDATA[Dicas]]></category>
		<category><![CDATA[Linux]]></category>
		<category><![CDATA[Mikrotik]]></category>
		<category><![CDATA[Tutoriais]]></category>
		<category><![CDATA[Active-backup]]></category>
		<category><![CDATA[Administração de Rede]]></category>
		<category><![CDATA[Administração de Sistemas]]></category>
		<category><![CDATA[Administração de Sistemas Linux]]></category>
		<category><![CDATA[Agregação de Portas]]></category>
		<category><![CDATA[Alta Disponibilidade]]></category>
		<category><![CDATA[Balance-alb]]></category>
		<category><![CDATA[Balance-rr]]></category>
		<category><![CDATA[Balance-tlb]]></category>
		<category><![CDATA[Balance-xor]]></category>
		<category><![CDATA[Bonding]]></category>
		<category><![CDATA[Bullseye]]></category>
		<category><![CDATA[buster]]></category>
		<category><![CDATA[CLI Linux]]></category>
		<category><![CDATA[configuração de rede]]></category>
		<category><![CDATA[debian]]></category>
		<category><![CDATA[Ethernet]]></category>
		<category><![CDATA[Gerenciamento de Servidor]]></category>
		<category><![CDATA[ifenslave]]></category>
		<category><![CDATA[LACP]]></category>
		<category><![CDATA[Linux Networking]]></category>
		<category><![CDATA[Otimização de Rede]]></category>
		<category><![CDATA[placa]]></category>
		<category><![CDATA[Protocolos de Rede]]></category>
		<category><![CDATA[rede]]></category>
		<category><![CDATA[Redundância de Rede]]></category>
		<category><![CDATA[routeros]]></category>
		<category><![CDATA[Segurança de Rede]]></category>
		<category><![CDATA[Soluções de Networking]]></category>
		<category><![CDATA[Stretch]]></category>
		<guid isPermaLink="false">https://blog.remontti.com.br/?p=5848</guid>

					<description><![CDATA[<p>Neste tutorial vamos aprender a configurar nossas interfaces de rede no Debian e estar pensando um pouco mais para fazer uma boa escolha na hora de realizar suas configurações. Antes de mais nada você&#46;&#46;&#46;</p>
<p>O post <a href="https://blog.remontti.com.br/5848">Configurando interface de rede no Debian 10/11/12/13</a> apareceu primeiro em <a href="https://blog.remontti.com.br">Remontti</a>.</p>
]]></description>
										<content:encoded><![CDATA[<p><img loading="lazy" decoding="async" class="alignnone size-full wp-image-7830" src="https://blog.remontti.com.br/wp-content/uploads/2021/09/debian_network_config.webp" alt="" width="1792" height="1024" srcset="https://blog.remontti.com.br/wp-content/uploads/2021/09/debian_network_config.webp 1792w, https://blog.remontti.com.br/wp-content/uploads/2021/09/debian_network_config-300x171.webp 300w, https://blog.remontti.com.br/wp-content/uploads/2021/09/debian_network_config-1024x585.webp 1024w, https://blog.remontti.com.br/wp-content/uploads/2021/09/debian_network_config-768x439.webp 768w, https://blog.remontti.com.br/wp-content/uploads/2021/09/debian_network_config-1536x878.webp 1536w" sizes="auto, (max-width: 1792px) 100vw, 1792px" /></p>
<p>Neste tutorial vamos aprender a configurar nossas interfaces de rede no Debian e estar pensando um pouco mais para fazer uma boa escolha na hora de realizar suas configurações.</p>
<p>Antes de mais nada você precisa saber o que você quer!? Qual será o cenário!? Vejo muitas pessoas cometerem um desastre nos dias hoje quando se trata em colocar um simples IP público em um servidor. E por isso escrevo este &#8220;artigo&#8221; meio que tutorial.</p>
<p>No Debian você pode configurar os endereços IPs bem como algumas regras no arquivo <strong>/etc/network/interfaces</strong>, irei levar como base uma instalação recém-feita:</p>
<p>&#8211; <a href="https://blog.remontti.com.br/8267" target="_blank" rel="noopener">Instalação do Debian 13 Trixie</a><br />
&#8211; <a href="https://blog.remontti.com.br/7236" target="_blank" rel="noopener">Instalação do Debian 12 Bookworm</a><br />
&#8211; <a href="https://blog.remontti.com.br/5792" target="_blank" rel="noopener">Instalação do Debian 11 Bullseye</a><br />
&#8211; <a href="https://blog.remontti.com.br/2966" target="_blank" rel="noopener">Instalação do Debian 10 Buster</a></p>
<p>Irei usar o editor nano que é o que já vem instalado, mas você pode usar o editor de sua escolha.</p>
<pre class="remontti-code"># nano /etc/network/interfaces</pre>
<p>Se em sua instalação você informou o endereço IPv4 seu arquivo será algo como este, ressaltando que <strong>ens18</strong> é o nome da interface, e ela pode ser outra.</p>
<pre class="remontti-code"># This file describes the network interfaces available on your system
# and how to activate them. For more information, see interfaces(5).

source /etc/network/interfaces.d/*

# The loopback network interface
auto lo
iface lo inet loopback

# The primary network interface
allow-hotplug ens18
iface ens18 inet static
        address 192.168.87.3/24
        gateway 192.168.87.1
        # dns-* options are implemented by the resolvconf package, if installed
        dns-nameservers 1.1.1.1 8.8.8.8
</pre>
<h4>Alterar DNS</h4>
<p>Por mais que vimos dns-nameserver nesta parte da configuração de rede, o servidor não irá usa-los, o arquivo qual será levado em conta é o <strong>/etc/resolv.conf </strong></p>
<pre class="remontti-code"># nano /etc/resolv.conf</pre>
<pre class="remontti-code">nameserver 1.1.1.1
nameserver 1.0.0.1
nameserver 2606:4700:4700::1111
nameserver 2606:4700:4700::1001</pre>
<p>Se sua instalação foi feita com DHCP ativo, sua configuração será:</p>
<pre class="remontti-code"># This file describes the network interfaces available on your system
# and how to activate them. For more information, see interfaces(5).

source /etc/network/interfaces.d/*

# The loopback network interface
auto lo
iface lo inet loopback

# The primary network interface
allow-hotplug ens18
iface ens18 inet dhcp</pre>
<h3>E ai, o que queremos ?</h3>
<p>Planejar, é claro! Se você esta montando seu data center onde terá vários servidores, o que será melhor adorar? Quebrar um prefixo /30 para cada servidor que eu for implementar? <strong>NÃO!</strong>. Quer me ver com os olhos sangrando é ver alguém que tem vários servidores e para cada servidor o mesmo quebrou um /30 público. Pense comigo você tem 2 servidores você precisa 2 IPs, se você quebrou 2 /30 você terá sim seus 2 IPs públicos mas você acabou de jogar no LIXO outros 6 endereços IPs, e nos dias de hoje 1 único IP publico é quase como o ditado: <em>Em terra de cego, quem tem um olho é rei?</em></p>
<p>Então o que fazer, o mais sensato é você pensar e quebrar um prefixo maior para que você não precise estar quebrando prefixos a cada servidor. Antes de mais nada imagine onde você quer chegar! Quantos servidores irá montar, quantos IPs publicos e privados irá precisar&#8230; Sempre que dou uma consultoria essa é a primeira coisa faço, &#8220;sento&#8221; com o cliente e estudo. E com base neste estudo reservamos já um/dois prefixo /29, /28 ou 27 até mesmo um /24 público/privado, vai depender muito de cada cenário, se meu cliente tem milhares de hospedagem com certeza o número de servidores em seu data center é enorme.</p>
<p>Outro grande erro em servidores é o <strong>NAT mal aplicado</strong>! Muitas pessoas principalmente pessoal de provedor ainda tem costume de colocar em seu Mikrotik de borda um belo NAT para fornecer internet a um servidor, ou apenas para fazer um redirecionamento de portas. Quando aplicamos regras de NAT em um roteadores causamos muitos malefícios para o bichinho! Então vamos para de fazer isso? Vou lhe ajudar!</p>
<p>É claro que isso é muito relativo de cada empresa, já fiz NAT com borda? Já! Depende do tamanho da empresa e organização de cada um. <strong>Então não leve ao pé da letra! Estou tentando lhe dizer o que é o melhor a ser feito!</strong></p>
<p>Já fui criticado por pedir para cliente comprar uma roteador para ser apenas o gateway dos servidores. <em>&#8220;Rudimar é louco&#8221;</em>. E eu digo: <em>Mais louco é quem faz NAT em roteador de borda! </em>. Em alguns casos eu recomendo um router para ligar os servidores, pois você pode ter diversos recursos na manga, e basta você fechar um iBGP/OSPF entre seu roteador de borda com seu roteador &#8220;data&#8221;.</p>
<h1>Exemplos</h1>
<p><img loading="lazy" decoding="async" class="alignnone size-full wp-image-5860" src="https://blog.remontti.com.br/wp-content/uploads/2021/09/teste.drawio.png" alt="" width="809" height="372" srcset="https://blog.remontti.com.br/wp-content/uploads/2021/09/teste.drawio.png 809w, https://blog.remontti.com.br/wp-content/uploads/2021/09/teste.drawio-300x138.png 300w, https://blog.remontti.com.br/wp-content/uploads/2021/09/teste.drawio-768x353.png 768w" sizes="auto, (max-width: 809px) 100vw, 809px" /></p>
<h4>Receber IP via DHCP</h4>
<p>O mais simples a ser feito quando seu servidor ira receber IP automaticamente.</p>
<pre class="remontti-code">allow-hotplug ens18
iface ens18 inet dhcp</pre>
<h4>Fixando IPv4 e IPv6</h4>
<p>Basicamente o que iremos usar em 95% das vezes</p>
<pre class="remontti-code">allow-hotplug ens18
iface ens18 inet static
        address 200.200.200.2/28
        gateway 200.200.200.1

iface ens18 inet6 static
        pre-up modprobe ipv6
        address 2804:bebe:cafe::2/64
        gateway 2804:bebe:cafe::1</pre>
<h4>Adicionando Multiplos IPs</h4>
<p>Quando quiser mais de um IP no mesmo servidor, caso for outras interfaces basta ajustar para o nome da interface</p>
<pre class="remontti-code">allow-hotplug ens18
iface ens18 inet static
        address 200.200.200.2/28
        gateway 200.200.200.1

iface ens18 inet static
        address 200.200.200.3/28

iface ens18 inet static
        address 200.200.201.1/32

iface ens18 inet6 static
        pre-up modprobe ipv6
        address 2804:bebe:cafe::2/64
        gateway 2804:bebe:cafe::1

iface ens18 inet6 static
        pre-up modprobe ipv6
        address 2804:bebe:cafe::3/64

iface ens18 inet6 static
        pre-up modprobe ipv6
        address 2804:bebe:ffff:ffff::ffff
        netmask 128</pre>
<h4>IP na Loopback</h4>
<p>Você pode usar quando estiver roteando um IP (OSFP/iBGP), exemplo com <a href="https://blog.remontti.com.br/4771" target="_blank" rel="noopener">FRR</a>, porém neste caso estaria fazendo a adição dos IPs pelo próprio FRR.<br />
Mas se você fará algum tipo de rota estática com intuito exemplo de fazer ECMP (Equal Cost Multi-Path), é importante que os IPs de anycast estejam na interface de loopback para que não tenha conflito.</p>
<pre class="remontti-code">auto lo 
iface lo inet loopback

iface lo inet static
        address 200.200.200.200/32</pre>
<h4>Ponto a ponto &#8211; Pointopoint</h4>
<p>Aqui muitos ficam bugado, no meu cenário perceba que temos um servidor conectado ao roteador de borda, agora imagine, que neste roteador de borda não tem nenhum IP público por politicas de segurança, mas ai vem o estagiário e e te diz: Vamos quebrar um /30 pub! Então saiba que você não precisa fazer isso, você pode adicionar um IP ponto a ponto, onde temos IP diferente dos dois lados, então como no exemplo a baixo podemos add no nosso roteador de borda 10.50.50.1 e no nosso servidor 200.200.200.0.</p>
<pre class="remontti-code">allow-hotplug ens18
iface ens18 inet static
        address 200.200.200.0
        pointopoint 10.50.50.1
        netmask 255.255.255.255
        gateway 10.50.50.1
</pre>
<p>Isso funciona? É claro! E você não irá precisar deixar seu roteador de borda com IP público acessível pelo mundo, e muito menos fazer um NAT! Como sou bonzinho vou deixar aqui como você configuraria isso no seu Mikrotikão! Ficaria assim:</p>
<pre class="remontti-code">RouterOS# /ip address
RouterOS# add address=10.50.50.1 comment=Pointopoint interface=ether1 network=200.200.200.0</pre>
<p>Simples não?! Testa ai! Depois me conta!</p>
<h4>Privado com saída em origem Público</h4>
<p>Quase que como o exemplo do pointopoint, porem em alguns roteadores não temos o suporte para fazer pointopoint, uma saída é você quebrar um prefixo privado (estou usando /30, mas se tivesses vários servidores junto faria já um prefixo maior). No exemplo então meu IP público é o 200.200.200.200/32 qual irei colocar na mesma interface da WAN que tenho o 10.33.33.2/30, logo o roteador é o 10.33.33.1. Desta forma você tem uma conversa entre as interfaces por IP privado, porem os pacotes são originados com o endereço de IP público.</p>
<pre class="remontti-code">allow-hotplug ens18
iface ens18 inet static
    address 200.200.200.200/32
iface ens18 inet static
    address 10.33.33.2/30
    post-up ip route add default via 10.33.33.1 src 200.200.200.200</pre>
<p>Mas ai temos um problema, seu servidor irá gerar os pacotes de origem publico, e irá enviar para internet, mas quando o pacote estiver voltando ao chegar em seu roteador de borda é necessário que você tenha uma rotá para o mesmo. Então crie um rota estática dizendo que Destino 200.200.200.200 o gateway é 10.33.33.2 IP este do seu servidor. Ex.:</p>
<p>Exemplo RouterOS:</p>
<pre class="remontti-code">RouterOS# /ip address add address=10.33.33.1/30 interface=ether2
RouterOS# /ip route add dst-address=200.200.200.200/32 gateway=10.33.33.2</pre>
<p>Exemplo Huawei:</p>
<pre class="remontti-code">ip route-static 200.200.200.200 32 10.33.33.2 preference 1 description SERVIDOR</pre>
<p>É possível fazer isso para IPv6 também? É claro!</p>
<pre class="remontti-code">allow-hotplug ens18

#IPv6 Público
iface ens18 inet6 static
        pre-up modprobe ipv6
        address 2804:bebe:cafe::cafe
        netmask 128

# IPv6 Privado
iface ens18 inet6 static
        pre-up modprobe ipv6
        address fd00:a::2/64
        post-up ip -6 route add default via fd00:a::1 src 2804:bebe:cafe::cafe</pre>
<p>Exemplo RouterOS:</p>
<pre class="remontti-code">RouterOS# /ipv6 address add address=fd00:a::1/64 advertise=no interface=ether2
RouterOS# /ipv6 route add dst-address=2804:bebe:cafe::cafe/128 gateway=fd00:a::2</pre>
<p>Exemplo Huawei:</p>
<pre class="remontti-code">ipv6 route-static 2804:bebe:cafe::cafe 128 fd00:a::2 preference 1 description SERVIDOR</pre>
<h5>Possível problema: Resolução ARP/ND na Inicialização</h5>
<p>Em alguns casos, pode acontecer do IP /32 (no IPv4) ou /128 (no IPv6) só começar a funcionar após um primeiro <em>ping</em> interno. Isso não significa que a configuração da rede esteja errada, mas sim que o kernel e o roteador precisam “descobrir” via ARP/ND como chegar a esse endereço adicional.</p>
<p>Esse comportamento ocorre porque, ao usar um endereço /32 (IPv4) ou /128 (IPv6), o roteador e o kernel do Linux não enviam nem respondem a requisições ARP/ND de forma “espontânea” para esse IP adicional. Somente quando há tráfego partindo do servidor (por exemplo, um ping), a troca de ARP/ND é feita e o roteador “aprende” para onde enviar os pacotes que chegam nesse IP público. Sem essa “ativação” inicial, o roteador não tem como saber que aquele IP /32 ou /128 está associado à interface do servidor.</p>
<p>No Debian 13 eu contornei desta forma:</p>
<pre class="remontti-code-blue">allow-hotplug ens18
iface ens18 inet static
    address 200.200.200.200/32
    up ip addr add 10.33.33.200/24 dev $IFACE
    up ip route replace default via 10.33.33.1 dev $IFACE  src 200.200.200.200
    down ip route del default via 10.33.33.1 dev $IFACE || true
    down ip addr del 10.33.33.2/24 dev $IFACE || true

iface ens18 inet6 static
    address 2804:bebe:cafe::cafe/128
    up ip -6 addr add fd00:a::2/64 dev $IFACE
    up ip -6 route replace default via fd00:a::1 dev $IFACE
    down ip -6 route del default via fd00:a::1 dev $IFACE || true
    down ip -6 addr del fd00:a::1/64 dev $IFACE || true
</pre>
<p>Se ainda não resolver tente com o script:</p>
<p>Crie o serviço systemd</p>
<pre class="remontti-code"># vim /etc/systemd/system/meu_script_rede.service</pre>
<p>Adicione:</p>
<pre class="remontti-code-blue">[Unit]
Description=Rodar script após inicialização da rede
After=network-online.target
Wants=network-online.target

[Service]
Type=oneshot
ExecStart=/usr/local/bin/meu_script.sh
RemainAfterExit=yes

[Install]
WantedBy=multi-user.target
</pre>
<p>Crie o script, nele vamos incluir um ping</p>
<pre class="remontti-code"># vim /usr/local/bin/meu_script.sh</pre>
<p>Ajuste <strong>IPV4_GATEWAY</strong> e <strong>IPV6_GATEWAY</strong> para seus gateway.</p>
<pre class="remontti-code-blue">#!/bin/bash

# IPs
IPV4_GATEWAY=&quot;10.33.33.1&quot;
IPV6_GATEWAY=&quot;fd00:cafe::1&quot;

# Nº de pings
NPING=5

# Registro no log
date &gt; /var/log/rede_inicializada.log
echo &quot;A placa de rede foi inicializada&quot; &gt;&gt; /var/log/rede_inicializada.log

# Enviar pings para forçar ARP/ND
ping -O -4 -c $NPING $IPV4_GATEWAY &gt;&gt; /var/log/rede_inicializada.log
ping -O -6 -c $NPING $IPV6_GATEWAY &gt;&gt; /var/log/rede_inicializada.log

# Espera 1 segundo
sleep 1
</pre>
<p>Dê permissão de execução:</p>
<pre class="remontti-code"># chmod +x /usr/local/bin/meu_script.sh</pre>
<p>Ative o serviço no systemd e reinicie</p>
<pre class="remontti-code"># systemctl daemon-reload
# systemctl enable meu_script_rede
# systemctl start meu_script_rede
# systemctl status meu_script_rede</pre>
<p>Agora, toda vez que o servidor inicializar, este script rodará e enviará alguns pings para “ativar” as tabelas ARP e ND. Você poderá verificar o arquivo /var/log/rede_inicializada.log para ver a saída dos pings. `cat /var/log/rede_inicializada.log`</p>
<h4>Criando VLAN e adicionado IP nela</h4>
<p>Para adicionar um IP a uma VLAN precisamos carregar o módulo 8021q, e coloca-lo para iniciar com sistema.</p>
<pre class="remontti-code"># modprobe 8021q
# echo &quot;8021q&quot; &gt;&gt; /etc/modules</pre>
<p>Agora basta editar sua interface e incluir um ponto e o numero da VLAN. No exemplo VLAN 171</p>
<pre class="remontti-code">allow-hotplug ens18.171
iface ens18.171 inet static
       address 10.88.88.2/24</pre>
<h4>PBR &#8211; Roteamento baseado em políticas</h4>
<p>Eu particularmente uso em Accel-ppp para separar o trafego de IPs publicos de Privados, direcionando apenas os IPs de NAT para a caixa do CGNAT. É necessário criar uma nova tabela de rotas, irei chamar de cgnat no exemplo.</p>
<pre class="remontti-code"># echo &quot;100 cgnat&quot; &gt;&gt; /etc/iproute2/rt_tables
# cat /etc/iproute2/rt_tables
# ip route list table main</pre>
<p>Fecho um /30 entre router e servidor e digo que todos os IPs que 100.64.0.0./10 deve sair pela tabela de rotas com o CGNAT.</p>
<pre class="remontti-code">allow-hotplug ens18
iface ens18 inet static
    address 10.200.200.2/30
    post-up ip route add default via 10.200.200.1 dev ens18 table cgnat
    post-up ip rule add from 100.64.0.0/10 lookup cgnat</pre>
<h4>Blackhole</h4>
<p>Normalmente útil em casos que você usa seu servidor como roteador. Você irá colocar após as configurações da interface o post-up passando o prefixo ou ip qual irá subir em blackhole</p>
<pre class="remontti-code">allow-hotplug ens18
iface ens18 inet static
    address 10.33.33.2/30
    post-up ip route add blackhole 200.200.200.128/26 metric 250 || true</pre>
<h4>Agregação</h4>
<p>Instalar o ifenslave: Este pacote permite configurar a agregação de portas no Linux.</p>
<pre class="remontti-code"># apt install ifenslave</pre>
<p>Carregar o Módulo de Bonding</p>
<pre class="remontti-code"># echo &quot;bonding&quot; | tee -a /etc/modules
# modprobe bonding</pre>
<p>Verificar se o módulo foi carregado corretamente:</p>
<pre class="remontti-code"># lsmod | grep bonding</pre>
<p><strong>802.3ad (LACP):</strong> Ideal para aumentar a largura de banda e fornecer redundância quando conectado a um switch que suporta LACP.<br />
<strong>balance-xor:</strong> Útil para balanceamento de carga baseado em XOR, adequado para ambientes que não suportam LACP.<br />
<strong>balance-rr (Round Robin):</strong> Simples e eficaz para cargas de trabalho que exigem balanceamento de carga sem configuração específica do switch.<br />
<strong>active-backup:</strong> Fornece redundância sem aumento de largura de banda, útil quando a continuidade do serviço é mais crítica do que a capacidade.<br />
<strong>balance-tlb (Transmit Load Balancing) e balance-alb (Adaptive Load Balancing):</strong> Ambos são bons para ambientes onde a configuração do switch não pode ser alterada ou não suporta LACP. O ALB também tenta balancear o tráfego de entrada.</p>
<p>Aqui estão exemplos para vários modos de bonding</p>
<pre class="remontti-code"># vim /etc/network/interfaces</pre>
<h5>802.3ad (LACP)</h5>
<p><em>Aplicação: Ideal para ambientes de alta disponibilidade e alta largura de banda, como data centers ou servidores que precisam de conexões robustas e de alta capacidade. É necessário que ambos os lados (o Debian e o switch/router) suportem LACP.</em></p>
<pre class="remontti-code">auto bond0
iface bond0 inet static
    address 192.168.0.2/24
    bond-slaves enp4s0f0 enp4s0f1
    bond-miimon 100
    bond-mode 802.3ad
    bond-xmit-hash-policy layer2+3
</pre>
<h5>Balance-xor</h5>
<p><em>Aplicação: Bom para ambientes onde o tráfego de rede tem padrões conhecidos que podem ser distribuídos de forma eficaz usando XOR. Pode ser usado para melhorar o desempenho quando LACP não é suportado.</em></p>
<pre class="remontti-code">auto bond0
iface bond0 inet static
    address 192.168.0.2/24
    bond-slaves enp4s0f0 enp4s0f1
    bond-miimon 100
    bond-mode balance-xor
    bond-xmit-hash-policy layer2+3
</pre>
<h5>Balance-rr (Round Robin)</h5>
<p><em>Aplicação: Simples e eficaz para distribuir cargas de forma equitativa sobre as interfaces físicas. Útil em ambientes onde a ordem de chegada dos pacotes não é crítica.</em></p>
<pre class="remontti-code">auto bond0
iface bond0 inet static
    address 192.168.0.2/24
    bond-slaves enp4s0f0 enp4s0f1
    bond-miimon 100
    bond-mode balance-rr
</pre>
<h5>Active-backup</h5>
<p><em>Aplicação: Ideal para redundância sem aumentar a largura de banda. Se a interface primária falhar, outra assumirá. Recomendado para serviços críticos que precisam de alta disponibilidade mais do que de alta capacidade.</em></p>
<pre class="remontti-code">auto bond0
iface bond0 inet static
    address 192.168.0.2/24
    bond-slaves enp4s0f0 enp4s0f1
    bond-miimon 100
    bond-mode active-backup
    bond-primary enp4s0f0
</pre>
<h5>Balance-tlb (Transmit Load Balancing)</h5>
<p><em>Aplicação: Útil quando a modificação de configuração do switch não é possível. Realiza o balanceamento de carga de saída de acordo com a carga atual de cada interface. Não requer suporte específico do switch.</em></p>
<pre class="remontti-code">auto bond0
iface bond0 inet static
    address 192.168.0.2/24
    bond-slaves enp4s0f0 enp4s0f1
    bond-miimon 100
    bond-mode balance-tlb
</pre>
<h5>Balance-alb (Adaptive Load Balancing)</h5>
<p><em>Aplicação: Similar ao balance-tlb, mas também tenta balancear o tráfego de entrada, o que pode ser útil em servidores web ou de aplicativos. Essa modalidade não requer configuração especial do switch.</em></p>
<pre class="remontti-code">auto bond0
iface bond0 inet static
    address 192.168.0.2/24
    bond-slaves enp4s0f0 enp4s0f1
    bond-miimon 100
    bond-mode balance-alb
</pre>
<p>Reiniciar o sistema para aplicar as alterações:</p>
<pre class="remontti-code"># reboot</pre>
<p>Verificar o status do serviço de rede para garantir que não houve erros, e a configuração de bonding.</p>
<pre class="remontti-code"># systemctl status networking
# journalctl -u networking.service
# cat /proc/net/bonding/bond0</pre>
<h4>Considerações finais</h4>
<p>Sempre que editar o arquivo /etc/network/interfaces para que as configurações sejam carregadas será necessário reiniciar seu servidor, você até pode subir a interface com auto ao invés de allow-hotplug, mas não irei abordar aqui.</p>
<p>Caso você queira adicionar/remover IPs manualmente (em memória/perde ao reiniciar) você pode usar o comando <strong>ip</strong>, segue exemplo, onde <strong>ens18</strong> é o nome da interface.<br />
Adicionar:</p>
<pre class="remontti-code"># ip addr add 192.168.7.7/32 dev ens18
# ip -6 addr add 2001:db8:1::1/128 dev ens18</pre>
<p>Visualizar:</p>
<pre class="remontti-code"># ip address</pre>
<p>Remover:</p>
<pre class="remontti-code"># ip addr del 192.168.7.7/32 dev ens18
# ip -6 addr del 2001:db8:1::1/128 dev ens18</pre>
<p>Exibe interfaces / Endereços IPs</p>
<pre class="remontti-code"># ip -br a
# ip -br addr show
# ip -br link
# ip -br link show</pre>
<p>Exibir informações sobre todas as interfaces de rede:</p>
<pre class="remontti-code"># ip a
# ip addr
# ip addr show</pre>
<p>Exibir informações sobre todas as interfaces de rede IPv4:</p>
<pre class="remontti-code"># ip -4 a</pre>
<p>Exibir informações sobre todas as interfaces de rede IPv6:</p>
<pre class="remontti-code"># ip -6 a</pre>
<p>Exibir informações sobre uma interface de rede específica:</p>
<pre class="remontti-code"># ip a show eth0
# ip a list eth0
# ip a show dev eth0</pre>
<p>Mostrar apenas interfaces em execução</p>
<pre class="remontti-code"># ip link ls up</pre>
<p>Adicionar um endereço IPv4/IPv6:</p>
<pre class="remontti-code"># ip a add {ip_addr/mask} dev {interface}
# ip a add 10.0.1.200/255.255.255.0 dev eth0
# ip a add 10.0.1.200/24 dev eth0</pre>
<p>Remover endereço IP</p>
<pre class="remontti-code"># ip a del {ipv6_addr_OR_ipv4_addr} dev {interface}
# ip a del 10.0.1.200/24 dev eth0</pre>
<p>Desligando a interface</p>
<pre class="remontti-code"># ip link set dev eth1 down</pre>
<p>Ligando a interface</p>
<pre class="remontti-code"># ip link set dev eth1 up</pre>
<p>Ajusda</p>
<pre class="remontti-code"># man ip
# ip --help</pre>
<p>Comandos antigos X Novo comando</p>
<pre class="remontti-code">Velho # ifconfig -a
 Novo # ip a

Velho # ifconfig eth0 down
 Novo # ip link set eth0 down

Velho # ifconfig eth0 up
 Novo # ip link set eth0 up

Velho # ifconfig eth0 10.0.2.24
 Novo # ip addr add 10.0.2.24/24 dev eth0

Velho # ifconfig eth0 netmask 255.255.255.0
 Novo # ip addr add 10.0.1.1/24 dev eth0

Velho # ifconfig eth0 mtu 9000
 Novo # ip link set eth0 mtu 9000

Velho # ifconfig eth0:0 10.0.2.25
 Novo # ip addr add 10.0.2.25/24 dev eth0

Velho # netstat -g
 Novo # ip maddr

Velho # route
 Novo # ip r

Velho # route add -net 10.0.2.0 netmask 255.255.255.0 dev eth0
 Novo # ip route add 10.0.2.0/24 dev eth0

Velho # route add default gw 10.0.2.254
 Novo # ip route add default via 10.0.2.254

Velho # arp -a
 Novo # ip neigh

Velho # arp -v
 Novo # ip -s neigh

Velho # arp -s 10.0.2.33 01:02:03:04:05:06
 Novo # ip neigh add 10.0.3.33 lladdr 01:02:03:04:05:06 dev eth0

Velho # arp -i eth0 -d 10.0.2.254
 Novo # ip neigh del 10.0.2.254 dev eth0

Velho # netstat
 Novo # ss

Velho # netstat -tulpn
 Novo # ss -tulpn

Velho # netstat -neopa
 Novo # ss -neopa</pre>
<p>Espero ter colaborado com uma pequena parcela em seu conhecimento! Desculpa o português e as palavras faltando letras, é difícil conseguir tempo para vir aqui escrever e revisar, então abro meu &#8220;bloco de notas&#8221; e vou escrevendo&#8230;</p>
<p>Curtiu o conteúdo? Quer me ajudar manter o blog? <img src="https://s.w.org/images/core/emoji/17.0.2/72x72/1f642.png" alt="🙂" class="wp-smiley" style="height: 1em; max-height: 1em;" /></p>
<p><strong>Se quiser fazer uma doação para o café ficarei muito feliz pelo seu reconhecimento!</strong><br />
<a href="https://blog.remontti.com.br/doar"><img decoding="async" src="https://blog.remontti.com.br/wp-content/uploads/2019/07/quero-doar-remontti.png" /></a></p>
<p>Participe do canal no <a href="https://t.me/blogremontti" target="_blank" rel="noopener noreferrer">telegram</a> para ficar atualizado sempre que publicar um novo tutorial.</p>
<p>Se não puder doar pode deixar seu agradecimento nos comentário também ficarei feliz em saber que ajudei. Se tiver qualquer pergunta deixe-a também. Se preferir entrar em Contato <a href="https://blog.remontti.com.br/meucontato" target="_blank" rel="noopener noreferrer">clique aqui.</a></p>
<p>Abraço!</p>
<p>O post <a href="https://blog.remontti.com.br/5848">Configurando interface de rede no Debian 10/11/12/13</a> apareceu primeiro em <a href="https://blog.remontti.com.br">Remontti</a>.</p>
]]></content:encoded>
					
					<wfw:commentRss>https://blog.remontti.com.br/5848/feed</wfw:commentRss>
			<slash:comments>17</slash:comments>
		
		
			</item>
	</channel>
</rss>
