<?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 Script - Remontti</title>
	<atom:link href="https://blog.remontti.com.br/tag/script/feed" rel="self" type="application/rss+xml" />
	<link>https://blog.remontti.com.br/tag/script</link>
	<description>rudimar@remontti</description>
	<lastBuildDate>Fri, 21 Jun 2024 21:17:20 +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 Script - Remontti</title>
	<link>https://blog.remontti.com.br/tag/script</link>
	<width>32</width>
	<height>32</height>
</image> 
	<item>
		<title>Automatizando o bloqueio de sites no Brasil pelo DNS usando a API da anablock.net.br (BIND9+RPZ)</title>
		<link>https://blog.remontti.com.br/7759</link>
					<comments>https://blog.remontti.com.br/7759#comments</comments>
		
		<dc:creator><![CDATA[Rudimar Remontti]]></dc:creator>
		<pubDate>Mon, 22 Jan 2024 17:58:23 +0000</pubDate>
				<category><![CDATA[Dicas]]></category>
		<category><![CDATA[Linux]]></category>
		<category><![CDATA[Script]]></category>
		<category><![CDATA[Tutoriais]]></category>
		<category><![CDATA[Anablock]]></category>
		<category><![CDATA[Anatel]]></category>
		<category><![CDATA[apache]]></category>
		<category><![CDATA[bind]]></category>
		<category><![CDATA[Bloqueio de Domínios]]></category>
		<category><![CDATA[Certificado SSL]]></category>
		<category><![CDATA[Configuração de DNS]]></category>
		<category><![CDATA[DNS]]></category>
		<category><![CDATA[Domínios Bloqueados]]></category>
		<category><![CDATA[Página de Bloqueio]]></category>
		<category><![CDATA[Python]]></category>
		<category><![CDATA[rpz]]></category>
		<category><![CDATA[servidor dns]]></category>
		<category><![CDATA[Servidor WEB]]></category>
		<category><![CDATA[tutorial]]></category>
		<category><![CDATA[Zona de Política de Resposta DNS.]]></category>
		<guid isPermaLink="false">https://blog.remontti.com.br/?p=7759</guid>

					<description><![CDATA[<p>Neste tutorial, abordaremos a configuração de uma Zona de Política de Resposta DNS (RPZ) com o objetivo de simplificar a resolução de nomes alterados, especialmente quando lidamos com escalas substanciais. Nosso objetivo é bloquear&#46;&#46;&#46;</p>
<p>O post <a href="https://blog.remontti.com.br/7759">Automatizando o bloqueio de sites no Brasil pelo DNS usando a API da anablock.net.br (BIND9+RPZ)</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/01/brasil-anatel-bloquei-site-anablock.png" alt="" width="1787" height="1024" class="alignnone size-full wp-image-7770" srcset="https://blog.remontti.com.br/wp-content/uploads/2024/01/brasil-anatel-bloquei-site-anablock.png 1787w, https://blog.remontti.com.br/wp-content/uploads/2024/01/brasil-anatel-bloquei-site-anablock-300x172.png 300w, https://blog.remontti.com.br/wp-content/uploads/2024/01/brasil-anatel-bloquei-site-anablock-1024x587.png 1024w, https://blog.remontti.com.br/wp-content/uploads/2024/01/brasil-anatel-bloquei-site-anablock-768x440.png 768w, https://blog.remontti.com.br/wp-content/uploads/2024/01/brasil-anatel-bloquei-site-anablock-1536x880.png 1536w" sizes="(max-width: 1787px) 100vw, 1787px" /></p>
<p>Neste tutorial, abordaremos a configuração de uma Zona de Política de Resposta DNS (RPZ) com o objetivo de simplificar a resolução de nomes alterados, especialmente quando lidamos com escalas substanciais. Nosso objetivo é bloquear milhares de domínios de forma eficiente, minimizando o consumo de recursos de hardware em nosso servidor.</p>
<p>Não abordarei a instalação do BIND neste momento, pois já disponibilizamos um tutorial completo em nosso blog, que pode ser acessado através do seguinte link:<br />
<a href="https://blog.remontti.com.br/5958" rel="noopener" target="_blank">Servidor DNS Bind9 (Debian 12)</a>. </p>
<p>Para configurar sempre que um domínio bloqueado for resolvido pelo seu DNS em um IP da sua rede, você precisará criar um subdomínio no seu servidor DNS autoritativo. No arquivo de configuração dos seus hosts irei criar um subdomínio chamado bloqueadonobrasil, vejamos um exemplo: </p>
<pre class="remontti-code"># vim /var/cache/bind/master-aut/remontti.com.br/remontti.com.br.hosts</pre>
<p>Exemplo &#8220;<strong>bloqueadonobrasil</strong>&#8220;, ou então apontando para os IPs de localhost mesmo 127.0.0.1 e ::1 onde neste caso se o usuário acessar o domínio bloqueado simplesmente não irá abrir nada.</p>
<pre class="remontti-code-plain">//...
bloqueadonobrasil       A       x.xx.xxx.x
                        AAAA    xxxx:xxxx:xxxx::y
//...</pre>
<h4>DNS PRIMÁRIO (MASTER)</h4>
<p>Agora crie uma zona chamada <strong>rpz.zone</strong> em seu /etc/bind/named.conf.local. em <strong>allow-transfer</strong> e <strong>also-notify</strong> informe os IPs de seus servidores Slaves.</p>
<pre class="remontti-code"># vim /etc/bind/named.conf.local</pre>
<pre class="remontti-code-plain">zone &quot;rpz.zone&quot; {
        type master;
        file &quot;/var/cache/bind/rpz/db.rpz.zone.hosts&quot;;
        allow-query { none; };
        allow-transfer { 10.51.51.3; };
        also-notify { 10.51.51.3; };
};
</pre>
<p>Vamos criar o diretório &#8220;rpz&#8221; e os arquivos de hosts que serão bloqueados.</p>
<pre class="remontti-code"># mkdir /var/cache/bind/rpz/</pre>
<p>Criarei um atalho em /etc/bind para facilitar o acesso da pastar também.</p>
<pre class="remontti-code"># ln -s /var/cache/bind/rpz/ /etc/bind/rpz</pre>
<p>Entendendo como os domínios são bloqueados. A seguir, apresentamos um exemplo do arquivo que servirá como base para o nosso próximo script a seguir:<br />
Nome do arquivo: <strong>/var/cache/bind/rpz/db.rpz.zone.hosts</strong></p>
<pre class="remontti-code-plain">$TTL 1H
@       IN      SOA LOCALHOST. bloqueadonobrasil.remontti.com.br. (
                2024012201      ; Serial  
                1h              ; Refresh
                15m             ; Retry
                30d             ; Expire 
                2h              ; Negative Cache TTL
        )
        NS  bloqueadonobrasil.remontti.com.br.
;       ou
;       NS  localhost.
 
sitequeprecisabloquear.com     IN CNAME .
*.sitequeprecisabloquear.com   IN CNAME .
elesmandamnosfaz.bo.bo         IN CNAME .
*.elesmandamnosfaz.bo.bo       IN CNAME .</pre>
<p>Sendo que para cada domínio que será bloqueado, o mesmo será adicionado:</p>
<pre class="remontti-code-plain">
sitequeprecisabloquear.com        IN CNAME .
*.sitequeprecisabloquear.com      IN CNAME .</pre>
<p>Assim qualquer subdomínio (*).domino.com seja traduzido sempre irá ser apontado para seu IP ou localhost.</p>
<p>Antes de criar o script, ajuste o response-policy dentro do seu <strong>/etc/bind/named.conf.options</strong></p>
<pre class="remontti-code"># vim /etc/bind/named.conf.options</pre>
<p>Deve ficar dentro de <strong>options { &#8230; }</strong> adcione: </p>
<pre class="remontti-code-plain">options {
//...
    response-policy {
      zone &quot;rpz.zone&quot; policy CNAME bloqueadonobrasil.remontti.com.br;
    };
//...</pre>
<p>Ou se você irá apontar para localhost use:</p>
<pre class="remontti-code-plain">options {
//...
    response-policy {
      zone &quot;rpz.zone&quot; policy CNAME localhost;
    };
//...</pre>
<h4>Script AnaBlock</h4>
<p>Para simplificar nossa tarefa, criaremos um script que utiliza o site <a href="https://anablock.net.br" rel="noopener" target="_blank"><strong>https://anablock.net.br</strong></a>, uma plataforma desenvolvida por <a href="http://www.patrickbrandao.com" rel="noopener" target="_blank"><strong>Patrick Brandão</strong></a> da <a href="https://www.nuva.com.br" rel="noopener" target="_blank"><strong>Nuva</strong></a>. Ele projetou uma página abrangente que oferece todas as informações necessárias para acompanhar os bloqueios de conteúdo regulados pela Anatel e pelas autoridades da República Federativa do Brasil.</p>
<p>Porém ANATEL solicitou a remoção dessa lista:<br />
<img decoding="async" src="https://blog.remontti.com.br/wp-content/uploads/2024/01/ana.png" alt="" width="903" height="528" class="alignnone size-full wp-image-7983" srcset="https://blog.remontti.com.br/wp-content/uploads/2024/01/ana.png 903w, https://blog.remontti.com.br/wp-content/uploads/2024/01/ana-300x175.png 300w, https://blog.remontti.com.br/wp-content/uploads/2024/01/ana-768x449.png 768w" sizes="(max-width: 903px) 100vw, 903px" /></p>
<p>Para liberação da lista você deve entrar em contato com <a href="http://www.patrickbrandao.com/?#contact" rel="noopener" target="_blank"><strong>Patrick Brandão</strong></a></p>
<p>Crie um diretório onde iremos salvar nosso script: </p>
<pre class="remontti-code"># mkdir /etc/bind/scripts</pre>
<p>Subi meu script no <a href="https://github.com/remontti/anablock_bind9" rel="noopener" target="_blank">Github</a>, mas iremos entrar na nossa pasta /etc/bind/scripts e baixar ele direto para nosso servidor.</p>
<pre class="remontti-code"># cd /etc/bind/scripts
# wget https://raw.githubusercontent.com/remontti/anablock_bind9/main/anablock_bind9.py</pre>
<p>Esse scrip ira verificar verificar qual sua <strong><a href="https://api.anablock.net.br/api/version" rel="noopener" target="_blank">versão</a></strong> e sempre que existir uma nova ou se for sua primeira vez ele irá baixar a <strong><a href="https://api.anablock.net.br/api/domain/all" rel="noopener" target="_blank">lista de todos os domínios</a></strong> e cria o arquivo <strong>db.rpz.zone.hosts</strong> com a lista completa de siste que serão bloqueados pelo seu DNS.</p>
<p>Script foi feito em python3 instale os pacotes necessários para executa-lo.</p>
<pre class="remontti-code"># apt install python3 python3-requests tree</pre>
<p>Execute o script:</p>
<pre class="remontti-code"># python3 /etc/bind/scripts/anablock_bind9.py bloqueadonobrasil.remontti.com.br</pre>
<pre class="remontti-code-plain">Arquivo de zona RPZ atualizado.
Permissões do diretório alteradas com sucesso.
Serviço Bind9 reiniciado com sucesso.</pre>
<pre class="remontti-code"># tree -h /var/cache/bind/rpz/</pre>
<p>Seu diretório terá os seguintes arquivos</p>
<pre class="remontti-code-plain">/var/cache/bind/rpz/
├── [159K]  db.rpz.zone.hosts
├── [ 46K]  domain_all
└── [  11]  version</pre>
<p>Se você executar o script novamente nada irá acontecer até que uma nova versão seja lancada.</p>
<p>Para que tenhamos nossa lista sempre atualizada, colocamos o script para ser executado todos os dias a meia noite.</p>
<pre class="remontti-code"># echo &#039;00 00   * * *   root    python3 /etc/bind/scripts/anablock_bind9.py bloqueadonobrasil.remontti.com.br&#039;\ &gt;&gt; /etc/crontab
# systemctl restart cron</pre>
<h3>Testes</h3>
<p>Agora faça um teste para ver o que seu servidor ira traduzir corretamente:</p>
<pre class="remontti-code"># dig 2filmestorrent.top @localhost</pre>
<pre class="remontti-code-plain">; &lt;&lt;&gt;&gt; DiG 9.11.5-P4-5.1+deb10u9-Debian &lt;&lt;&gt;&gt; 2filmestorrent.top @localhost
;; global options: +cmd
;; Got answer:
;; -&gt;&gt;HEADER&lt;&lt;- opcode: QUERY, status: NOERROR, id: 42124
;; flags: qr rd ra; QUERY: 1, ANSWER: 2, AUTHORITY: 0, ADDITIONAL: 1

;; OPT PSEUDOSECTION:
; EDNS: version: 0, flags:; udp: 4096
; COOKIE: be484fb71dfe219dd9e6544465ae7d4b7e142ef750ed0d80 (good)
;; QUESTION SECTION:
;2filmestorrent.top.		IN	A

;; ANSWER SECTION:
2filmestorrent.top.	5	IN	CNAME	bloqueadonobrasil.remontti.com.br.
bloqueadonobrasil.remontti.com.br. 10800	IN A	x.x.x.x

;; Query time: 479 msec
;; SERVER: ::1#53(::1)
;; WHEN: seg jan 22 11:35:55 -03 2024
;; MSG SIZE  rcvd: 137
</pre>
<h4>DNS SECUNDÁRIO's (SLAVE's)</h4>
<p>Agora crie uma entrada zona chamada <strong>rpz.zone</strong> em seu /etc/bind/named.conf.local. em <strong>masters</strong> e <strong>also-notify</strong> informe os IPs de seus servidores Master.</p>
<pre class="remontti-code"># vim /etc/bind/named.conf.local</pre>
<pre class="remontti-code-plain">zone &quot;rpz.zone&quot; {
    type slave;
    file &quot;/var/cache/bind/rpz/db.rpz.zone.hosts&quot;;
    masters { 10.51.51.2; };
    allow-notify { 10.51.51.2; };
};</pre>
<p>Configure o <strong>response-policy</strong></p>
<pre class="remontti-code"># vim /etc/bind/named.conf.options</pre>
<p>Deve ficar dentro de <strong>options { ... }</strong> adcione: </p>
<pre class="remontti-code-plain">options {
//...
    response-policy {
      zone &quot;rpz.zone&quot; policy CNAME bloqueadonobrasil.remontti.com.br;
      // ou
      // zone &quot;rpz.zone&quot; policy CNAME localhost;
      // 
    };
//...</pre>
<p>Crie o diretório, de permissão, e reinicie o bind.</p>
<pre class="remontti-code"># mkdir /var/cache/bind/rpz/
# chown bind: /var/cache/bind/rpz/ -R
# systemctl restart bind9</pre>
<p>Arquivo db.rpz.zone.hosts será criado dentro de /var/cache/bind/rpz/</p>
<pre class="remontti-code"># tree /var/cache/bind/rpz/</pre>
<pre class="remontti-code-plain">/var/cache/bind/rpz/
└── db.rpz.zone.hosts</pre>
<h3>Configurando uma Página de Bloqueio em Seu Servidor Web</h3>
<p>Vou deixar exemplo com fazer isso em um <strong>Apache</strong>.Crie o diretório onde iremos criar nossa página:</p>
<pre class="remontti-code"># mkdir /var/www/bloqueadonobrasil</pre>
<h4>Apache</h4>
<p>Crie o arquivo de configuração do apache.</p>
<pre class="remontti-code"># vim /etc/apache2/sites-available/bloqueadonobrasil.conf</pre>
<pre class="remontti-code-plain">&lt;virtualhost *:80&gt;
        Protocols h2 http/1.1
        ServerName bloqueadonobrasil.remontti.net.br
        ServerAlias x.xxx.xxx.x
        ServerAlias [xxxx:xxxx:xxxx:xxxx::x]

        ServerAdmin noc@remontti.com.br

        ErrorDocument 404 /index.php
 
        DocumentRoot /var/www/bloqueadonobrasil
 
        &lt;Directory /var/www/bloqueadonobrasil/&gt;
            Options FollowSymLinks
            AllowOverride All
            # Restringe o acesso apenas para os IPs do seu ISP
            Require ip 127.0.0.1 ::1 100.64.0.0/10 x.xx.xxx.x/22 xxxx:xxxx::/32
        &lt;/Directory&gt;
 
        LogLevel warn 
        ErrorLog ${APACHE_LOG_DIR}/error.log
        CustomLog ${APACHE_LOG_DIR}/access.log combined
&lt;/virtualhost&gt;</pre>
<p>Habilite a configuração e reinicie o Apache</p>
<pre class="remontti-code"># a2ensite bloqueadonobrasil.conf
# systemctl restart apache2</pre>
<p>Instale o certbot para gerar um certificado ssl para o domínio</p>
<pre class="remontti-code"># apt install certbot python3-certbot-apache</pre>
<p>Execute:</p>
<pre class="remontti-code"># certbot</pre>
<p>Selecione seu domínio, e em sguinda reponda com <strong>No redirect</strong></p>
<pre class="remontti-code-plain">Which names would you like to activate HTTPS for?
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
1: remontti.com.br
2: bloqueadonobrasil.remontti.com.br

- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
Select the appropriate numbers separated by commas and/or spaces, or leave input
blank to select all options shown (Enter &#039;c&#039; to cancel): 2 &lt;&lt;&lt;&lt;&lt;&lt;&lt;&lt;&lt;&lt;&lt;&lt;&lt;&lt;&lt;&lt;&lt;&lt;&lt;&lt;
Obtaining a new certificate
Performing the following challenges:
http-01 challenge for bloqueadonobrasil.remontti.com.br
Waiting for verification...
Cleaning up challenges
Created an SSL vhost at /etc/apache2/sites-available/bloqueadonobrasil-le-ssl.conf
Deploying Certificate to VirtualHost /etc/apache2/sites-available/bloqueadonobrasil-le-ssl.conf
Enabling available site: /etc/apache2/sites-available/bloqueadonobrasil-le-ssl.conf

Please choose whether or not to redirect HTTP traffic to HTTPS, removing HTTP access.
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
1: No redirect - Make no further changes to the webserver configuration.
2: Redirect - Make all requests redirect to secure HTTPS access. Choose this for
new sites, or if you&#039;re confident your site works on HTTPS. You can undo this
change by editing your web server&#039;s configuration.
- - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - -
Select the appropriate number [1-2] then [enter] (press &#039;c&#039; to cancel): 1 &lt;&lt;&lt;&lt;&lt;</pre>
<p>Agora vou deixar um exemplo de página para ajudar você:</p>
<p><img decoding="async" src="https://blog.remontti.com.br/wp-content/uploads/2024/01/anablock-page.png" alt="" width="1513" height="744" class="alignnone size-full wp-image-7765" srcset="https://blog.remontti.com.br/wp-content/uploads/2024/01/anablock-page.png 1513w, https://blog.remontti.com.br/wp-content/uploads/2024/01/anablock-page-300x148.png 300w, https://blog.remontti.com.br/wp-content/uploads/2024/01/anablock-page-1024x504.png 1024w, https://blog.remontti.com.br/wp-content/uploads/2024/01/anablock-page-768x378.png 768w" sizes="(max-width: 1513px) 100vw, 1513px" /></p>
<p>Vamos excluir o diretório que foi criado, já que estou prestes a baixar minha página, que, ao ser descompactada, conterá o mesmo nome.</p>
<pre class="remontti-code"># rm -rf /var/www/bloqueadonobrasil/
# cd /var/www/
# wget https://github.com/remontti/anablock_bind9/raw/main/bloqueadonobrasil.tar.gz
# tar -vxzf bloqueadonobrasil.tar.gz
# rm bloqueadonobrasil.tar.gz</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>O post <a href="https://blog.remontti.com.br/7759">Automatizando o bloqueio de sites no Brasil pelo DNS usando a API da anablock.net.br (BIND9+RPZ)</a> apareceu primeiro em <a href="https://blog.remontti.com.br">Remontti</a>.</p>
]]></content:encoded>
					
					<wfw:commentRss>https://blog.remontti.com.br/7759/feed</wfw:commentRss>
			<slash:comments>22</slash:comments>
		
		
			</item>
		<item>
		<title>Criando backups de forma simples e enviando para o Telegram ou servidor via SSH</title>
		<link>https://blog.remontti.com.br/4791</link>
					<comments>https://blog.remontti.com.br/4791#comments</comments>
		
		<dc:creator><![CDATA[Rudimar Remontti]]></dc:creator>
		<pubDate>Thu, 13 Aug 2020 22:29:03 +0000</pubDate>
				<category><![CDATA[Linux]]></category>
		<category><![CDATA[Tutoriais]]></category>
		<category><![CDATA[backup]]></category>
		<category><![CDATA[bind]]></category>
		<category><![CDATA[Script]]></category>
		<category><![CDATA[shell script]]></category>
		<category><![CDATA[ssh]]></category>
		<category><![CDATA[sshpass]]></category>
		<category><![CDATA[telegram]]></category>
		<guid isPermaLink="false">https://blog.remontti.com.br/?p=4791</guid>

					<description><![CDATA[<p>Vamos aprender a criar scripts simples para fazer backups que podem ser úteis no nosso dia dia, vamos enviar eles para um servidor ou no telegram que aceita arquivos de até 2Gb #chupawhatsapp Criando&#46;&#46;&#46;</p>
<p>O post <a href="https://blog.remontti.com.br/4791">Criando backups de forma simples e enviando para o Telegram ou servidor via SSH</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/2020/08/capa-backup-shell-script.png" alt="" width="720" height="340" class="alignnone size-full wp-image-4833" srcset="https://blog.remontti.com.br/wp-content/uploads/2020/08/capa-backup-shell-script.png 720w, https://blog.remontti.com.br/wp-content/uploads/2020/08/capa-backup-shell-script-300x142.png 300w, https://blog.remontti.com.br/wp-content/uploads/2020/08/capa-backup-shell-script-520x245.png 520w" sizes="auto, (max-width: 720px) 100vw, 720px" /><br />
Vamos aprender a criar scripts simples para fazer backups que podem ser úteis no nosso dia dia, vamos enviar eles para um servidor ou no telegram que aceita arquivos de até 2Gb #chupawhatsapp</p>
<p><strong>Criando Bot no telegram</strong></p>
<p>Abra o Telegram e procure por <a href="https://t.me/BotFather" rel="noopener noreferrer" target="_blank"><strong>@BotFather</strong></a>.<br />
Inicie a conversa com ele.<br />
<a href="https://blog.remontti.com.br/wp-content/uploads/2018/11/zabbix_bot_telegram1.jpg" data-rel="lightbox-gallery-6fT2fPSv" data-rl_title="" data-rl_caption="" title=""><img loading="lazy" decoding="async" src="https://blog.remontti.com.br/wp-content/uploads/2018/11/zabbix_bot_telegram1-169x300.jpg" alt="" width="169" height="300" class="alignnone size-medium wp-image-2823" srcset="https://blog.remontti.com.br/wp-content/uploads/2018/11/zabbix_bot_telegram1-169x300.jpg 169w, https://blog.remontti.com.br/wp-content/uploads/2018/11/zabbix_bot_telegram1-576x1024.jpg 576w, https://blog.remontti.com.br/wp-content/uploads/2018/11/zabbix_bot_telegram1.jpg 720w" sizes="auto, (max-width: 169px) 100vw, 169px" /></a> <a href="https://blog.remontti.com.br/wp-content/uploads/2018/11/zabbix_bot_telegram2.jpg" data-rel="lightbox-gallery-6fT2fPSv" data-rl_title="" data-rl_caption="" title=""><img loading="lazy" decoding="async" src="https://blog.remontti.com.br/wp-content/uploads/2018/11/zabbix_bot_telegram2-169x300.jpg" alt="" width="169" height="300" class="alignnone size-medium wp-image-2826" srcset="https://blog.remontti.com.br/wp-content/uploads/2018/11/zabbix_bot_telegram2-169x300.jpg 169w, https://blog.remontti.com.br/wp-content/uploads/2018/11/zabbix_bot_telegram2-576x1024.jpg 576w, https://blog.remontti.com.br/wp-content/uploads/2018/11/zabbix_bot_telegram2.jpg 720w" sizes="auto, (max-width: 169px) 100vw, 169px" /></a> <a href="https://blog.remontti.com.br/wp-content/uploads/2018/11/zabbix_bot_telegram3.jpg" data-rel="lightbox-gallery-6fT2fPSv" data-rl_title="" data-rl_caption="" title=""><img loading="lazy" decoding="async" src="https://blog.remontti.com.br/wp-content/uploads/2018/11/zabbix_bot_telegram3-169x300.jpg" alt="" width="169" height="300" class="alignnone size-medium wp-image-2827" srcset="https://blog.remontti.com.br/wp-content/uploads/2018/11/zabbix_bot_telegram3-169x300.jpg 169w, https://blog.remontti.com.br/wp-content/uploads/2018/11/zabbix_bot_telegram3-576x1024.jpg 576w, https://blog.remontti.com.br/wp-content/uploads/2018/11/zabbix_bot_telegram3.jpg 720w" sizes="auto, (max-width: 169px) 100vw, 169px" /></a></p>
<p>&#8211; Digite o comando <strong>/newbot</strong> para iniciar a criação de um novo bot.<br />
&#8211; Após o comando você vai dar um nome para seu bot. Ex.: <em>&#8220;Bot Legal RR&#8221;</em>.<br />
&#8211; Em seguida é necessário digitar o nome de usuário para o bot, sendo obrigatório terminar com <strong>bot</strong>. Ex.: <em>&#8220;legallrr_bot&#8221;</em>.<br />
&#8211; Ao finalizar você receber informações com seu TOKEN, que vamos utilizar em seguida.</p>
<p><a href="https://blog.remontti.com.br/wp-content/uploads/2018/11/zabbix_bot_telegram4.jpg" data-rel="lightbox-gallery-6fT2fPSv" data-rl_title="" data-rl_caption="" title=""><img loading="lazy" decoding="async" src="https://blog.remontti.com.br/wp-content/uploads/2018/11/zabbix_bot_telegram4-169x300.jpg" alt="" width="169" height="300" class="alignnone size-medium wp-image-2830" srcset="https://blog.remontti.com.br/wp-content/uploads/2018/11/zabbix_bot_telegram4-169x300.jpg 169w, https://blog.remontti.com.br/wp-content/uploads/2018/11/zabbix_bot_telegram4-576x1024.jpg 576w, https://blog.remontti.com.br/wp-content/uploads/2018/11/zabbix_bot_telegram4.jpg 720w" sizes="auto, (max-width: 169px) 100vw, 169px" /></a> <a href="https://blog.remontti.com.br/wp-content/uploads/2018/11/zabbix_bot_telegram5.jpg" data-rel="lightbox-gallery-6fT2fPSv" data-rl_title="" data-rl_caption="" title=""><img loading="lazy" decoding="async" src="https://blog.remontti.com.br/wp-content/uploads/2018/11/zabbix_bot_telegram5-169x300.jpg" alt="" width="169" height="300" class="alignnone size-medium wp-image-2833" srcset="https://blog.remontti.com.br/wp-content/uploads/2018/11/zabbix_bot_telegram5-169x300.jpg 169w, https://blog.remontti.com.br/wp-content/uploads/2018/11/zabbix_bot_telegram5-576x1024.jpg 576w, https://blog.remontti.com.br/wp-content/uploads/2018/11/zabbix_bot_telegram5.jpg 720w" sizes="auto, (max-width: 169px) 100vw, 169px" /></a> <a href="https://blog.remontti.com.br/wp-content/uploads/2018/11/zabbix_bot_telegram6.jpg" data-rel="lightbox-gallery-6fT2fPSv" data-rl_title="" data-rl_caption="" title=""><img loading="lazy" decoding="async" src="https://blog.remontti.com.br/wp-content/uploads/2018/11/zabbix_bot_telegram6-169x300.jpg" alt="" width="169" height="300" class="alignnone size-medium wp-image-2835" srcset="https://blog.remontti.com.br/wp-content/uploads/2018/11/zabbix_bot_telegram6-169x300.jpg 169w, https://blog.remontti.com.br/wp-content/uploads/2018/11/zabbix_bot_telegram6-576x1024.jpg 576w, https://blog.remontti.com.br/wp-content/uploads/2018/11/zabbix_bot_telegram6.jpg 720w" sizes="auto, (max-width: 169px) 100vw, 169px" /></a></p>
<p>Neste exemplo nosso token para acessar a API HTTP ficou:<br />
<strong>757396508:AAHpaoyVN-95maOCax1vDPDQBnSaZd9P5r0</strong></p>
<p>Procure pelo seu bot e comece uma conversa com ele e envie uma mensagem de teste para o mesmo, pois vamos precisar descobrir o ID do seu usuário, para que ele possa lhe enviar as mensagens.<br />
<a href="https://blog.remontti.com.br/wp-content/uploads/2018/11/zabbix_bot_telegram7.jpg" data-rel="lightbox-gallery-6fT2fPSv" data-rl_title="" data-rl_caption="" title=""><img loading="lazy" decoding="async" src="https://blog.remontti.com.br/wp-content/uploads/2018/11/zabbix_bot_telegram7-169x300.jpg" alt="" width="169" height="300" class="alignnone size-medium wp-image-2837" srcset="https://blog.remontti.com.br/wp-content/uploads/2018/11/zabbix_bot_telegram7-169x300.jpg 169w, https://blog.remontti.com.br/wp-content/uploads/2018/11/zabbix_bot_telegram7-576x1024.jpg 576w, https://blog.remontti.com.br/wp-content/uploads/2018/11/zabbix_bot_telegram7.jpg 720w" sizes="auto, (max-width: 169px) 100vw, 169px" /></a> <a href="https://blog.remontti.com.br/wp-content/uploads/2018/11/zabbix_bot_telegram8.jpg" data-rel="lightbox-gallery-6fT2fPSv" data-rl_title="" data-rl_caption="" title=""><img loading="lazy" decoding="async" src="https://blog.remontti.com.br/wp-content/uploads/2018/11/zabbix_bot_telegram8-169x300.jpg" alt="" width="169" height="300" class="alignnone size-medium wp-image-2838" srcset="https://blog.remontti.com.br/wp-content/uploads/2018/11/zabbix_bot_telegram8-169x300.jpg 169w, https://blog.remontti.com.br/wp-content/uploads/2018/11/zabbix_bot_telegram8-576x1024.jpg 576w, https://blog.remontti.com.br/wp-content/uploads/2018/11/zabbix_bot_telegram8.jpg 720w" sizes="auto, (max-width: 169px) 100vw, 169px" /></a></p>
<p>Abra em seu seu navegador a seguinte URL <em>https://api.telegram.org/bot<strong>TOKEN</strong>/getUpdates</em> para descobrir o ID do usuário que enviou a mensagem ou de um grupo.<br />
Ex.: <font size="2"><em>https://api.telegram.org/bot<strong><font color="red">757396508:AAHpaoyVN-95maOCax1vDPDQBnSaZd9P5r0</font></strong>/getUpdates</em></font></p>
<p><strong>:: Chat privado ::</strong></p>
<pre class="remontti-code">{&quot;ok&quot;:true,&quot;result&quot;:[{
	&quot;update_id&quot;:649208620,&quot;message&quot;:{
		&quot;message_id&quot;:2,&quot;from&quot;:{&quot;id&quot;:221122111,&quot;is_bot&quot;:false,&quot;first_name&quot;:&quot;Rudimar&quot;,&quot;last_name&quot;:&quot;Remontti&quot;,&quot;username&quot;:&quot;remontti&quot;,&quot;language_code&quot;:&quot;pt-br&quot;},
		&quot;chat&quot;:{&quot;id&quot;:999999999,&quot;first_name&quot;:&quot;Rudimar&quot;,&quot;last_name&quot;:&quot;Remontti&quot;,&quot;username&quot;:&quot;remontti&quot;,&quot;type&quot;:&quot;private&quot;},
		&quot;date&quot;:1541210279,&quot;text&quot;:&quot;Testando&quot;
	}
}]}</pre>
<p>ID do chat privado: <strong>999999999</strong></p>
<p>Se desejar criar um grupo também, basta adicionar seu bot a ele, após adiciona-lo envia uma mensagem como <strong>/teste</strong> para que possamos coletar o ID do grupo.<br />
<a href="https://blog.remontti.com.br/wp-content/uploads/2018/11/zabbix_bot_telegram9.jpg" data-rel="lightbox-gallery-6fT2fPSv" data-rl_title="" data-rl_caption="" title=""><img loading="lazy" decoding="async" src="https://blog.remontti.com.br/wp-content/uploads/2018/11/zabbix_bot_telegram9-169x300.jpg" alt="" width="169" height="300" class="alignnone size-medium wp-image-2843" srcset="https://blog.remontti.com.br/wp-content/uploads/2018/11/zabbix_bot_telegram9-169x300.jpg 169w, https://blog.remontti.com.br/wp-content/uploads/2018/11/zabbix_bot_telegram9-576x1024.jpg 576w, https://blog.remontti.com.br/wp-content/uploads/2018/11/zabbix_bot_telegram9.jpg 720w" sizes="auto, (max-width: 169px) 100vw, 169px" /></a> <a href="https://blog.remontti.com.br/wp-content/uploads/2018/11/zabbix_bot_telegram10.jpg" data-rel="lightbox-gallery-6fT2fPSv" data-rl_title="" data-rl_caption="" title=""><img loading="lazy" decoding="async" src="https://blog.remontti.com.br/wp-content/uploads/2018/11/zabbix_bot_telegram10-169x300.jpg" alt="" width="169" height="300" class="alignnone size-medium wp-image-2844" srcset="https://blog.remontti.com.br/wp-content/uploads/2018/11/zabbix_bot_telegram10-169x300.jpg 169w, https://blog.remontti.com.br/wp-content/uploads/2018/11/zabbix_bot_telegram10-576x1024.jpg 576w, https://blog.remontti.com.br/wp-content/uploads/2018/11/zabbix_bot_telegram10.jpg 720w" sizes="auto, (max-width: 169px) 100vw, 169px" /></a></p>
<p><strong>:: Chat em Grupo ::</strong></p>
<pre class="remontti-code">{&quot;ok&quot;:true,&quot;result&quot;:[{
	&quot;update_id&quot;:649208622,&quot;message&quot;:{&quot;message_id&quot;:4,&quot;from&quot;:{
		&quot;id&quot;:221122111,&quot;is_bot&quot;:false,&quot;first_name&quot;:&quot;Rudimar&quot;,&quot;last_name&quot;:&quot;Remontti&quot;,&quot;username&quot;:&quot;remontti&quot;,&quot;language_code&quot;:&quot;pt-br&quot;},
		&quot;chat&quot;:{&quot;id&quot;:-1000000000000,&quot;title&quot;:&quot;Grupo Legal&quot;,&quot;type&quot;:&quot;group&quot;,&quot;all_members_are_administrators&quot;:true
	},&quot;date&quot;:1541210975,&quot;text&quot;:&quot;/teste&quot;,&quot;entities&quot;:[{&quot;offset&quot;:0,&quot;length&quot;:6,&quot;type&quot;:&quot;bot_command&quot;}
}]}</pre>
<p>ID do chat grupo: <strong>-1000000000000</strong></p>
<p>Agora que já temos o Token e o ID do chat/grupo vamos ao script de backup. Se ainda estiver com dificuldade no <a href="https://www.youtube.com/watch?v=-ylbrUyNRZE" rel="noopener noreferrer" target="_blank">vídeo onde ensino integrar com o zabbix</a> aos 52 min explico como criar o bot.</p>
<p>Não esqueça q para o bot enviar algo para você é necessários iniciar uma conversa com o mesmo.<br />
Antes faça um teste abrindo no seu navegador <em>https://api.telegram.org/botTOKEN/sendMessage?chat_id=ID&#038;text=Mensagem</em> ou diretamente pelo terminal com curl.</p>
<pre class="remontti-code"># apt install curl </pre>
<p>Ex.: Enviando mensagem para um usuário</p>
<pre class="remontti-code"># curl --silent -X POST \
 --data-urlencode &quot;chat_id=8888888&quot; \
 --data-urlencode &quot;text=Enviando para usuário&quot; \
 &quot;https://api.telegram.org/bot757396508:AAHpaoyVN-95maOCax1vDPDQBnSaZd9P5r0/sendMessage&quot;</pre>
<p>Ex.: Enviando mensagem para um grupo (Não torne o grupo público para sua segurança)</p>
<pre class="remontti-code"># curl --silent -X POST \
 --data-urlencode &quot;chat_id=-1000000000000&quot; \
 --data-urlencode &quot;text=Enviando para o Grupo&quot; \
 &quot;https://api.telegram.org/bot757396508:AAHpaoyVN-95maOCax1vDPDQBnSaZd9P5r0/sendMessage&quot;</pre>
<p>Se as mensagens chegaram estamos preparados para fazer nossos backups com o telegram.</p>
<hr>
<h3>Scripts</h3>
<p>Pacotes requeridos:</p>
<pre class="remontti-code"># apt install curl wget zip unzip</pre>
<p>Para ficar algo organizado vou criar uma pasta onde colocarei todos os scripts</p>
<pre class="remontti-code"># mkdir /etc/backups/</pre>
<p>Como normalmente eu uso o telegram mesmo que seja apenas para notificar que um backup foi feto, vou criar uma pasta chamada para fazer toda a configuração do bot nela, criei um novo script com base no <a href="https://github.com/remontti/TelegramCMD" target="_blank" rel="noopener noreferrer">código</a> que utilizei no tutorial do <a href="https://blog.remontti.com.br/3981" rel="noopener noreferrer" target="_blank">Fastnetmon</a>, assim toda vez que for chamar telegram para enviar mensagem ou arquivo basta executa-lo sem sofrimero e varias linhas. Bora prepara-ló! </p>
<h3>Preparando o script do telegram (bot)</h3>
<pre class="remontti-code"># wget https://raw.githubusercontent.com/remontti/telegramBotShell/master/telegram -O /bin/telegram
# chmod +x /bin/telegram</pre>
<p>Alterando o TOKEN:</p>
<pre class="remontti-code"># vim /bin/telegram</pre>
<p>Altere o TOKEN e o formato da compactação (zip ou tar)<br />
Altere o token:</p>
<pre class="remontti-code">TOKEN=&quot;000000000:0000000000000-0000000000000000000000000000000&quot;</pre>
<p>Escolha o metodo de compactação tar/zip</p>
<pre class="remontti-code">COMPAC=&#039;tar&#039;</pre>
<p><strong>Como usar?</strong></p>
<p><strong>-m:</strong> Para enviar uma mensagem</p>
<pre class="remontti-code"># telegram -m &quot;-ID Chat&quot; &quot;Mensagem linha 1&quot; &quot;Mensagem linha 2&quot; &quot;Mensagem linha 3&quot;
# telegram -m &quot;ID Usuário&quot; &quot;Mensagem linha 1&quot; &quot;Mensagem linha 2&quot; &quot;Mensagem linha 3&quot;</pre>
<p><strong>-f:</strong> Para enviar um arquivo</p>
<pre class="remontti-code"># telegram -f &quot;-100000000&quot; &quot;/diretorio/arquivo&quot; &quot;nome do arquivo compactado&quot; &quot;Comentário&quot;
# telegram -f &quot;12345689&quot; &quot;/var/log/syslog&quot; &quot;syslog&quot; &quot;Logs do sistema&quot;</pre>
<p>Faça seu testes! Vale lembrar que toda vez que o script do telegram envia um arquivo ele irá compactar e remover este arquivo do servidor após envio.</p>
<h3>Preparando o script para envido do backup via SSH</h3>
<pre class="remontti-code">
# apt install sshpass
# wget https://raw.githubusercontent.com/remontti/backupSSH/master/backup -O /bin/backup
# chmod +x /bin/backup</pre>
<p><strong>Como usar?</strong><br />
Ex.:</p>
<pre class="remontti-code"># backup &quot;nome para o arquivo&quot; &quot;diretório ou diretórios a salvar&quot;  &quot;usuário ssh&quot; &quot;senha ssh&quot; &quot;IP Serv&quot; &quot;Porta ssh&quot; &quot;diretorio de destino&quot;
# backup &quot;etc&quot; &quot;/etc/*&quot;  &quot;jose&quot; &quot;123456&quot; &quot;192.168.0.200&quot; &quot;22&quot; &quot;/home/jose/backup&quot;</pre>
<hr>
<h3>Backups Telegram</h3>
<hr>
<h4><img src="https://s.w.org/images/core/emoji/17.0.2/72x72/2665.png" alt="♥" class="wp-smiley" style="height: 1em; max-height: 1em;" /> Backup de um diretório</h4>
<p>Vamos imaginar que gostaríamos de salvar o diretório /etc/frr/*</p>
<pre class="remontti-code"># vim /etc/backups/backup_frr_telegram.sh</pre>
<p>Adicionaremos apenas o ID usuário ou grupo (lembre-se que grupo sempre tem um &#8220;-&#8221; antes do ID) ex:</p>
<pre class="remontti-code">#!/bin/bash
/bin/telegram -f &quot;200000000&quot; &quot;/etc/frr/*&quot; &quot;frr&quot; &quot;Backup FRR&quot;</pre>
<p>De permissão para execução: </p>
<pre class="remontti-code"># chmod +x /etc/backups/backup_frr_telegram.sh</pre>
<p>Basta rodar agora o script </p>
<pre class="remontti-code"># /etc/backups/backup_frr_telegram.sh</pre>
<p><img loading="lazy" decoding="async" src="https://blog.remontti.com.br/wp-content/uploads/2020/08/backup_frr_telegram.png" alt="" width="329" height="106" class="alignnone size-full wp-image-4812" srcset="https://blog.remontti.com.br/wp-content/uploads/2020/08/backup_frr_telegram.png 329w, https://blog.remontti.com.br/wp-content/uploads/2020/08/backup_frr_telegram-300x97.png 300w" sizes="auto, (max-width: 329px) 100vw, 329px" /></p>
<p>Já já vamos ver como adiciona-lo no CRON (Agenda) para tornar isso automático. </p>
<hr>
<h4><img src="https://s.w.org/images/core/emoji/17.0.2/72x72/2665.png" alt="♥" class="wp-smiley" style="height: 1em; max-height: 1em;" /> Backup de múltiplos diretórios</h4>
<p>Vamos imaginar que gostaríamos de salvar todos os diretórios do bind9, para isso basta adicionar todos os diretórios/arquivos entre aspas <em>&#8220;/etc/bind/* /usr/share/dns/* /var/cache/bind/*&#8221; </em></p>
<pre class="remontti-code"># vim /etc/backups/backup_bind_telegram.sh</pre>
<p>Altere o ID usuário/grupo (lembre-se que grupo sempre tem um &#8220;-&#8221; antes do ID) ex:</p>
<pre class="remontti-code">#!/bin/bash
/bin/telegram -f &quot;200000000&quot; &quot;/etc/bind/* /usr/share/dns/* /var/cache/bind/*&quot; &quot;ns1&quot; &quot;Backup Bind&quot;</pre>
<p>De permissão para execução: </p>
<pre class="remontti-code"># chmod +x /etc/backups/backup_bind_telegram.sh</pre>
<p>Basta rodar agora o script </p>
<pre class="remontti-code"># /etc/backups/backup_bind_telegram.sh</pre>
<hr>
<h4><img src="https://s.w.org/images/core/emoji/17.0.2/72x72/2665.png" alt="♥" class="wp-smiley" style="height: 1em; max-height: 1em;" /> Backup de um banco de dados Mysql/MariaDB</h4>
<p>Neste exemplo vamos fazer backup do banco de dados <strong>&#8220;radius&#8221;</strong>. Altere as variáveis informando usuário/senha do seu banco de dados bem como nome do banco e ID do telegram.</p>
<pre class="remontti-code">#!/bin/bash
# Autor: remontti.com.br
# --------------------------------------
# USUARIO  DO BANCO DE DADOS
USER_DB=&#039;root&#039;
# SENHA DO BANCO DE DADOS
SENHA_DB=&#039;senha&#039;
# NOME DO BANCO DE DADOS
NOME_BANCO=&#039;radius&#039;
# NOME PARA O BACKUP
NOME_DO_BKP=&#039;Freeradius&#039;
# ID TELEGRAM
ID_TELEGRAM=&#039;-123456789000&#039;
# --------------------------------------
DATABKP=`date +%Y-%m-%d`
NOME_BD=&quot;/tmp/${NOME_BANCO}.${DATABKP}.tar.gz&quot;
mysqldump -h 127.0.0.1 -u ${USER_DB} -p${SENHA_DB} -B ${NOME_BANCO} &gt; /tmp/${NOME_BANCO}.${DATABKP}.sql 
/bin/telegram -f &quot;${ID_TELEGRAM}&quot; &quot;/tmp/${NOME_BANCO}.${DATABKP}.sql&quot; &quot;${NOME_DO_BKP}&quot; &quot;${NOME_BANCO}&quot; &amp;&gt;/dev/null
rm -f /tmp/*.sql &amp;&gt;/dev/null</pre>
<hr>
<h4><img src="https://s.w.org/images/core/emoji/17.0.2/72x72/2665.png" alt="♥" class="wp-smiley" style="height: 1em; max-height: 1em;" /> Backup de &#8220;todos&#8221; os banco de dados Mysql/MariaDB</h4>
<p>Neste exemplo vamos fazer backup de &#8220;todos&#8221; os bancos de dados do servidor.<br />
Perceba que o comando: </p>
<pre class="remontti-code"># ls -d /var/lib/mysql/*/ |cut -d / -f 5</pre>
<p>Listará todas as bases, porém o com &#8220;grep -v&#8221; ignoro alguns bancos que não acho necessário.</p>
<pre class="remontti-code"># ls -d /var/lib/mysql/*/ |cut -d / -f 5 |grep -v mysql |grep -v performance_schema</pre>
<p>Altere as variáveis informando usuário/senha do seu banco de dados bem como ID do telegram.</p>
<pre class="remontti-code">#!/bin/bash
# Autor: remontti.com.br
# --------------------------------------
# USUARIO  DO BANCO DE DADOS
USER_DB=&#039;root&#039;
# SENHA DO BANCO DE DADOS
SENHA_DB=&#039;senha&#039;
# NOME PARA O BACKUP
NOME_DO_BKP=&#039;ServidorWeb&#039;
# ID TELEGRAM
ID_TELEGRAM=&#039;-123456789000&#039;
# --------------------------------------

for BANCO in `ls -d /var/lib/mysql/*/ |cut -d / -f 5 |grep -v mysql |grep -v performance_schema`
do
    DATABKP=`date +%Y-%m-%d`
    NOME_BD=&quot;/tmp/${BANCO}.${DATABKP}.tar.gz&quot;
    mysqldump -h 127.0.0.1 -u ${USER_DB} -p${SENHA_DB} -B ${BANCO} &gt; /tmp/${BANCO}.${DATABKP}.sql 
done;
/bin/telegram -f &quot;${ID_TELEGRAM}&quot; &quot;/tmp/*.sql&quot; &quot;${NOME_DO_BKP}&quot; &quot;Backup BDs&quot; 
rm -f /tmp/*.sql &amp;&gt;/dev/null</pre>
<hr>
<h4><img src="https://s.w.org/images/core/emoji/17.0.2/72x72/2665.png" alt="♥" class="wp-smiley" style="height: 1em; max-height: 1em;" /> Backup do Zabbix-Server (Apenas do que interessa)</h4>
<p>Para o backup do zabbix utilizo um script do <a href="https://github.com/maxhq/zabbix-backup">maxhq</a> que faz um dump apenas da parte da base que nos interessa, isso significa que você não terá salvo o historio das &#8220;coisa&#8221;! Porém realizei um <a href="https://github.com/remontti/zabbix-backup" rel="noopener" target="_blank">fork</a> do projeto qual fiz alguns ajustes para dar suporte ao zabbix 5.<br />
Vamos baixa-lo em nosso diretório:</p>
<pre class="remontti-code"># cd /etc/backups/ 
# wget https://raw.githubusercontent.com/remontti/zabbix-backup/master/zabbix-dump
# chmod +x /etc/backups/zabbix-dump</pre>
<p>Crie seu script</p>
<pre class="remontti-code"># vim /etc/backups/backup_zbx.sh</pre>
<pre class="remontti-code">#!/bin/bash
# ----Config ----
ID_TELEGRAM=&#039;-123456789000&#039;
# ---------------
/etc/backups/zabbix-dump -o /tmp &amp;&gt;/dev/null
/bin/telegram -f &quot;${ID_TELEGRAM}&quot; &quot;/tmp/zabbix_cfg*.gz&quot; &quot;zabbix&quot; &quot;Backup Bind&quot;
rm -f /tmp/*.gz</pre>
<p>Permissões:</p>
<pre class="remontti-code"># chmod +x /etc/backups/backup_zbx.sh</pre>
<p>Execute:</p>
<pre class="remontti-code"># /etc/backups/backup_zbx.sh</pre>
<hr>
<h3>Backups SSH</h3>
<hr>
<p>Neste caso tenho o um servidor que irá receber nossos backups, sendo:</p>
<pre class="remontti-code-plain">IP: 172.16.0.100 
Porta SSH: 60321
Usuários: jose
Senha: 123456
Diretório onde ficará os backups: /home/jose/backup/</pre>
<hr>
<h4><img src="https://s.w.org/images/core/emoji/17.0.2/72x72/2665.png" alt="♥" class="wp-smiley" style="height: 1em; max-height: 1em;" /> Backup de um diretório</h4>
<p>Vamos fazer o mesmo backup que fizemos anterior do &#8220;/etc/frr/*&#8221;.</p>
<pre class="remontti-code"># vim /etc/backups/backup_frr_ssh.sh</pre>
<pre class="remontti-code">#!/bin/bash
# /bin/backup &quot;todo_etc&quot; &quot;/etc/*&quot; &quot;jose&quot; &quot;123456&quot; &quot;172.16.0.100&quot; &quot;60321&quot; &quot;/home/jose/backup&quot;</pre>
<p>Permissão: </p>
<pre class="remontti-code"># chmod +x /etc/backups/backup_frr_ssh.sh</pre>
<p>Execute:</p>
<pre class="remontti-code"># /etc/backups/backup_frr_ssh.sh</pre>
<hr>
<h4><img src="https://s.w.org/images/core/emoji/17.0.2/72x72/2665.png" alt="♥" class="wp-smiley" style="height: 1em; max-height: 1em;" /> Backup de múltiplos diretórios</h4>
<p>Ex backup DNS bind9</p>
<pre class="remontti-code"># vim /etc/backups/backup_bind_ssh.sh</pre>
<pre class="remontti-code">#!/bin/bash
# /bin/backup &quot;ns1_dns&quot; &quot;/etc/bind/* /usr/share/dns/* /var/cache/bind/*&quot; &quot;jose&quot; &quot;123456&quot; &quot;172.16.0.100&quot; &quot;60321&quot; &quot;/home/jose/backup&quot;</pre>
<p>Permissão: </p>
<pre class="remontti-code"># chmod +x /etc/backups/backup_bind_ssh.sh</pre>
<p>Execute:</p>
<pre class="remontti-code"># /etc/backups/backup_bind_ssh.sh</pre>
<hr>
<h4><img src="https://s.w.org/images/core/emoji/17.0.2/72x72/2665.png" alt="♥" class="wp-smiley" style="height: 1em; max-height: 1em;" /> Backup de um banco de dados Mysql/MariaDB</h4>
<pre class="remontti-code"># vim /etc/backups/backup_bd_ssh.sh</pre>
<pre class="remontti-code">#!/bin/bash
# Autor: remontti.com.br
# --------------------------------------
# USUARIO  DO BANCO DE DADOS
USER_DB=&#039;root&#039;
# SENHA DO BANCO DE DADOS
SENHA_DB=&#039;senha&#039;
# NOME DO BANCO DE DADOS
NOME_BANCO=&#039;radius&#039;
# NOME PARA O BACKUP
NOME_DO_BKP=&#039;Freeradius&#039;
# ID TELEGRAM
ID_TELEGRAM=&#039;-123456789000&#039;
#----Servidor que recebe o Backup ------
# Usuários SSH
USER_SSH=&#039;jose&#039;
# Senha SSH
PASS_SSH=&#039;senha&#039;
# Porta SSH
PORT_SSH=&#039;22&#039;
# Diretório onde ira salvar
DIR_SSH=&#039;/home/jose/backup&#039;
# IP do servidor 
IP_SSH=&#039;172.16.0.100&#039;
# --------------------------------------
DATABKP=`date +%Y-%m-%d`
NOME_BD=&quot;/tmp/${NOME_BANCO}.${DATABKP}.tar.gz&quot;
mysqldump -h 127.0.0.1 -u ${USER_DB} -p${SENHA_DB} -B ${NOME_BANCO} &gt; /tmp/${NOME_BANCO}.${DATABKP}.sql 
backup &quot;${NOME_DO_BKP}&quot; &quot;/tmp/${NOME_BANCO}.${DATABKP}.sql&quot; &quot;${USER_SSH}&quot; &quot;${PASS_SSH}&quot; &quot;${IP_SSH}&quot; &quot;${PORT_SSH}&quot; &quot;${DIR_SSH}&quot;
rm -f /tmp/*.sql &amp;&gt;/dev/null</pre>
<p>Permissão: </p>
<pre class="remontti-code"># chmod +x /etc/backups/backup_bd_ssh.sh</pre>
<p>Execute:</p>
<pre class="remontti-code"># /etc/backups/backup_bd_ssh.sh</pre>
<hr>
<h4><img src="https://s.w.org/images/core/emoji/17.0.2/72x72/2665.png" alt="♥" class="wp-smiley" style="height: 1em; max-height: 1em;" /> Backup de &#8220;todos&#8221; os banco de dados Mysql/MariaDB</h4>
<pre class="remontti-code"># vim /etc/backups/backup_bdall_ssh.sh</pre>
<pre class="remontti-code">#!/bin/bash
# Autor: remontti.com.br
# --------------------------------------
# USUARIO  DO BANCO DE DADOS
USER_DB=&#039;root&#039;
# SENHA DO BANCO DE DADOS
SENHA_DB=&#039;senha&#039;
# NOME PARA O BACKUP
NOME_DO_BKP=&#039;ServidorWeb&#039;
# ID TELEGRAM
ID_TELEGRAM=&#039;-123456789000&#039;
#----Servidor que recebe o Backup ------
# Usuários SSH
USER_SSH=&#039;jose&#039;
# Senha SSH
PASS_SSH=&#039;senha&#039;
# Porta SSH
PORT_SSH=&#039;22&#039;
# Diretório onde ira salvar
DIR_SSH=&#039;/home/jose/backup&#039;
# IP do servidor 
IP_SSH=&#039;172.16.0.100&#039;
# --------------------------------------
 
for BANCO in `ls -d /var/lib/mysql/*/ |cut -d / -f 5 |grep -v mysql |grep -v performance_schema`
do
    DATABKP=`date +%Y-%m-%d`
    NOME_BD=&quot;/tmp/${BANCO}.${DATABKP}.tar.gz&quot;
    mysqldump -h 127.0.0.1 -u ${USER_DB} -p${SENHA_DB} -B ${BANCO} &gt; /tmp/${BANCO}.${DATABKP}.sql 
done;
backup &quot;${NOME_DO_BKP}&quot; &quot;/tmp/*.sql&quot; &quot;${USER_SSH}&quot; &quot;${PASS_SSH}&quot; &quot;${IP_SSH}&quot; &quot;${PORT_SSH}&quot; &quot;${DIR_SSH}&quot;
rm -f /tmp/*.sql &amp;&gt;/dev/null</pre>
<p>Permissão: </p>
<pre class="remontti-code"># chmod +x /etc/backups/backup_bdall_ssh.sh</pre>
<p>Execute:</p>
<pre class="remontti-code"># /etc/backups/backup_bdall_ssh.sh</pre>
<hr>
<h4><img src="https://s.w.org/images/core/emoji/17.0.2/72x72/2665.png" alt="♥" class="wp-smiley" style="height: 1em; max-height: 1em;" /> Backup do Zabbix-Server (Apenas do que interessa)</h4>
<p>Para o backup do zabbix utilizo um script do <a href="https://github.com/maxhq/zabbix-backup">maxhq</a> que faz um dump apenas da parte da base que nos interessa, isso significa que você não terá salvo o historio das &#8220;coisa&#8221;! Porém realizei um <a href="https://github.com/remontti/zabbix-backup" rel="noopener" target="_blank">fork</a> do projeto qual fiz alguns ajustes para dar suporte ao zabbix 5.<br />
Vamos baixa-lo em nosso diretório:</p>
<pre class="remontti-code"># cd /etc/backups/ 
# wget https://raw.githubusercontent.com/remontti/zabbix-backup/master/zabbix-dump
chmod +x /etc/backups/zabbix-dump</pre>
<p>Crie seu script</p>
<pre class="remontti-code"># vim /etc/backups/backup_zbx_ssh.sh</pre>
<pre class="remontti-code">#!/bin/bash
# Autor: remontti.com.br
#----Servidor que recebe o Backup ------
# Usuários SSH
USER_SSH=&#039;jose&#039;
# Senha SSH
PASS_SSH=&#039;senha&#039;
# Porta SSH
PORT_SSH=&#039;22&#039;
# Diretório onde ira salvar
DIR_SSH=&#039;/home/jose/backup&#039;
# IP do servidor 
IP_SSH=&#039;172.16.0.100&#039;
# --------------------------------------
/etc/backups/zabbix-dump  -o /tmp &amp;&gt;/dev/null
backup &quot;zabbix&quot; &quot;/tmp/zabbix_cfg*.gz&quot; &quot;${USER_SSH}&quot; &quot;${PASS_SSH}&quot; &quot;${IP_SSH}&quot; &quot;${PORT_SSH}&quot; &quot;${DIR_SSH}&quot;
rm -f /tmp/*.gz</pre>
<p>Permissões:</p>
<pre class="remontti-code"># chmod +x /etc/backups/backup_zbx_ssh.sh</pre>
<p>Execute:</p>
<pre class="remontti-code"># /etc/backups/backup_zbx_ssh.sh</pre>
<hr>
<p>Bom com base nesses scripts e um pouco de imaginação acredito que você vai conseguir fazer muita coisa, mas como automatizar? Veremos isso agora!</p>
<h3>Agendando o backup (Cron)</h3>
<p>Vamos agendar nosso(s) scripts para serem feitos em algumas situações:</p>
<p>Execute o comando crontab -e.</p>
<pre class="remontti-code"># crontab -e</pre>
<p>A primeira vez que você rodar o comando será solicitado qual editor você deseja, vou selecionar o nano &#8220;1&#8221; (ou apenas de Enter) por ser o mais fácil. Vale a leitura também: <a href="https://blog.remontti.com.br/90" rel="noopener noreferrer" target="_blank">Agendamento CRON / CRONTAB</a> e <a href="https://help.ubuntu.com/community/CronHowto" rel="noopener noreferrer" target="_blank">CronHowto</a></p>
<pre class="remontti-code">Select an editor.  To change later, run &#039;select-editor&#039;.
  1. /bin/nano        &lt;---- easiest
  2. /usr/bin/vim.basic
  3. /usr/bin/vim.tiny

Choose 1-3 [1]: 1 [ENTER]</pre>
<p>Você precisa entender a ordem dos valores interpretado pelo cron:</p>
<pre class="remontti-code"># m h  dom mon dow   command
# * *  *   *   *     comando
# | |  |   |   |     |_ _ _ _ Comando a ser executado
# | |  |   |   |_ _ _ _ _ _ _ Semana (0-7 - domingo à domingo)
# | |  |   |_ _ _ _ _ _ _ _ _ Mês (01-12)
# | |  |_ _ _ _ _ _ _ _ _ _ _ Dia (01-31)
# | |_ _ _ _ _ _ _ _ _ _ _ _ _Hora (00-23)
# |_ _ _ _ _ _ _ _ _ _ _ _ _ _Minuto (00-59)
</pre>
<h5>Alguns exemplos</h5>
<p>Executar um backup todos os dias às 20h e 30min:</p>
<pre class="remontti-code">30 20  *   *   *     /etc/backups/backup_script.sh</pre>
<p>Todo dia primeiro do mês às 00h e 45min:</p>
<pre class="remontti-code">45 00  1   *   *     /etc/backups/backup_script.sh</pre>
<p>Toda segunda-feira às 04h:</p>
<pre class="remontti-code">00 04  *   1   *     /etc/backups/backup_script.sh</pre>
<p>Curtiu o conteúdo? Quer me ajudar? <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>Participe do canal no <a href="https://t.me/blogremontti" rel="noopener noreferrer" target="_blank">telegram</a> para ficar atualizado sempre que publicar um novo tutorial. </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>Abraço!</p>
<p>O post <a href="https://blog.remontti.com.br/4791">Criando backups de forma simples e enviando para o Telegram ou servidor via SSH</a> apareceu primeiro em <a href="https://blog.remontti.com.br">Remontti</a>.</p>
]]></content:encoded>
					
					<wfw:commentRss>https://blog.remontti.com.br/4791/feed</wfw:commentRss>
			<slash:comments>6</slash:comments>
		
		
			</item>
		<item>
		<title>Zabbix 4.0 + Alertas no Telegram via Bot</title>
		<link>https://blog.remontti.com.br/2817</link>
					<comments>https://blog.remontti.com.br/2817#comments</comments>
		
		<dc:creator><![CDATA[Rudimar Remontti]]></dc:creator>
		<pubDate>Sat, 03 Nov 2018 20:11:46 +0000</pubDate>
				<category><![CDATA[Linux]]></category>
		<category><![CDATA[Tutoriais]]></category>
		<category><![CDATA[4.0]]></category>
		<category><![CDATA[bot]]></category>
		<category><![CDATA[curl]]></category>
		<category><![CDATA[notificações]]></category>
		<category><![CDATA[Script]]></category>
		<category><![CDATA[telegram]]></category>
		<category><![CDATA[terminal]]></category>
		<category><![CDATA[token]]></category>
		<category><![CDATA[zabbix]]></category>
		<category><![CDATA[zabbix 4]]></category>
		<category><![CDATA[zabbix4]]></category>
		<guid isPermaLink="false">https://blog.remontti.com.br/?p=2817</guid>

					<description><![CDATA[<p>Existe um tutorial mais atualizado Zabbix 4.2 enviando alertas no Telegram via Bot (Debian 10) Vamos aprender como receber os alertas do zabbix através do telegram. Para instalação do Zabbix 4.0 Instalação do Zabbix&#46;&#46;&#46;</p>
<p>O post <a href="https://blog.remontti.com.br/2817">Zabbix 4.0 + Alertas no Telegram via Bot</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/2018/11/zabbix-4.0-telegram.jpg" alt="" width="719" height="342" class="alignnone size-full wp-image-2879" srcset="https://blog.remontti.com.br/wp-content/uploads/2018/11/zabbix-4.0-telegram.jpg 719w, https://blog.remontti.com.br/wp-content/uploads/2018/11/zabbix-4.0-telegram-300x143.jpg 300w" sizes="auto, (max-width: 719px) 100vw, 719px" /></p>
<h2><font color="red">Existe um tutorial mais atualizado</font> <a href="https://blog.remontti.com.br/3053" rel="noopener noreferrer" target="_blank">Zabbix 4.2 enviando alertas no Telegram via Bot (Debian 10)</a></h2>
<p>Vamos aprender como receber os alertas do zabbix através do telegram.</p>
<p><strong>Para instalação do Zabbix 4.0</strong><br />
<a href="https://blog.remontti.com.br/2126" rel="noopener noreferrer" target="_blank">Instalação do Zabbix 4.0 / 3.4 / 3.0 no Debian 9 Stretch com banco de dados MariaBD</a></p>
<p><strong>Criando nosso bot</strong></p>
<p>Abra APP do telegram e procure por <a href="https://t.me/BotFather" rel="noopener noreferrer" target="_blank"><strong>@BotFather</strong></a> Comece uma uma conversa com ele.<br />
<a href="https://blog.remontti.com.br/wp-content/uploads/2018/11/zabbix_bot_telegram1.jpg" data-rel="lightbox-gallery-8i99ZVGi" data-rl_title="" data-rl_caption="" title=""><img loading="lazy" decoding="async" src="https://blog.remontti.com.br/wp-content/uploads/2018/11/zabbix_bot_telegram1-169x300.jpg" alt="" width="169" height="300" class="alignnone size-medium wp-image-2823" srcset="https://blog.remontti.com.br/wp-content/uploads/2018/11/zabbix_bot_telegram1-169x300.jpg 169w, https://blog.remontti.com.br/wp-content/uploads/2018/11/zabbix_bot_telegram1-576x1024.jpg 576w, https://blog.remontti.com.br/wp-content/uploads/2018/11/zabbix_bot_telegram1.jpg 720w" sizes="auto, (max-width: 169px) 100vw, 169px" /></a> <a href="https://blog.remontti.com.br/wp-content/uploads/2018/11/zabbix_bot_telegram2.jpg" data-rel="lightbox-gallery-8i99ZVGi" data-rl_title="" data-rl_caption="" title=""><img loading="lazy" decoding="async" src="https://blog.remontti.com.br/wp-content/uploads/2018/11/zabbix_bot_telegram2-169x300.jpg" alt="" width="169" height="300" class="alignnone size-medium wp-image-2826" srcset="https://blog.remontti.com.br/wp-content/uploads/2018/11/zabbix_bot_telegram2-169x300.jpg 169w, https://blog.remontti.com.br/wp-content/uploads/2018/11/zabbix_bot_telegram2-576x1024.jpg 576w, https://blog.remontti.com.br/wp-content/uploads/2018/11/zabbix_bot_telegram2.jpg 720w" sizes="auto, (max-width: 169px) 100vw, 169px" /></a> <a href="https://blog.remontti.com.br/wp-content/uploads/2018/11/zabbix_bot_telegram3.jpg" data-rel="lightbox-gallery-8i99ZVGi" data-rl_title="" data-rl_caption="" title=""><img loading="lazy" decoding="async" src="https://blog.remontti.com.br/wp-content/uploads/2018/11/zabbix_bot_telegram3-169x300.jpg" alt="" width="169" height="300" class="alignnone size-medium wp-image-2827" srcset="https://blog.remontti.com.br/wp-content/uploads/2018/11/zabbix_bot_telegram3-169x300.jpg 169w, https://blog.remontti.com.br/wp-content/uploads/2018/11/zabbix_bot_telegram3-576x1024.jpg 576w, https://blog.remontti.com.br/wp-content/uploads/2018/11/zabbix_bot_telegram3.jpg 720w" sizes="auto, (max-width: 169px) 100vw, 169px" /></a></p>
<p>Agora digite <strong>/newbot</strong> para criar um novo bot. Após o comando você vai dar um nome <em>&#8220;Bot Legal RR&#8221;</em>. Em seguida é necessário digitar o nome de login sendo obrigatório terminar com <strong>bot</strong> <em>&#8220;legallrr_bot&#8221;</em>. Você vai ter um retorno com token que vamos utilizar em seguida.<br />
<a href="https://blog.remontti.com.br/wp-content/uploads/2018/11/zabbix_bot_telegram4.jpg" data-rel="lightbox-gallery-8i99ZVGi" data-rl_title="" data-rl_caption="" title=""><img loading="lazy" decoding="async" src="https://blog.remontti.com.br/wp-content/uploads/2018/11/zabbix_bot_telegram4-169x300.jpg" alt="" width="169" height="300" class="alignnone size-medium wp-image-2830" srcset="https://blog.remontti.com.br/wp-content/uploads/2018/11/zabbix_bot_telegram4-169x300.jpg 169w, https://blog.remontti.com.br/wp-content/uploads/2018/11/zabbix_bot_telegram4-576x1024.jpg 576w, https://blog.remontti.com.br/wp-content/uploads/2018/11/zabbix_bot_telegram4.jpg 720w" sizes="auto, (max-width: 169px) 100vw, 169px" /></a> <a href="https://blog.remontti.com.br/wp-content/uploads/2018/11/zabbix_bot_telegram5.jpg" data-rel="lightbox-gallery-8i99ZVGi" data-rl_title="" data-rl_caption="" title=""><img loading="lazy" decoding="async" src="https://blog.remontti.com.br/wp-content/uploads/2018/11/zabbix_bot_telegram5-169x300.jpg" alt="" width="169" height="300" class="alignnone size-medium wp-image-2833" srcset="https://blog.remontti.com.br/wp-content/uploads/2018/11/zabbix_bot_telegram5-169x300.jpg 169w, https://blog.remontti.com.br/wp-content/uploads/2018/11/zabbix_bot_telegram5-576x1024.jpg 576w, https://blog.remontti.com.br/wp-content/uploads/2018/11/zabbix_bot_telegram5.jpg 720w" sizes="auto, (max-width: 169px) 100vw, 169px" /></a> <a href="https://blog.remontti.com.br/wp-content/uploads/2018/11/zabbix_bot_telegram6.jpg" data-rel="lightbox-gallery-8i99ZVGi" data-rl_title="" data-rl_caption="" title=""><img loading="lazy" decoding="async" src="https://blog.remontti.com.br/wp-content/uploads/2018/11/zabbix_bot_telegram6-169x300.jpg" alt="" width="169" height="300" class="alignnone size-medium wp-image-2835" srcset="https://blog.remontti.com.br/wp-content/uploads/2018/11/zabbix_bot_telegram6-169x300.jpg 169w, https://blog.remontti.com.br/wp-content/uploads/2018/11/zabbix_bot_telegram6-576x1024.jpg 576w, https://blog.remontti.com.br/wp-content/uploads/2018/11/zabbix_bot_telegram6.jpg 720w" sizes="auto, (max-width: 169px) 100vw, 169px" /></a></p>
<p>Nosso token para acessar a API HTTP:<br />
<strong>757396508:AAHpaoyVN-95maOCax1vDPDQBnSaZd9P5r0</strong></p>
<p>Agora procure pelo seu bot e comece uma conversa com ele e envie uma mensagem de teste para o mesmo, pois vamos precisar descobrir o ID do seu usuário, para que ele possa lhe enviar as mensagens.<br />
<a href="https://blog.remontti.com.br/wp-content/uploads/2018/11/zabbix_bot_telegram7.jpg" data-rel="lightbox-gallery-8i99ZVGi" data-rl_title="" data-rl_caption="" title=""><img loading="lazy" decoding="async" src="https://blog.remontti.com.br/wp-content/uploads/2018/11/zabbix_bot_telegram7-169x300.jpg" alt="" width="169" height="300" class="alignnone size-medium wp-image-2837" srcset="https://blog.remontti.com.br/wp-content/uploads/2018/11/zabbix_bot_telegram7-169x300.jpg 169w, https://blog.remontti.com.br/wp-content/uploads/2018/11/zabbix_bot_telegram7-576x1024.jpg 576w, https://blog.remontti.com.br/wp-content/uploads/2018/11/zabbix_bot_telegram7.jpg 720w" sizes="auto, (max-width: 169px) 100vw, 169px" /></a> <a href="https://blog.remontti.com.br/wp-content/uploads/2018/11/zabbix_bot_telegram8.jpg" data-rel="lightbox-gallery-8i99ZVGi" data-rl_title="" data-rl_caption="" title=""><img loading="lazy" decoding="async" src="https://blog.remontti.com.br/wp-content/uploads/2018/11/zabbix_bot_telegram8-169x300.jpg" alt="" width="169" height="300" class="alignnone size-medium wp-image-2838" srcset="https://blog.remontti.com.br/wp-content/uploads/2018/11/zabbix_bot_telegram8-169x300.jpg 169w, https://blog.remontti.com.br/wp-content/uploads/2018/11/zabbix_bot_telegram8-576x1024.jpg 576w, https://blog.remontti.com.br/wp-content/uploads/2018/11/zabbix_bot_telegram8.jpg 720w" sizes="auto, (max-width: 169px) 100vw, 169px" /></a></p>
<p>Agora vamos acessar a seguinte URL https://api.telegram.org/bot<strong>TOKEN</strong>/getUpdates para descobrir o ID do usuário que enviou a mensagem.<br />
Ex.: <font size="2"><em>https://api.telegram.org/bot<strong>757396508:AAHpaoyVN-95maOCax1vDPDQBnSaZd9P5r0</strong>/getUpdates</em></font></p>
<pre class="remontti-code">{&quot;ok&quot;:true,&quot;result&quot;:[{&quot;update_id&quot;:649208620,
&quot;message&quot;:{&quot;message_id&quot;:2,&quot;from&quot;:{&lt;strong&gt;&lt;font color=&quot;red&quot;&gt;&quot;id&quot;:221122111,&quot;&lt;/font&gt;&lt;/strong&gt;is_bot&quot;:false,&quot;first_name&quot;:&quot;Rudimar&quot;,&quot;last_name&quot;:&quot;Remontti&quot;,&quot;username&quot;:&quot;remontti&quot;,&quot;language_code&quot;:&quot;pt-br&quot;},&quot;chat&quot;:{&quot;id&quot;:201149282,&quot;first_name&quot;:&quot;Rudimar&quot;,&quot;last_name&quot;:&quot;Remontti&quot;,&quot;username&quot;:&quot;remontti&quot;,&quot;type&quot;:&quot;private&quot;},&quot;date&quot;:1541210279,&quot;text&quot;:&lt;strong&gt;&lt;font color=&quot;red&quot;&gt;&quot;Testando&quot;&lt;/font&gt;&lt;/strong&gt;}}]}  
</pre>
<p>Você pode criar um grupo também e adicionar seu bot nele, após adiciona-lo envia uma mensagem como <strong>/teste</strong> para que possamos coletar o ID do grupo.<br />
<a href="https://blog.remontti.com.br/wp-content/uploads/2018/11/zabbix_bot_telegram9.jpg" data-rel="lightbox-gallery-8i99ZVGi" data-rl_title="" data-rl_caption="" title=""><img loading="lazy" decoding="async" src="https://blog.remontti.com.br/wp-content/uploads/2018/11/zabbix_bot_telegram9-169x300.jpg" alt="" width="169" height="300" class="alignnone size-medium wp-image-2843" srcset="https://blog.remontti.com.br/wp-content/uploads/2018/11/zabbix_bot_telegram9-169x300.jpg 169w, https://blog.remontti.com.br/wp-content/uploads/2018/11/zabbix_bot_telegram9-576x1024.jpg 576w, https://blog.remontti.com.br/wp-content/uploads/2018/11/zabbix_bot_telegram9.jpg 720w" sizes="auto, (max-width: 169px) 100vw, 169px" /></a> <a href="https://blog.remontti.com.br/wp-content/uploads/2018/11/zabbix_bot_telegram10.jpg" data-rel="lightbox-gallery-8i99ZVGi" data-rl_title="" data-rl_caption="" title=""><img loading="lazy" decoding="async" src="https://blog.remontti.com.br/wp-content/uploads/2018/11/zabbix_bot_telegram10-169x300.jpg" alt="" width="169" height="300" class="alignnone size-medium wp-image-2844" srcset="https://blog.remontti.com.br/wp-content/uploads/2018/11/zabbix_bot_telegram10-169x300.jpg 169w, https://blog.remontti.com.br/wp-content/uploads/2018/11/zabbix_bot_telegram10-576x1024.jpg 576w, https://blog.remontti.com.br/wp-content/uploads/2018/11/zabbix_bot_telegram10.jpg 720w" sizes="auto, (max-width: 169px) 100vw, 169px" /></a></p>
<pre class="remontti-code">{&quot;update_id&quot;:649208622,
&quot;message&quot;:{&quot;message_id&quot;:4,&quot;from&quot;:{&quot;id&quot;:221122111,&quot;is_bot&quot;:false,&quot;first_name&quot;:&quot;Rudimar&quot;,&quot;last_name&quot;:&quot;Remontti&quot;,&quot;username&quot;:&quot;remontti&quot;,&quot;language_code&quot;:&quot;pt-br&quot;},&quot;chat&quot;:{&lt;strong&gt;&lt;font color=&quot;red&quot;&gt;&quot;id&quot;:-252697045&lt;/font&gt;&lt;/strong&gt;,&quot;title&quot;:&quot;Grupo Legal&quot;,&quot;type&quot;:&quot;group&quot;,&quot;all_members_are_administrators&quot;:true},&quot;date&quot;:1541210975,&quot;text&quot;:&quot;&lt;strong&gt;&lt;font color=&quot;red&quot;&gt;/teste&lt;/font&gt;&lt;/strong&gt;&quot;,&quot;entities&quot;:[{&quot;offset&quot;:0,&quot;length&quot;:6,&quot;type&quot;:&quot;bot_command&quot;}]}}]}</pre>
<p>Note que o nome do grupo meu com um &#8220;<strong>&#8211;</strong>&#8221; no inicio do ID.</p>
<p>Para testarmos se o envio esta funcionando, abra seu navegador e cole a seguinte URL:<br />
https://api.telegram.org/bot<strong><font color="red">TOKEN</font></strong>/sendMessage?chat_id=<strong><font color="red">ID</font></strong>&amp;text=<font color="red">Minha%20Mensagem</font><br />
Ex.: <font size="2"><em>https://api.telegram.org/bot757396508:AAHpaoyVN-95maOCax1vDPDQBnSaZd9P5r0/sendMessage?chat_id=-252697045&amp;text=Minha%20Mensagem<br />
https://api.telegram.org/bot757396508:AAHpaoyVN-95maOCax1vDPDQBnSaZd9P5r0/sendMessage?chat_id=221122111&amp;text=Mensagem%20Direta</em></font><br />
<a href="https://blog.remontti.com.br/wp-content/uploads/2018/11/zabbix_bot_telegram11.jpg" data-rel="lightbox-gallery-8i99ZVGi" data-rl_title="" data-rl_caption="" title=""><img loading="lazy" decoding="async" src="https://blog.remontti.com.br/wp-content/uploads/2018/11/zabbix_bot_telegram11-169x300.jpg" alt="" width="169" height="300" class="alignnone size-medium wp-image-2847" srcset="https://blog.remontti.com.br/wp-content/uploads/2018/11/zabbix_bot_telegram11-169x300.jpg 169w, https://blog.remontti.com.br/wp-content/uploads/2018/11/zabbix_bot_telegram11-576x1024.jpg 576w, https://blog.remontti.com.br/wp-content/uploads/2018/11/zabbix_bot_telegram11.jpg 720w" sizes="auto, (max-width: 169px) 100vw, 169px" /></a> <a href="https://blog.remontti.com.br/wp-content/uploads/2018/11/zabbix_bot_telegram12.jpg" data-rel="lightbox-gallery-8i99ZVGi" data-rl_title="" data-rl_caption="" title=""><img loading="lazy" decoding="async" src="https://blog.remontti.com.br/wp-content/uploads/2018/11/zabbix_bot_telegram12-169x300.jpg" alt="" width="169" height="300" class="alignnone size-medium wp-image-2848" srcset="https://blog.remontti.com.br/wp-content/uploads/2018/11/zabbix_bot_telegram12-169x300.jpg 169w, https://blog.remontti.com.br/wp-content/uploads/2018/11/zabbix_bot_telegram12-576x1024.jpg 576w, https://blog.remontti.com.br/wp-content/uploads/2018/11/zabbix_bot_telegram12.jpg 720w" sizes="auto, (max-width: 169px) 100vw, 169px" /></a></p>
<p>Vamos instalar o curl, uma ferramenta para comando para transferência de dados com sintaxe URL.</p>
<pre class="remontti-code"># apt install curl</pre>
<p>O diretório padrão no zabbix para os scripts fica em /usr/lib/zabbix/alertscripts/.<br />
<font size="2">(Obs: No tutorial Zabbix 3.0.x com notificações via Telegram nos alteramos o valor de AlertScriptsPath, então caso você seja um leitor que quer apenas migrar, volte o diretório esta em /opt/telegram)</font></p>
<p>Vamos criar o arquivo telegram</p>
<pre class="remontti-code"># vim /usr/lib/zabbix/alertscripts/telegram</pre>
<pre class="remontti-code">#!/bin/bash

TOKEN=&quot;ALTERE-PELO-SEU-TOKEN&quot;

USER=$1
SUBJECT=$2

curl --silent --output /dev/null &quot;https://api.telegram.org/bot$TOKEN/sendMessage?chat_id=$USER&amp;text=$SUBJECT&quot;

exit 0</pre>
<p>De permissão para executar, em seguida vamos criar um atalho em /usr/bin/ e alterar as permissões para o usuário do zabbix.</p>
<pre class="remontti-code"># chmod +x /usr/lib/zabbix/alertscripts/telegram
# ln -s /usr/lib/zabbix/alertscripts/telegram /usr/bin/telegram
# chown zabbix. -R /usr/lib/zabbix/alertscripts</pre>
<p>Agora execute em seu terminal</p>
<pre class="remontti-code"># telegram &quot;-252697045&quot; &quot;Mensagem via Terminal para o grupo&quot;
# telegram &quot;221122111&quot; &quot;Mensagem via Terminal para o grupo&quot;</pre>
<p><strong>Integrando o Telegram com o Zabbix</strong></p>
<p>Se você recebeu as mensagens agora vamos ao nosso zabbix.<br />
Clique em: <strong>Administração</strong> ⇒ <strong>Tipos de mídias</strong> ⇒ <strong>Criar tipo de mídia</strong><br />
<a href="https://blog.remontti.com.br/wp-content/uploads/2018/11/zabbix4-telegram-.png" data-rel="lightbox-gallery-8i99ZVGi" data-rl_title="" data-rl_caption="" title=""><img loading="lazy" decoding="async" src="https://blog.remontti.com.br/wp-content/uploads/2018/11/zabbix4-telegram--300x118.png" alt="" width="300" height="118" class="alignnone size-medium wp-image-2855" srcset="https://blog.remontti.com.br/wp-content/uploads/2018/11/zabbix4-telegram--300x118.png 300w, https://blog.remontti.com.br/wp-content/uploads/2018/11/zabbix4-telegram--768x302.png 768w, https://blog.remontti.com.br/wp-content/uploads/2018/11/zabbix4-telegram--980x386.png 980w, https://blog.remontti.com.br/wp-content/uploads/2018/11/zabbix4-telegram-.png 982w" sizes="auto, (max-width: 300px) 100vw, 300px" /></a></p>
<p>Nome: <strong>Telegram</strong><br />
Tipo: <strong>Script</strong><br />
Nome script: <strong>telegram</strong><br />
Parâmetros do script<br />
<strong>{ALERT.SENDTO}<br />
{ALERT.SUBJECT}</strong><br />
Ativo: <strong>Sim</strong></p>
<p><a href="https://blog.remontti.com.br/wp-content/uploads/2018/11/zabbix4-telegram-2.png" data-rel="lightbox-gallery-8i99ZVGi" data-rl_title="" data-rl_caption="" title=""><img loading="lazy" decoding="async" src="https://blog.remontti.com.br/wp-content/uploads/2018/11/zabbix4-telegram-2-300x174.png" alt="" width="300" height="174" class="alignnone size-medium wp-image-2856" srcset="https://blog.remontti.com.br/wp-content/uploads/2018/11/zabbix4-telegram-2-300x174.png 300w, https://blog.remontti.com.br/wp-content/uploads/2018/11/zabbix4-telegram-2.png 705w" sizes="auto, (max-width: 300px) 100vw, 300px" /></a><br />
Clique em: <strong>Adicionar</strong></p>
<p>Agora vá em: <strong>Administração</strong> ⇒ <strong>Usuários</strong> e sobre o usuário <strong>Admin</strong><br />
<a href="https://blog.remontti.com.br/wp-content/uploads/2018/11/zabbix4-telegram-3.png" data-rel="lightbox-gallery-8i99ZVGi" data-rl_title="" data-rl_caption="" title=""><img loading="lazy" decoding="async" src="https://blog.remontti.com.br/wp-content/uploads/2018/11/zabbix4-telegram-3-300x173.png" alt="" width="300" height="173" class="alignnone size-medium wp-image-2858" srcset="https://blog.remontti.com.br/wp-content/uploads/2018/11/zabbix4-telegram-3-300x173.png 300w, https://blog.remontti.com.br/wp-content/uploads/2018/11/zabbix4-telegram-3.png 667w" sizes="auto, (max-width: 300px) 100vw, 300px" /></a></p>
<p>Com as opções do usuário aberto clique na aba <strong>Mídia</strong> e em <strong>Adicionar</strong><br />
<a href="https://blog.remontti.com.br/wp-content/uploads/2018/11/zabbix4-telegram-4.png" data-rel="lightbox-gallery-8i99ZVGi" data-rl_title="" data-rl_caption="" title=""><img loading="lazy" decoding="async" src="https://blog.remontti.com.br/wp-content/uploads/2018/11/zabbix4-telegram-4-300x111.png" alt="" width="300" height="111" class="alignnone size-medium wp-image-2859" srcset="https://blog.remontti.com.br/wp-content/uploads/2018/11/zabbix4-telegram-4-300x111.png 300w, https://blog.remontti.com.br/wp-content/uploads/2018/11/zabbix4-telegram-4.png 740w" sizes="auto, (max-width: 300px) 100vw, 300px" /></a></p>
<p>Tipo: <strong>Telegram</strong><br />
Enviar para: <strong>ID-Do-Grupo/ID-Usuário</strong><br />
<a href="https://blog.remontti.com.br/wp-content/uploads/2018/11/zabbix4-telegram-5.png" data-rel="lightbox-gallery-8i99ZVGi" data-rl_title="" data-rl_caption="" title=""><img loading="lazy" decoding="async" src="https://blog.remontti.com.br/wp-content/uploads/2018/11/zabbix4-telegram-5-300x165.png" alt="" width="300" height="165" class="alignnone size-medium wp-image-2861" srcset="https://blog.remontti.com.br/wp-content/uploads/2018/11/zabbix4-telegram-5-300x165.png 300w, https://blog.remontti.com.br/wp-content/uploads/2018/11/zabbix4-telegram-5.png 666w" sizes="auto, (max-width: 300px) 100vw, 300px" /></a><br />
<strong>Adicionar</strong><br />
<a href="https://blog.remontti.com.br/wp-content/uploads/2018/11/zabbix4-telegram-6.png" data-rel="lightbox-gallery-8i99ZVGi" data-rl_title="" data-rl_caption="" title=""><img loading="lazy" decoding="async" src="https://blog.remontti.com.br/wp-content/uploads/2018/11/zabbix4-telegram-6-300x89.png" alt="" width="300" height="89" class="alignnone size-medium wp-image-2862" srcset="https://blog.remontti.com.br/wp-content/uploads/2018/11/zabbix4-telegram-6-300x89.png 300w, https://blog.remontti.com.br/wp-content/uploads/2018/11/zabbix4-telegram-6.png 749w" sizes="auto, (max-width: 300px) 100vw, 300px" /></a><br />
<strong>Atualizar</strong></p>
<p>Agora vamos criar a ação que fará o envios dos alertas.<br />
Menu: <strong>Configurações</strong> ⇒ <strong>Ações</strong> ⇒ <strong>Criar ação</strong><br />
<a href="https://blog.remontti.com.br/wp-content/uploads/2018/11/zabbix4-telegram-7.png" data-rel="lightbox-gallery-8i99ZVGi" data-rl_title="" data-rl_caption="" title=""><img loading="lazy" decoding="async" src="https://blog.remontti.com.br/wp-content/uploads/2018/11/zabbix4-telegram-7-300x58.png" alt="" width="300" height="58" class="alignnone size-medium wp-image-2863" srcset="https://blog.remontti.com.br/wp-content/uploads/2018/11/zabbix4-telegram-7-300x58.png 300w, https://blog.remontti.com.br/wp-content/uploads/2018/11/zabbix4-telegram-7-768x147.png 768w, https://blog.remontti.com.br/wp-content/uploads/2018/11/zabbix4-telegram-7.png 974w" sizes="auto, (max-width: 300px) 100vw, 300px" /></a></p>
<p>De um nome para sua ação<br />
Nome: <em><strong>Reportar Problema no Telegram</strong></em><br />
Crie uma no Nova condição: <strong>Incidente suprimido</strong><br />
<a href="https://blog.remontti.com.br/wp-content/uploads/2018/11/zabbix4-telegram-8.png" data-rel="lightbox-gallery-8i99ZVGi" data-rl_title="" data-rl_caption="" title=""><img loading="lazy" decoding="async" src="https://blog.remontti.com.br/wp-content/uploads/2018/11/zabbix4-telegram-8-300x142.png" alt="" width="300" height="142" class="alignnone size-medium wp-image-2864" srcset="https://blog.remontti.com.br/wp-content/uploads/2018/11/zabbix4-telegram-8-300x142.png 300w, https://blog.remontti.com.br/wp-content/uploads/2018/11/zabbix4-telegram-8-520x245.png 520w, https://blog.remontti.com.br/wp-content/uploads/2018/11/zabbix4-telegram-8-720x340.png 720w, https://blog.remontti.com.br/wp-content/uploads/2018/11/zabbix4-telegram-8.png 758w" sizes="auto, (max-width: 300px) 100vw, 300px" /></a><br />
<a href="https://blog.remontti.com.br/wp-content/uploads/2018/11/zabbix4-telegram-9.png" data-rel="lightbox-gallery-8i99ZVGi" data-rl_title="" data-rl_caption="" title=""><img loading="lazy" decoding="async" src="https://blog.remontti.com.br/wp-content/uploads/2018/11/zabbix4-telegram-9-300x128.png" alt="" width="300" height="128" class="alignnone size-medium wp-image-2865" srcset="https://blog.remontti.com.br/wp-content/uploads/2018/11/zabbix4-telegram-9-300x128.png 300w, https://blog.remontti.com.br/wp-content/uploads/2018/11/zabbix4-telegram-9-768x327.png 768w, https://blog.remontti.com.br/wp-content/uploads/2018/11/zabbix4-telegram-9.png 781w" sizes="auto, (max-width: 300px) 100vw, 300px" /></a></p>
<p>Na aba <strong>Operações</strong><br />
<strong>Assunto padrão</strong>:</p>
<pre class="remontti-code"><img src="https://s.w.org/images/core/emoji/17.0.2/72x72/274c.png" alt="❌" class="wp-smiley" style="height: 1em; max-height: 1em;" /> {HOST.NAME} • {TRIGGER.NAME} = {ITEM.NAME1} {ITEM.VALUE1}</pre>
<p>Operação: Clique em <strong>Nova</strong> Mais campos se abrirão, agora em <strong>Enviar para Usuário</strong> Clique em <strong>Adicionar</strong> e Selecione o Usuário <strong>Admin</strong> qual configuramos a mídia. Na opção <strong>Enviar apenas para</strong>: Selecione <strong>Telegram</strong>, e em seguida <strong>Adicionar</strong><br />
<a href="https://blog.remontti.com.br/wp-content/uploads/2018/11/zabbix4-telegram-10.png" data-rel="lightbox-gallery-8i99ZVGi" data-rl_title="" data-rl_caption="" title=""><img loading="lazy" decoding="async" src="https://blog.remontti.com.br/wp-content/uploads/2018/11/zabbix4-telegram-10-300x272.png" alt="" width="300" height="272" class="alignnone size-medium wp-image-2867" srcset="https://blog.remontti.com.br/wp-content/uploads/2018/11/zabbix4-telegram-10-300x272.png 300w, https://blog.remontti.com.br/wp-content/uploads/2018/11/zabbix4-telegram-10-768x695.png 768w, https://blog.remontti.com.br/wp-content/uploads/2018/11/zabbix4-telegram-10.png 937w" sizes="auto, (max-width: 300px) 100vw, 300px" /></a></p>
<p>Vamos repetir a mesma coisa na aba <strong>Operações de recuperação</strong><br />
Mas com o<strong> Assunto padrão</strong>:</p>
<pre class="remontti-code"><img src="https://s.w.org/images/core/emoji/17.0.2/72x72/2705.png" alt="✅" class="wp-smiley" style="height: 1em; max-height: 1em;" />  {HOST.NAME} • {TRIGGER.NAME} = {ITEM.NAME1} {ITEM.VALUE1}</pre>
<p><a href="https://blog.remontti.com.br/wp-content/uploads/2018/11/zabbix4-telegram-11.png" data-rel="lightbox-gallery-8i99ZVGi" data-rl_title="" data-rl_caption="" title=""><img loading="lazy" decoding="async" src="https://blog.remontti.com.br/wp-content/uploads/2018/11/zabbix4-telegram-11-300x207.png" alt="" width="300" height="207" class="alignnone size-medium wp-image-2872" srcset="https://blog.remontti.com.br/wp-content/uploads/2018/11/zabbix4-telegram-11-300x207.png 300w, https://blog.remontti.com.br/wp-content/uploads/2018/11/zabbix4-telegram-11-768x530.png 768w, https://blog.remontti.com.br/wp-content/uploads/2018/11/zabbix4-telegram-11.png 943w" sizes="auto, (max-width: 300px) 100vw, 300px" /></a></p>
<p>Pode clicar agora em <strong>Adicionar</strong><br />
<a href="https://blog.remontti.com.br/wp-content/uploads/2018/11/zabbix4-telegram-12.png" data-rel="lightbox-gallery-8i99ZVGi" data-rl_title="" data-rl_caption="" title=""><img loading="lazy" decoding="async" src="https://blog.remontti.com.br/wp-content/uploads/2018/11/zabbix4-telegram-12-300x123.png" alt="" width="300" height="123" class="alignnone size-medium wp-image-2874" srcset="https://blog.remontti.com.br/wp-content/uploads/2018/11/zabbix4-telegram-12-300x123.png 300w, https://blog.remontti.com.br/wp-content/uploads/2018/11/zabbix4-telegram-12-768x316.png 768w, https://blog.remontti.com.br/wp-content/uploads/2018/11/zabbix4-telegram-12.png 842w" sizes="auto, (max-width: 300px) 100vw, 300px" /></a><br />
<a href="https://blog.remontti.com.br/wp-content/uploads/2018/11/zabbix4-telegram-13.png" data-rel="lightbox-gallery-8i99ZVGi" data-rl_title="" data-rl_caption="" title=""><img loading="lazy" decoding="async" src="https://blog.remontti.com.br/wp-content/uploads/2018/11/zabbix4-telegram-13-300x110.png" alt="" width="300" height="110" class="alignnone size-medium wp-image-2875" srcset="https://blog.remontti.com.br/wp-content/uploads/2018/11/zabbix4-telegram-13-300x110.png 300w, https://blog.remontti.com.br/wp-content/uploads/2018/11/zabbix4-telegram-13-768x282.png 768w, https://blog.remontti.com.br/wp-content/uploads/2018/11/zabbix4-telegram-13-980x360.png 980w, https://blog.remontti.com.br/wp-content/uploads/2018/11/zabbix4-telegram-13.png 982w" sizes="auto, (max-width: 300px) 100vw, 300px" /></a></p>
<p>Pronto! Agora precisamos gerar um incidente para ver se nosso alerta será enviado para o Telegram.<br />
No meu caso vou fazer uma edição /etc/bind/named.conf.options qual possuo um template que criei onde ele verifica a cada modificação no arquivo e me envia um alerta <em>vfs.file.cksum[/etc/bind/named.conf.options].diff(0)}&gt;0</em></p>
<p><a href="https://blog.remontti.com.br/wp-content/uploads/2018/11/zabbix-telegram-14.jpg" data-rel="lightbox-gallery-8i99ZVGi" data-rl_title="" data-rl_caption="" title=""><img loading="lazy" decoding="async" src="https://blog.remontti.com.br/wp-content/uploads/2018/11/zabbix-telegram-14-169x300.jpg" alt="" width="169" height="300" class="alignnone size-medium wp-image-2876" srcset="https://blog.remontti.com.br/wp-content/uploads/2018/11/zabbix-telegram-14-169x300.jpg 169w, https://blog.remontti.com.br/wp-content/uploads/2018/11/zabbix-telegram-14-576x1024.jpg 576w, https://blog.remontti.com.br/wp-content/uploads/2018/11/zabbix-telegram-14.jpg 720w" sizes="auto, (max-width: 169px) 100vw, 169px" /></a><br />
Bingo! Tudo certo, nosso sistema de envio de mensagem está concluído!</p>
<p>Gostou? Deixe seu comentário ficarei feliz em saber que lhe ajudei, e se tiver qualquer pergunta deixe-a também, se preferir acesse o menu <a href="https://blog.remontti.com.br/meucontato" rel="noopener noreferrer" target="_blank">Contato</a> lá você encontra meios de falar comigo!</p>
<p>Abraço!</p>
<p><font size="2">Fontes: <a href="https://core.telegram.org/bots" rel="noopener noreferrer" target="_blank">https://core.telegram.org/bots</a> &amp; <a href="https://www.zabbix.com/documentation/" rel="noopener noreferrer" target="_blank">https://www.zabbix.com/documentation/</a></font></p>
<p>O post <a href="https://blog.remontti.com.br/2817">Zabbix 4.0 + Alertas no Telegram via Bot</a> apareceu primeiro em <a href="https://blog.remontti.com.br">Remontti</a>.</p>
]]></content:encoded>
					
					<wfw:commentRss>https://blog.remontti.com.br/2817/feed</wfw:commentRss>
			<slash:comments>51</slash:comments>
		
		
			</item>
		<item>
		<title>Cliente Telegram no seu terminal bash &#8211; Debian 8/9</title>
		<link>https://blog.remontti.com.br/1325</link>
					<comments>https://blog.remontti.com.br/1325#comments</comments>
		
		<dc:creator><![CDATA[Rudimar Remontti]]></dc:creator>
		<pubDate>Sun, 25 Sep 2016 03:02:26 +0000</pubDate>
				<category><![CDATA[Linux]]></category>
		<category><![CDATA[Script]]></category>
		<category><![CDATA[Tutoriais]]></category>
		<category><![CDATA[cliente]]></category>
		<category><![CDATA[linha de comando]]></category>
		<category><![CDATA[telegram]]></category>
		<guid isPermaLink="false">http://blog.remontti.com.br/?p=1325</guid>

					<description><![CDATA[<p>Projeto: https://github.com/vysheng/tg Distribuição testadas: Debian 8&#038; 9 / Instalação Limpa (Tutorial de instalação aqui) Instalando pacotes necessários # apt install git libreadline-dev libconfig-dev libssl-dev lua5.2 liblua5.2-dev libevent-dev libjansson-dev libpython-dev make build-essential zlib1g-dev # cd&#46;&#46;&#46;</p>
<p>O post <a href="https://blog.remontti.com.br/1325">Cliente Telegram no seu terminal bash &#8211; Debian 8/9</a> apareceu primeiro em <a href="https://blog.remontti.com.br">Remontti</a>.</p>
]]></description>
										<content:encoded><![CDATA[<p>Projeto: <a href="https://github.com/vysheng/tg" target="_blank" rel="noopener">https://github.com/vysheng/tg</a></p>
<p>Distribuição testadas: Debian 8&#038; 9 / Instalação Limpa <a href="https://blog.remontti.com.br/1152" target="_blank" rel="noopener">(Tutorial de instalação aqui)</a></p>
<p>Instalando pacotes necessários </p>
<pre class="remontti-code">
# apt install git libreadline-dev libconfig-dev libssl-dev lua5.2 liblua5.2-dev libevent-dev libjansson-dev libpython-dev make build-essential zlib1g-dev
# cd /tmp/
# git clone --recursive https://github.com/vysheng/tg.git 
# cd tg
</pre>
<p>Agora vamos compila-lo:</p>
<p><font color="blue"><strong>Debian 8</strong></font></p>
<pre class="remontti-code">
# ./configure
# make
</pre>
<p><font color="blue"><strong>Debian 9</strong></font> precisei desativar o openssl:</p>
<pre class="remontti-code"># apt install libcrypto++-dev libgcrypt11-dev
# ./configure --disable-openssl
# make</pre>
<p><a href="https://blog.remontti.com.br/wp-content/uploads/2016/09/Screenshot_20160924_215935.png" data-rel="lightbox-gallery-eDSNQYOZ" data-rl_title="" data-rl_caption="" title=""><img loading="lazy" decoding="async" src="https://blog.remontti.com.br/wp-content/uploads/2016/09/Screenshot_20160924_215935-150x150.png" alt="screenshot_20160924_215935" width="150" height="150" class="alignnone size-thumbnail wp-image-1326" srcset="https://blog.remontti.com.br/wp-content/uploads/2016/09/Screenshot_20160924_215935-150x150.png 150w, https://blog.remontti.com.br/wp-content/uploads/2016/09/Screenshot_20160924_215935-160x160.png 160w, https://blog.remontti.com.br/wp-content/uploads/2016/09/Screenshot_20160924_215935-320x320.png 320w" sizes="auto, (max-width: 150px) 100vw, 150px" /></a> <a href="https://blog.remontti.com.br/wp-content/uploads/2016/09/Screenshot_20160924_220232.png" data-rel="lightbox-gallery-eDSNQYOZ" data-rl_title="" data-rl_caption="" title=""><img loading="lazy" decoding="async" src="https://blog.remontti.com.br/wp-content/uploads/2016/09/Screenshot_20160924_220232-150x150.png" alt="screenshot_20160924_220232" width="150" height="150" class="alignnone size-thumbnail wp-image-1327" srcset="https://blog.remontti.com.br/wp-content/uploads/2016/09/Screenshot_20160924_220232-150x150.png 150w, https://blog.remontti.com.br/wp-content/uploads/2016/09/Screenshot_20160924_220232-160x160.png 160w, https://blog.remontti.com.br/wp-content/uploads/2016/09/Screenshot_20160924_220232-320x320.png 320w" sizes="auto, (max-width: 150px) 100vw, 150px" /></a></p>
<pre class="remontti-code">
# mkdir /opt/telegram
# cp bin/telegram-cli /opt/telegram/
# cp tg-server.pub /opt/telegram/
# cd /opt/telegram/
</pre>
<p>Crie o arquivo telegram.config, utilizarei o editor vim, utilize o de sua preferência.</p>
<pre class="remontti-code">
# vim telegram.config 
</pre>
<p>Adicione as seguintes linhas:</p>
<pre class="remontti-code">
default_profile = &quot;rrprofile&quot;;

rrprofile = {
    config_directory = &quot;/opt/telegram/&quot;;
    #test = false;
    #msg_num = true;
    #binlog_enabled = true;
    log_level = 2;
};
</pre>
<p>Vamos inicia-lo! Para isso digite o seguinte comando:</p>
<pre class="remontti-code">
# ./telegram-cli --rsa-key tg-server.pub --config telegram.config
</pre>
<pre class="remontti-code">
change_user_group: can&#039;t find the user telegramd to switch to
Telegram-cli version 1.4.1, Copyright (C) 2013-2015 Vitaly Valtman
Telegram-cli comes with ABSOLUTELY NO WARRANTY; for details type `show_license&#039;.
This is free software, and you are welcome to redistribute it
under certain conditions; type `show_license&#039; for details.
Telegram-cli uses libtgl version 2.1.0
Telegram-cli includes software developed by the OpenSSL Project
for use in the OpenSSL Toolkit. (http://www.openssl.org/)
[/opt/telegram//downloads] created
phone number: +555599999999 &lt;strong&gt;(Infome seu nº celular)&lt;/strong&gt;
code (&#039;CALL&#039; for phone code): 12345 &lt;strong&gt;(Código via SMS)&lt;/strong&gt;
password: &lt;strong&gt;(Se sua conto tiver senha)&lt;/strong&gt;
&gt;
</pre>
<p>Agora o telegram-cli está configurado para utilizar a sua conta.</p>
<p>O comando contact_list irá exibir seus contatos e o dialog_list suas conversas. Execute user_info seguido do nome do contato conforme está na sua agenda, se quiser enviar para um grupo, execute chat_info seguido do nome do grupo. Observe que a tecla TAB pode ser utilizada para autocompletar as palavras.<br />
Nota: nos nomes de contatos e grupos, espaços são transformados em underscore (_), cerquilhas (#) em arrobas (@) e contatos com mesmo nome tem um #1 acrescentado ao nome.</p>
<pre class="remontti-code">   
&gt; contact_list 
Nome Contato1
Nome Contato2
Nome Contato3
Nome Contato4
&gt; user_info Rudimar_Remontti 
User Rudimar Remontti @remontti (#123456789):
        phone: 555599999999
        offline (was online [2016/09/24 22:14:23])
&gt;
&gt; chat_info Tutorial 
Chat Tutorial updated members
Chat Tutorial (id 987654321) members:
                Fulano de tal invited by Rudimar Remontti at [2016/09/24 22:22:03]
                Rudimar Remontti invited by user#0 at [1969/12/31 21:00:00]
&gt;
&gt; msg Rudimar_Remontti Teste
 [23:29]  Rudimar Remontti &lt;&lt;&lt; Teste
&gt; msg Rudimar_Remontti Mensagem via terminal ;) 
 [23:29]  Rudimar Remontti &lt;&lt;&lt; Mensagem via terminal ;)
&gt; 
&gt; quit
</pre>
<p><a href="https://blog.remontti.com.br/wp-content/uploads/2016/09/Screenshot_20160924_234513.png" data-rel="lightbox-gallery-eDSNQYOZ" data-rl_title="" data-rl_caption="" title=""><img loading="lazy" decoding="async" src="https://blog.remontti.com.br/wp-content/uploads/2016/09/Screenshot_20160924_234513.png" alt="screenshot_20160924_234513" width="699" height="330" class="alignnone size-full wp-image-1328" srcset="https://blog.remontti.com.br/wp-content/uploads/2016/09/Screenshot_20160924_234513.png 699w, https://blog.remontti.com.br/wp-content/uploads/2016/09/Screenshot_20160924_234513-300x142.png 300w, https://blog.remontti.com.br/wp-content/uploads/2016/09/Screenshot_20160924_234513-520x245.png 520w, https://blog.remontti.com.br/wp-content/uploads/2016/09/Screenshot_20160924_234513-720x340.png 720w" sizes="auto, (max-width: 699px) 100vw, 699px" /></a></p>
<p><a href="https://blog.remontti.com.br/wp-content/uploads/2016/09/Screenshot_20160924_234841.png" data-rel="lightbox-gallery-eDSNQYOZ" data-rl_title="" data-rl_caption="" title=""><img loading="lazy" decoding="async" src="https://blog.remontti.com.br/wp-content/uploads/2016/09/Screenshot_20160924_234841-282x300.png" alt="screenshot_20160924_234841" width="282" height="300" class="alignnone size-medium wp-image-1329" srcset="https://blog.remontti.com.br/wp-content/uploads/2016/09/Screenshot_20160924_234841-282x300.png 282w, https://blog.remontti.com.br/wp-content/uploads/2016/09/Screenshot_20160924_234841.png 401w" sizes="auto, (max-width: 282px) 100vw, 282px" /></a></p>
<p>Em <a href="https://github.com/vysheng/tg/blob/master/README.md" target="_blank" rel="noopener">https://github.com/vysheng/tg</a> você encontra uma lista com todos os comandos.</p>
<p>Vamos criar um arquivo chamado de <strong>telegram-on</strong> para entrarmos automaticamente na nossa qual já está autorizada. </p>
<pre class="remontti-code"># vim /opt/telegram/telegram-on</pre>
<p>Adicione:</p>
<pre class="remontti-code">
#!/bin/bash
/opt/telegram/telegram-cli --rsa-key /opt/telegram/tg-server.pub --config /opt/telegram/telegram.config
</pre>
<p>Alteramos as permissões do arquivo para podermos executar, e criamos uma atalho em /usr/bin/ para podermos rodar o comando a partir de qualquer diretório. </p>
<pre class="remontti-code"># chmod +x /opt/telegram/telegram-on
# ln -s /opt/telegram/telegram-on /usr/bin/telegram-on</pre>
<p>Agora basta dar o comando # telegram-on</p>
<p>Com base no que vimos podemos &#8220;ter ideias&#8221; exemplo um script para enviar alguns alertas do nosso servidor, utilizo algo assim com o Zabbix.<br />
Vamos ao script.</p>
<p>Crie o arquivo /opt/telegram/telegram-cmd</p>
<pre class="remontti-code"># vim /opt/telegram/telegram-cmd</pre>
<p>Adicione:</p>
<pre class="remontti-code">
#!/bin/bash

MAIN_DIRECTORY=&quot;/opt/telegram/&quot;
# Utilize: user#user_id ou chat#chat_id
# ./telegram-cmd user#123456789 &quot;Minha mensagem&quot;
# ./telegram-cmd chat#987654321 &quot;Minha mensagem&quot;

USER=$1
SUBJECT=$2
TEXT=$3

cd $MAIN_DIRECTORY
if [[ $? -ne 0 ]]; then
        echo &quot;Erro! Diretorio nao encontrado.&quot;
        exit 1
fi

$MAIN_DIRECTORY/telegram-cli -k $MAIN_DIRECTORY/tg-server.pub -c $MAIN_DIRECTORY/telegram.config -WR -U rrprofile -e &quot;msg $USER $SUBJECT&quot; || exit 1

exit 0
</pre>
<p>Alteramos as permissão para execução, e vamos também criar um atalho em /usr/bin/ para executar o comando de qualquer diretório.</p>
<pre class="remontti-code"># chmod +x /opt/telegram/telegram-cmd
# ln -s /opt/telegram/telegram-cmd /usr/bin/telegram-cmd</pre>
<p>Perceba que quando damos o comando user_info ou chat_info é exibido um código de usuário ou de grupo, nestes casos será esse &#8220;ID&#8221; que utilizaremos para escolher nosso destinatário.</p>
<pre class="remontti-code">
&gt; user_info Rudimar_Remontti 
User Rudimar Remontti @remontti (#&lt;strong&gt;123456789&lt;/strong&gt;):
        phone: 555599999999
        offline (was online [2016/09/24 22:14:23])
&gt;
&gt; chat_info Tutorial 
Chat Tutorial updated members
Chat Tutorial (id &lt;strong&gt;987654321&lt;/strong&gt;) members:
                Fulano de tal invited by Rudimar Remontti at [2016/09/24 22:22:03]
                Rudimar Remontti invited by user#0 at [1969/12/31 21:00:00]
&gt;
</pre>
<p>Agora que sabemos os ID de user ou chat vamos aos teste: </p>
<pre class="remontti-code"># telegram-cmd user#123456789 &quot;Minha mensagem&quot;
# telegram-cmd chat#987654321 &quot;Minha mensagem&quot;</pre>
<p><a href="https://blog.remontti.com.br/wp-content/uploads/2016/09/Screenshot_20160925_150502.png" data-rel="lightbox-gallery-eDSNQYOZ" data-rl_title="" data-rl_caption="" title=""><img loading="lazy" decoding="async" src="https://blog.remontti.com.br/wp-content/uploads/2016/09/Screenshot_20160925_150502.png" alt="screenshot_20160925_150502" width="663" height="217" class="alignnone size-full wp-image-1350" srcset="https://blog.remontti.com.br/wp-content/uploads/2016/09/Screenshot_20160925_150502.png 663w, https://blog.remontti.com.br/wp-content/uploads/2016/09/Screenshot_20160925_150502-300x98.png 300w" sizes="auto, (max-width: 663px) 100vw, 663px" /></a></p>
<p>Gostou? Deixe seu comentário ficarei feliz em saber que lhe ajudei, e se tiver qualquer pergunta deixe-a também, se preferir acesse o menu <a href="http://blog.remontti.net.br/meucontato">Contato</a> lá você encontra meios de falar comigo!</p>
<p>Abraço!    </p>
<p>O post <a href="https://blog.remontti.com.br/1325">Cliente Telegram no seu terminal bash &#8211; Debian 8/9</a> apareceu primeiro em <a href="https://blog.remontti.com.br">Remontti</a>.</p>
]]></content:encoded>
					
					<wfw:commentRss>https://blog.remontti.com.br/1325/feed</wfw:commentRss>
			<slash:comments>18</slash:comments>
		
		
			</item>
		<item>
		<title>Balanceamento de Carga</title>
		<link>https://blog.remontti.com.br/328</link>
					<comments>https://blog.remontti.com.br/328#comments</comments>
		
		<dc:creator><![CDATA[Rudimar Remontti]]></dc:creator>
		<pubDate>Tue, 09 Jun 2009 18:04:28 +0000</pubDate>
				<category><![CDATA[Linux]]></category>
		<category><![CDATA[Script]]></category>
		<category><![CDATA[Tutoriais]]></category>
		<category><![CDATA[balance]]></category>
		<category><![CDATA[balanceamento]]></category>
		<category><![CDATA[cache]]></category>
		<category><![CDATA[cool]]></category>
		<category><![CDATA[firewall]]></category>
		<category><![CDATA[flush]]></category>
		<category><![CDATA[ip]]></category>
		<category><![CDATA[iptables]]></category>
		<category><![CDATA[ping]]></category>
		<category><![CDATA[rotas]]></category>
		<category><![CDATA[route]]></category>
		<category><![CDATA[uplink]]></category>
		<guid isPermaLink="false">http://www.remontti.com.br/blog/?p=328</guid>

					<description><![CDATA[<p>Este tuto foi feito em cima da distribuição Debian 5, com dois links de mesma velocidade. Neste exemplo teremos 3 interface [eth0 192.168.1.100 e eth1 192.168.2.100 as duas internet] [eth2 192.168.3.1 rede local] Primeiramente&#46;&#46;&#46;</p>
<p>O post <a href="https://blog.remontti.com.br/328">Balanceamento de Carga</a> apareceu primeiro em <a href="https://blog.remontti.com.br">Remontti</a>.</p>
]]></description>
										<content:encoded><![CDATA[<p>Este tuto foi feito em cima da distribuição Debian 5, com dois links de mesma velocidade.<br />
Neste exemplo teremos 3 interface [eth0 192.168.1.100 e eth1 192.168.2.100 as duas internet] [eth2 192.168.3.1 rede local]</p>
<p>Primeiramente instalamos o pacote iproute 2<br />
<span style="color: #ff6600;"># aptitude update<br />
# aptitude install iproute</span></p>
<p>Após configure as tabelas:</p>
<p><span style="color: #ff6600;"># vim /etc/iproute2/rt_tables</span><br />
Adicione essas duas linhas no final do arquivo:</p>
<p><span style="color: #008080;">200 uplink1<br />
201 uplink2</span></p>
<p><span style="color: #008080;"><span id="more-328"></span></span>Vamos configurar nossa interface onde em eth0 192.168.1.1 / eth1 192.168.2.1 são os gateways<br />
<span style="color: #ff6600;"># vim /etc/network/interfaces</span></p>
<pre class="remontti-code"># LOCALHOST
auto lo
iface lo inet loopback

# LINK 1

auto eth0
iface eth0 inet static
        address 192.168.1.100
        netmask 255.255.255.0

        post-up ip route add 192.168.1.1/32 dev eth1 src 192.168.1.100 table uplink1
        post-up ip route add default via 192.168.1.1 table uplink1
        post-up ip rule add from 192.168.1.100 table uplink1
        post-down ip rule del from 192.168.1.100 table uplink1

# LINK 2

auto eth1
iface eth1 inet static
        address 192.168.2.100
        netmask 255.255.255.0

        post-up ip route add 192.168.2.1/32 dev eth1 src 192.168.2.210 table uplink2
        post-up ip route add default via 192.168.2.1 table uplink2
        post-up ip rule add from 192.168.2.210 table uplink2
        post-down ip rule del from 192.168.2.210 table uplink2

# REDE CLIENTE
auto eth2
iface eth2 inet static
        address 192.168.3.1
        netmask 255.255.255.0</pre>
<p>Reinicie o serviço:<br />
<span style="color: #ff6600;"># /etc/init.d/networking  restart</span></p>
<p>Agora vamos criar um firewall, criaremos as rotas.</p>
<pre class="remontti-code">#! /bin/sh

# Ativa forward
echo &quot;1&quot; &gt; /proc/sys/net/ipv4/ip_forward

# Limpa regras
/sbin/iptables -F
/sbin/iptables -X
/sbin/iptables -t nat -F
/sbin/iptables -X -t nat
/sbin/iptables -F -t mangle
/sbin/iptables -X -t mangle

# Carrega modulos
/sbin/modprobe iptable_nat
/sbin/modprobe ip_conntrack_ftp
/sbin/modprobe ip_nat_ftp
/sbin/modprobe ipt_LOG
/sbin/modprobe ipt_REJECT
/sbin/modprobe ipt_MASQUERADE

#Libera navegacao nas interfaces
/sbin/iptables -t nat -A POSTROUTING -s 192.168.30/24 -o eth0 -j MASQUERADE
/sbin/iptables -t nat -A POSTROUTING -s 192.168.30/24 -o eth1 -j MASQUERADE

# Configurações Proxy
# /sbin/iptables -t nat -A PREROUTING -i eth2 -p tcp --dport 80 -j REDIRECT --to-port 3128
# /sbin/iptables -A PREROUTING -t mangle -s 192.168.3.0/24 -d 0/0 -j MARK --set-mark 3
# /sbin/iptables -t mangle -A OUTPUT -p TCP -d ! 192.168.3.0/24 --dport 80 -m owner --uid-owner 23 -j MARK --set-mark 3

# Faz com que o servico dns faca consultas pelo outro link
/sbin/iptables -t mangle -A OUTPUT -p UDP --dport 53 -m owner --uid-owner 25 -j MARK --set-mark 2

# Deleta rotas
route del default

# Load balance
ip route add default scope global nexthop via 192.168.1.1 dev eth0 weight 1 nexthop via 192.168.2.1 dev eth1 weight 1

# Limpa cache
ip route flush cached</pre>
<p>Use o comando &#8220;ip route show table main&#8221; para ver como ficou&#8230;<br />
<span style="color: #ff6600;"> # ip route show table main</span></p>
<p><span style="color: #999999;">192.168.1.1/24 dev eth0  proto kernel  scope link  src 192.168.1.100<br />
<em>192.168.2.1/24 dev eth1  proto kernel  scope link  src 192.168.2.100<br />
192.168.3.1/24 dev eth2  proto kernel  scope link  src 192.168.3.1<br />
default<br />
nexthop via 192.168.1.100  dev eth0 weight 1<br />
nexthop via 192.168.2.100  dev eth1 weight 1</em></span></p>
<p>Adicione no cron o comando para limpar o cache dos dns a cada 10 min<br />
<span style="color: #ff6600;"> # vim /etc/crontab</span><br />
00-59/10   *   * * *   root   ip route flush cached</p>
<p>Aqui fiz o siguinte script para verificar se algum dos link cai, assim refazendo a rota e deixadondo para o que estiver online.</p>
<p><span style="color: #ff6600;"># vim /root/uplink.sh</span></p>
<pre class="remontti-code">#! /bin/sh
# - - - - - - - - - - - - - - - #
# Script por Rudimar Remontti   #
# www.remontti.com.br           #
# - - - - - - - - - - - - - - - #
echo -e &#039;\e[33;1mVerificando Links: \e[m&#039;

# - - - - - - - - - - - #
# Configuracoes         #
# - - - - - - - - - - - #
GTW_1=192.168.1.1
ITF_1=eth0
GTW_2=192.168.2.1
ITF_2=eth1
RT_BRT_1=200.176.3.142 # Ip do terra.com.br ele ira pingar p/ verificar se responde
RT_BRT_2=200.176.3.142 # Ip do terra.com.br...
# - - - - - - - - - - - #

echo
echo -e &quot;\e[30;1mLink 1: $GTW_1\e[m&quot;
echo -e &quot;\e[30;1mLink 2: $GTW_2\e[m&quot;
echo 

# - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - #
PING_1=`ping $RT_BRT_1 -I $ITF_1 -c 1 |grep packets |cut -c 24`
PING_2=`ping $RT_BRT_2 -I $ITF_2 -c 1 |grep packets |cut -c 24`
# - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - #

UP=`echo &quot;($PING_1 + $PING_2)&quot; | bc`
if [ $UP = 2 ]; then 

        route del default
        ip route add default scope global nexthop via $GTW_1 dev $ITF_1 weight 1 nexthop via $GTW_2 dev $ITF_2 weight 1
        ip route flush cached

        echo -n &#039;Link 1 e Link 2  Status:     &#039;
        echo -e &#039;\e[32;1m[ ON ] \e[m&#039;
        echo

elif [ $UP = 0 ]; then

        route del default
        ip route add default scope global nexthop via $GTW_1 dev $ITF_1 weight 1 nexthop via $GTW_2 dev $ITF_2 weight 1
        ip route flush cached

        echo
        echo -n Link 1:
        echo -e &#039;\e[32;1m  [  OKAY  ] \e[m&#039;
        echo -n Link 2:
        echo -e &#039;\e[32;1m  [  OKAY  ] \e[m&#039;
        echo

elif [ $UP = 1 ]; then
        echo
        if [ $PING_1 = 1 ]; then
                echo -n Link 1:
                echo -e &#039;\e[32;1m  [  OKAY  ] \e[m&#039;
        else
                route del default
                ip route add default scope global nexthop via $GTW_2 dev $ITF_2 weight 1
                ip route flush cached
                data=`date`
                echo &quot;$data -&gt; Link 1 OFF&quot; &gt;&gt; /root/links.log
                echo -n Link 1:
                echo -e &#039;\e[31;1m  [  OFF   ] \e[m&#039;
        fi
        if [ $PING_2 = 1 ]; then
                echo -n Link 2:
                echo -e &#039;\e[32;1m  [  OKAY  ] \e[m&#039;
        else
                route del default
                ip route add default scope global nexthop via $GTW_1 dev $ITF_1 weight 1
                ip route flush cached
                data=`date`
                echo &quot;$data -&gt; Link 2 OFF&quot; &gt;&gt; /root/links.log
                echo -n Link 2:
                echo -e &#039;\e[31;1m  [  OFF   ] \e[m&#039;

        fi
        echo
        if [ $PING_1 = 0 ]; then
                echo -e &#039;\e[30;1mRotas reconfigurada, gatway através do Link 2.\e[m&#039;
                ROTE=`ip route show |grep default |cut -c 9-100`
                echo -e &quot;\e[30;1m$ROTE\e[m&quot;

        elif [ $PING_2 = 0 ]; then
                echo -e &#039;\e[30;1mRotas reconfigurada, gatway através do Link 1.\e[m&#039;
                ROTE=`ip route show |grep default |cut -c 9-100`
                echo -e &quot;\e[30;1m$ROTE\e[m&quot;
        fi
else
        echo ERRO!
fi
# - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - #
echo
ip route show |grep nexthop
echo</pre>
<p><span style="color: #ff6600;"># chmod 755 /root/uplink.sh</span></p>
<p>Adicionamos ao cron (5min)<br />
<span style="color: #ff6600;"> # vim /etc/crontab</span><br />
<span style="color: #008080;"> 00-59/5   *   * * *   root   /root/uplink.sh</span></p>
<p>Carregue seu firewall na inicialização do sistema, utilize o iptraf para ver o trafego saindo pelas duas interfaces.<br />
Se vc tem dois link com cargas diferente altere o weight.</p>
<p>Abraço</p>
<p>O post <a href="https://blog.remontti.com.br/328">Balanceamento de Carga</a> apareceu primeiro em <a href="https://blog.remontti.com.br">Remontti</a>.</p>
]]></content:encoded>
					
					<wfw:commentRss>https://blog.remontti.com.br/328/feed</wfw:commentRss>
			<slash:comments>3</slash:comments>
		
		
			</item>
	</channel>
</rss>
