quinta-feira, 15 de maio de 2025

Grafana | How to access the webui from another computer.

Simptons: After install a new Grafana Server, is not possible to access the port 3000/tcp from another computer.


Problem:  By default, the OpenSuSE uses firewalld activated.


Resolution: Open the port 3000/tcp using firewall-cmd command:


opensuseleap:~ # firewall-cmd --permanent --new-service=Grafana

success

opensuseleap:~ # firewall-cmd --permanent --service=Grafana --set-description="Grafana Web Access"

success

opensuseleap:~ # firewall-cmd --permanent --service=Grafana --add-port=3000/tcp

success

opensuseleap:~ # firewall-cmd --zone=public --add-service=Grafana --permanent

success

opensuseleap:~ # firewall-cmd --reload

success

opensuseleap:~ #  firewall-cmd --info-service=Grafana

Grafana

  ports: 3000/tcp

  protocols:

  source-ports:

  modules:

  destination:

  includes:

  helpers:

opensuseleap:~ #


Have a nice day.

#IWorkForDell

quarta-feira, 16 de outubro de 2019

CentOS 8/7 + Zabbix Agent

Dica incluindo a versão 8 do amado S.O.

Supondo que você já possua o server.

1 - Instalando o repositório:

CentOS/RHEL 8:
# rpm -Uvh https://repo.zabbix.com/zabbix/4.0/rhel/8/x86_64/zabbix-release-4.0-2.el8.noarch.rpm

CentOS/RHEL 7:
# rpm -Uvh https://repo.zabbix.com/zabbix/4.0/rhel/7/x86_64/zabbix-release-4.0-2.el7.noarch.rpm

2 - Instalando o pacote

# yum install zabbix-agent


3 - Configurando o conf:

Arquivo de configuração /etc/zabbix/zabbix_agentd.conf

###Zabbix Agent###
PidFile=/var/run/zabbix/zabbix_agentd.pid
LogFile=/var/log/zabbix/zabbix_agentd.log

LogFileSize=0

Server=IP-DO-SERVER
Hostname=SEU-HOSTNAME
StartAgents=3
DebugLevel=3
Timeout=3
### EOF ###

4 - Adicionando regra de Firewall

4.1 - Usando Iptables:

# iptables -A INPUT -p tcp --dport 10050 -m state --state NEW,ESTABLISHED -j ACCEPT

4.2 - Usando Firewalld:

# firewall-cmd --add-port=10050/tcp --permanent

# firewall-cmd --reload

5 - Adicionando SELinux:

# setsebool -P httpd_can_connect_zabbix on

# setsebool -P zabbix_can_network on

# setsebool -P httpd_can_network_connect_db on

6 - Adicionando a inicialização e reiniciando o host*

# systemctl enable zabbix-agent && reboot

* Enfrentei este problema:
“Job for zabbix-server.service failed because a configured resource limit was exceeded”.

Mas com o reboot funcionou, debuguei muito e não encontrei o real motivo, ficando algo relacionado ao SELinux, me neguei em usar disabled e optei pelo reboot.

Dá para criar a regra de Firewalld.

Criando arquivo:  /etc/firewalld/services/zabbix.xml
 

 
 

Usando o comando:
# firewall-cmd --zone=public --permanent --add-service=zabbix

Baseado em:


quarta-feira, 18 de setembro de 2019

Adicionando um arquivo de Swap no Linux.

Observando o Zabbix em alguns servidores KVM verifiquei um aumento do uso de Swap.

Então eu lembrei de que já havia feito algo anteriormente com FreeBSD e resolvi adaptar.

Então, segue a dica:

Como root (ou sudo)

Crie o arquivo (Aqui eu usei 5GB):
# dd if=/dev/zero of=/swapfile count=5000 bs=1M

Dê permissões:
# chmod 600 /swapfile

Formate o arquivo:
# mkswap /swapfile

Adicione na inicialização:
# echo "/swapfile swap defaults 0 0" >> /etc/fstab

Inicialize a swap:
# swapon /swapfile

Feito.

Segue abaixo sequencialmente para copiar e colar:

dd if=/dev/zero of=/swapfile count=5000 bs=1M
chmod 600 /swapfile
mkswap /swapfile
echo "/swapfile swap defaults 0 0" >> /etc/fstab
swapon /swapfile

quarta-feira, 11 de setembro de 2019

Rotas estáticas via DHCP no PFSense.

Distribuindo rotas estáticas via DHCP no PFSense.

Bom, resolvi escrever este pequeno tutorial para facilitar a vida de muita gente.

Eu acho uma grande gambiarra ter que adicionar rotas via "Prompt de Comando" e fica bem ruim quando ninguém documenta a gambiarra.

Logo, era muito mais simples colocar tudo no DHCP tanto no Windows Server quanto no isc-dhcpd do Linux ou FreeBSD.

Mas com a idade eu fui me rendendo ao PfSense, que realmente é mais simples de "passar a bola" para as demais equipes, só que nem toda ferramenta só porque é gráfica está escrito "for Dummies" na tela de login.


Supondo que todos saibam configurar o PFSense:

Exemplo:

IP máquina local: 192.168.1.223

IP rede remota: 10.1.1.0/24
Gateway da rede local: 192.168.1.245

O PFSense necessita que essa declaração seja feita em hexadecimais. Sim, não faço a menor idéia de porquê! Mas é assim que a banda toca.

Necessitamos então de:
1 - Máscara de subrede
2 - Rede remota
3 - Gateway

Aqui usados como:

1 - 24
2 - 10.1.1.0
3 - 192.168.1.245

Em Hexadecimais:

1 - 18 (Não me perguntem como)
2 - 0a:01:01:00 (vamos omitir o 00 SEMPRE)
3 - c0:a8:01:f5


Ficando assim: 18:0a:01:01:c0:a8:01:f5

[MASCARA][ROTA][GATEWAY] - não tem erro.

No PFSense em Additional BOOTP/DHCP Options declare:

Option 121 String 18:0a:01:01:c0:a8:01:f5



Salve e reinicialize o serviço de DHCP.

Depois confira no seu cliente.


E até a próxima!

OBS: Há um Script que faz a tarefa ficar muito mais fácil e funcional

Exemplo:
$ sh hexroute.sh 10.1.1.0/24 192.168.1.245
18:0a:01:01:c0:a8:01:f5


Escrevi esta dica baseado nestes links:

https://ercpe.de/blog/advanced-dhcp-options-pushing-static-routes-to-clients

https://forum.netgate.com/topic/84789/adding-static-routes-using-dhcp-rfc-3442

segunda-feira, 14 de janeiro de 2019

Identificando SPAM no Zimbra 8


Essa dica é apenas para eu não ter que ficar procurando no google

Como root:

# cat /var/log/zimbra.log | sed -n 's/.*sasl_username=//p' | sort | uniq -c | sort -n

Identificando a caixa com muitos envios, troque a senha e apague a fila.

Referência:
https://groups.google.com/forum/#!topic/zimbra-br/v98f-dJJ-_c

terça-feira, 4 de setembro de 2018

Perdeu a senha do Zabbix ?

Dica para quem perdeu a senha do Zabbix.

No mysql:

$ mysql -uroot -pSUA_SENHA zabbix;


MariaDB [zabbix]> UPDATE users SET passwd = MD5('SUA_NOVA_SENHA') WHERE userid = 1;


MariaDB [zabbix]>exit

Feito, basta acessar sua interface web com a nova senha.

segunda-feira, 16 de julho de 2018

DNS registro.br + MX Google


Uma dica simples (Supondo que você entenda a configuração de DNS):

Adicionando um MX hospedado no Google ao DNS do registro.br

Vá nas configurações de Zonas e adicone :


Entradas MX !!!

exemplo.com.br     0   aspmx.l.google.com
exemplo.com.br     10  alt1.aspmx.l.google.com
exemplo.com.br     10  alt2.aspmx.l.google.com
exemplo.com.br     20  aspmx2.googlemail.com
exemplo.com.br     20  aspmx3.googlemail.com


Logo, o nome fica em branco, o valor é o da segunda coluna e os servidores ficam na terceira coluna.

O FreeDNS do registro.br funciona e é uma excelente opção para quem não quer levantar um Bind.



quarta-feira, 5 de outubro de 2016

Dica - removendo leases dhcp no PfSense

Dica : As vezes necessitamos remover um conflito de IP gerado por IP's fixos X IP dinâmicos

Usando a opção 8 para acessar o shell :

# rm -f /var/dhcpd/var/db/dhcpd.lease*

E mande um restart no serviço DHCP.

abraço.

sexta-feira, 26 de agosto de 2016

Rotas estáticas via dhcpd

No post anterior falei sobre rotas estáticas criadas "na mão".

Eu considero ruim ter que configurar máquinas com IP fixo, ou sempre ter que fazer alterações. Logo, prefiro que o gateway faça as rotas, ou o DHCP se for algo específico.

Geralmente Impressoras me dão essa dor de cabeça (eu odeio Impressoras).


Abaixo uma config simplória do arquivo dhcpd.conf (Linux ou FreeBSD)
 
 
#CONFIGURACAO DHCPD.CONF 

ddns-update-style none; 

subnet 10.1.1.0 netmask 255.255.255.0 { 
            range 10.1.1.20  10.1.1.100;  
            option routers 10.1.1.1; 
            option domain-name "exemplo.com.br"; 
            option domain-name-servers 10.1.1.5;
} 

host impressora-exemplo { 
      hardware ethernet a1:b2:c3:d4:e5:f6; 
      fixed-address 10.1.1.10;  
      #O segredo é declarar um "option routers" só pra ela ;)
      option routers 10.1.1.254
 } 
 #EOF
 
Então, toda a rede possui gateway apontando para "10.1.1.1" e a impressora aponta para "10.1.1.254"
 
E não há a necessidade de ficar fixando IP no painel, basta possuir o MAC ADDRESS, no exemplo citado como: a1:b2:c3:d4:e5:f6
 
OBS: não esqueça de reiniciar o serviço após fazer a alteração.
 
 
 
Referência:
Copiei o arquivo daqui:
https://www.vivaolinux.com.br/etc/dhcpd.conf-ardezzoni/ 
 

Rotas estáticas sem mistérios.

As vezes escrever por escrever, neste caso por que nunca lembro como se faz no Windows 2000/2003 eu sempre esqueço do 'mask' .

Resolvi escrever sobre rotas estáticas, uma maravilha simples, mas que causa dor de cabeça nos iniciantes.

Supondo que você queira chegar até a rede 10.1.1.0/24 e que seu gateway para esta rede seja o IP 192.168.0.254.



Rotas no Linux (não interessa a distribuição)

Visualizar
# netstat -rn

Adicionar
# route add -net 10.1.1.0/24 gw 192.168.0.254

Remover
# route del -net 10.1.1.0/24

Limpar tudo
# route flush


Rotas no FreeBSD/Solaris

Visualizar
# netstat -rn

Adicionar
# route add 10.1.1.0/24 192.168.0.254

Remover
# route delete 10.1.1.0

Limpar tudo
# route flush


Rotas no Windows 98/2000/XP/2003 Há a necessidade estar como Administrador, e não somente no grupo "Administradores".

Visualizar
c:> route print

Adicionar
c:\> route add 10.1.1.0 mask 255.255.255.0 192.168.0.254

Remover
c:\> route delete 10.1.1.0

Limpar tudo
c:\> route -f

Rotas no Windows 7/8/10/2008/2012 ( requer elevação - quer dizer: execute como Administrador ).

Visualizar
c:> route print

Adicionar
c:\> route add 10.1.1.0/24 192.168.0.254

Remover
c:\> route delete 10.1.1.0
 

Limpar tudo
c:\> route -f


Beleza, agora é só implementar suas rotas.









Criação de discos virtuais no Linux.

Dica para criar o disco antes da instalação. Eu particularmente sou fã do virt-manager, acho simples usar o ssh -X para acessar, mas também acho "chato" ficar configurando detalhes na interface gráfica.

Então resolvi escrever estes comandos para que eu (e vocês) possamos lembrar.

Baseado no CentOS seguem duas maneiras de fazer a mesma coisa :


Usando qemu-img - pacote qemu-img :

# qemu-img create -f raw NOME-DO-DISCO.img 10G


Usando fallocate - pacote util-linux :

# fallocate -l 10G NOME-DO-DISCO.img


As duas maneiras criação discos são rápidas, particularmente prefiro usar o qemu-img.


Como é apenas uma dica, fica aberta a mais opções.




quinta-feira, 28 de julho de 2016

PfSense 2.3.X - falha ao instalar pacotes.

Dica interessante.

Ao instalar o PfSense v2.3.1 e v2.3.2  eu tive problemas para instalar pacotes via Package Manager.

exemplo: squid

[1/4] Installing squid-3.5.19...
Creating groups. Using existing group 'squid'.
Creating users Using existing user 'squid'. 
install: not found 
pkg: PRE-INSTALL script failed Failed


 E para solucionar a falta do "install" , entre no modo shell ( opção 8 ) do seu PfSense ou via ssh e digite :

# tar xv -C / -f /usr/local/share/pfSense/base.txz ./usr/bin/install


Agora sim, instale seus pacotes normalmente.

e um abraço.

A referência foi retirada de:
http://superuser.com/questions/1105350/pfsense-2-3-2-cannot-install-squid-and-squidguard

terça-feira, 19 de julho de 2016

MariaDB - Problemas ao instalar no Centos 7 via YUM



Me deparei com este erro, bem estranho, pois foi logo após instalar o pacote.


# yum -y install mariadb-server

# systemctl start mariadb
Job for mariadb.service failed. See 'systemctl status mariadb.service' and 'journalctl -xn' for details.



# journalctl -xn
160719 15:26:17 [ERROR] mysqld: Can't find file: './mysql/plugin.frm' (errno: 13)
160719 15:26:17 [ERROR] Can't open the mysql.plugin table. Please run mysql_upgrade to create it.
160719 15:26:17 [ERROR] Aria engine is not enabled or did not start. The Aria engine must be enabled to continue as mysqld was configured with --with-aria-tmp-tables
160719 15:26:17 [ERROR] Aborting



Bati cabeça até verificar que era um problema de permissões.

# chown -R mysql:mysql /var/lib/mysql

Aí sim, tente :

# systemctl start mariadb


E acesse :

 # mysql -u root
Welcome to the MariaDB monitor.  Commands end with ; or \g.
Your MariaDB connection id is 3
Server version: 5.5.47-MariaDB MariaDB Server

Copyright (c) 2000, 2015, Oracle, MariaDB Corporation Ab and others.

Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.

MariaDB [(none)]>



Dica simples de permissões.





quinta-feira, 9 de junho de 2016

Limpando filas do Zimbra

Dica simples para limpar a fila do Zimbra.

usando o root :

Deletar todas as mensagens:

# /opt/zimbra/postfix/sbin/postsuper -d ALL


Deletar somente as adiadas:

# /opt/zimbra/postfix/sbin/postsuper -d ALL defer

# /opt/zimbra/postfix/sbin/postsuper -d ALL deferred


Deletar as mensagens de entrada:

# /opt/zimbra/postfix/sbin/postsuper -d ALL incoming


Para verificar a fila do zimbra lembre-se, usando o usuário zimbra :

$ mailq

quinta-feira, 10 de março de 2016

FreeBSD - dd: /dev/da0: Operation not permitted

Passei por problemas ao tentar gravar uma ISO em um pendrive.


# dd if=SUA-IMAGEM.iso of=/dev/da0 bs=10240 conv=sync
dd: /dev/da0: Operation not permitted

Vasculhando encontrei isso :

# sysctl kern.geom.debugflags=0x10

E tudo funcionou normal.


Adicione no seu sysctl.conf a linha :

kern.geom.debugflags=0x10

Que funcionará "on boot".


Referência:
http://www.freebsdonline.com/content/view/666/528/

quarta-feira, 2 de março de 2016

FreeBSD 10 - Acessando HD Externo usando ntfs-3g

Resolvi após alguns dias voltar a usar o FreeBSD como Desktop, mais por masoquismo do que por comodidade, ou apenas para forçar um novo desafio.

Quem reclama de Linux no Desktop é maluco e preguiçoso ;)


O Problema : Montar meu HD externo e acessar o backup.

# mount /dev/da0s1 /mnt
mount: /dev/da0s1: Invalid argument

# mount -t ntfs /dev/da0s1 /mnt
mount: /dev/da0s1: Operation not supported by device

Esqueci do fuse !

# pkg install fusefs-ntfs

Adicione o fuse ao boot e suba o módulo.

# vim /boot/loader.conf 

fusefs_load="YES"

E em seguida:

# kldload fuse

Para habilitar um usuário comum a montar o HD.

# vim /etc/sysctl.conf

vfs.usermount=1

Habilitando:

# sysctl vfs.usermount=1


Até que em fim, monte:

# ntfs-3g /dev/da0s1 /mnt

e um abraço.



Referência:
http://blog.ataboydesign.com/2014/04/23/freebsd-10-mounting-usb-drive-with-ext4-filesystem/

quinta-feira, 3 de dezembro de 2015

Google Chorme SELinux AVC

Dica:

Problemas com Google Chrome usando SELinux enforcing.

O seu navegador ficará "cinza" e não navegará, então use isso :

# setsebool -P unconfined_chrome_sandbox_transition 0

# grep chrome /var/log/audit/audit.log | audit2allow -M mypol

# semodule -i mypol.pp

Geralmente na primeira instalação.

OBS: Sempre use o Navegador de Alertas AVC

abraço

segunda-feira, 19 de outubro de 2015

Mysql export schema

Dica para recriar tabelas limpas (sem dados)


# mysqldump -uroot -pSENHA --no-data SEU_DATABASE

Após, você pode exportar para um sql e importar novamente.

simples.


terça-feira, 22 de setembro de 2015

Failed to start SYSV: Openfire is an XMPP server


Dica para instalar o Openfire no Oracle Linux / Centos 7

Supondo que você já tenha baixado o Java, o Maridb e o pacote do Openfire.

E ao subir o serviço apareceu :

# service openfire start
Starting openfire (via systemctl):  Job for openfire.service failed. See 'systemctl status openfire.service' and 'journalctl -xn' for details.   [FAILED]
                                                           

# journalctl -xn

localhost.localdomain systemd[1]: Failed to start SYSV: Openfire is an XMPP server, which is a server that facilitates XML based communication, such as chat..
localhost.localdomain systemd[1]: Unit openfire.service entered failed state.


Adicione a linha abaixo no arquivo /etc/yum.conf

multilib_policy=all

E instale o que falta

# yum -y install libstdc++.i686

Feito isso :

# systemctl enable openfire

# service openfire start

# netstat -ant | grep 9090
tcp6       0      0 :::9090                 :::*                    OUÇA


Só configurar.


Referência:
https://community.igniterealtime.org/thread/53255

sexta-feira, 18 de setembro de 2015

FreeBSD : calcru: runtime went backwards


Dica para quem tem esse problema, geralmente em máquinas virtuais FreeBSD 9X ou Superiores.

No comando "dmesg" geralmente aparece a mensagem abaixo:

calcru: runtime went backwards from 54 usec to 43 usec for pid 755 (XXA)
calcru: runtime went backwards from 54 usec to 43 usec for pid 756 (XXB)
calcru: runtime went backwards from 54 usec to 43 usec for pid 757 (XXC)
calcru: runtime went backwards from 54 usec to 43 usec for pid 758 (XXD)

Isso ocorre devido uma falha no clock (relógio) , via BIOS do Host ou Ntp em alguns casos, e para eliminarmos isso, edite o arquivo sysctl.conf  (da VM) e adicione :

kern.timecounter.hardware=TSC

Após :

# sysctl kern.timecounter.hardware=TSC

ou

# reboot

OBS: PFSense é FreeBSD também.

Referência:

https://spuder.wordpress.com/2012/01/14/freebsd-calcru-runtime-went-backwards/