Geradores de sintaxe Crontab

Se você quiser executar periodicamente uma tarefa (por exemplo, enviar e-mails, fazer backup de banco de dados, fazer manutenção regular etc.) em horários e datas especificadas, é bem provável que você irá utilizar o CRON disponível nos sistemas Unix / Linux para isso.

A sintaxe de agendamento é simples, mas permite muitas customizações:

# .---------------- minute (0 - 59) 
# | .------------- hour (0 - 23)
# | | .---------- day of month (1 - 31)
# | | | .------- month (1 - 12) OR jan,feb,mar,apr ... 
# | | | | .---- day of week (0 - 7) (Sunday=0 or 7)  OR sun,mon,tue,wed,thu,fri,sat 
# | | | | |
# * * * * *  command to be executed

Para facilitar na hora de definir esse agendamento, existe alguns geradores que poderão ajudá-lo a produzir uma sintaxe de crontab que você possa copiar e colar em seu arquivo crontab (você pode abrir o arquivo usando o comando crontab –e).

Crontab GURU
https://crontab.guru/

Crontab Generator
https://crontab-generator.org/

 

 

Turnkey Linux – Access denied for user ‘root’@’localhost’

Se você estiver utilizando algum Appliance da TurnKey GNU/Linux 15.0 que venha com banco de dados MySQL, saiba que o banco que vem por padrão é o MariaDB e isso é ótimo!

Distributor ID: TurnKey
Description: TurnKey GNU/Linux 9.5 (stretch)
Release: 9.5
Codename: stretch

Algo que tem ocorrido com essa versão do Appliance é que o acesso ao TurnKey Linux Database Administration Console – Powered by Adminer   – (https://IP:12322), é não permitir o login com usuário root e senha definida na instalação, exibindo o erro:

Access denied for user ‘root’@’localhost’

Para resolver isso o procedimento é simples:

# mysql -u root -p 
Welcome to the MariaDB monitor.  Commands end with ; or \g.
Your MariaDB connection id is 6
Server version: 10.1.26-MariaDB-0+deb9u1 Debian 9.1
Copyright (c) 2000, 2017, Oracle, MariaDB Corporation Ab and others.
Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.

MariaDB [(none)]> use mysql;
MariaDB [(none)]> update user set password=PASSWORD('INFORME_A_SENHA') where User='root';
MariaDB [(none)]> update user set plugin='' where User='root';
MariaDB [(none)]> flush privileges; 
MariaDB [(none)]> quit;

# /etc/init.d/mysql restart

OpenWRT – Comandos úteis

Apenas para não esquecer

  • Transferindo a imagem da máquina local para o roteador com OpenWRT
    user@localmachine:~$ scp /caminho/do/arquivo/em/seu/computador root@192.168.1.1:/caminho/do/arquivo/no/roteador
    exemplo:
    # scp openwrt-15.05.1-ar71xx-generic-dir-615-e4-squashfs-factory.bin root@192.168.1.1:/tmp 
  • Atualizando a imagem transferida
    # cd /tmp/
    # mtd writeopenwrt-15.05.1-ar71xx-generic-dir-615-e4-squashfs-factory.bin linux && reboot
  • Restaurando a firmware original do roteador
    Transfira a firmware para o roteador utilizando SCP e rode o comando abaixo:
    # mtd -r write /tmp/original_firmware.bin firmware

 

Livro: DD-WRT – Guia Prático do Usuário Iniciante (Português)

DD-WRT é um firmware baseado em Linux para uma grande variedade de roteadores WLAN e sistemas incorporados.  A ênfase principal reside em fornecer o tratamento mais fácil possível, enquanto ao mesmo tempo, apoiar um grande número de funcionalidades no âmbito da respectiva plataforma de hardware utilizado. É desenvolvido por uma equipe de programadores independentes liderada pelo BrianSlayer.
Compatível com diversos modelos de roteadores wireless: que usam chipsets da Broadcom, Artheros e Ralink e processadores comuns (x86).

Download do Livro – Clique aqui.

Emulador do DD-WRT

Ler o livro online:
Opção 1 – http://pt.slideshare.net/polones/dd-wrt-guia-pratico
Opção 2 – http://issuu.com/opolones/docs/dd-wrt-guia-pratico
Opção 3 – https://www.scribd.com/doc/228202992/Dd-wrt-Guia-Pratico-Do-Usuario-Iniciante

WikiBook – https://en.wikibooks.org/wiki/DD-WRT
http://www.ibm.com/developerworks/br/library/l-wifisecureddwrt/

 

Como desabilitar um usuário no Linux

Existe n maneiras de desabilitar usuários no Linux, embora muitos utilizem a técnica de alterar a senha para um valor inválido, mas esta não é a forma recomendada, pois o usuário irá perder a senha, mas ele ainda poderá utilizar algum outro token de autenticação (chave SSH por exemplo).

Para desabilitar um usuário completamente utilize:

# usermod –expiredate 1 usuario
(Isto irá setar  a data de expiração do usuário para 02/01/1970)

Se quiser habilitar novamente o usuário sem data de expiração:
# usermod –expiredate -1 usuario

Howto: Tunelamento de servidor SVN via ProxyPass – Apache

Caso: Você já tem um servidor SVN em sua empresa rodando de boa internamente e agora precisa colocar o serviço SVN para acesso externo. Existe n maneiras de se fazer isso, porém caso você esteja trabalhando com proxypass para disponibilizar conteúdo da sua rede interna à internet, esta é a forma de fazer com o Subversion.

<virtualhost *:80>
ServerName svn.dominio.com
ProxyPass / http://svn.dominio.com/
<location / >
        ProxyPassReverse / http://svn.dominio.com
        <limit OPTIONS PROPFIND GET REPORT MKACTIVITY PROPPATCH PUT CHECKOUT
               MKCOL MOVE COPY DELETE LOCK UNLOCK MERGE>
          Order Deny,Allow
          Allow from all
          Satisfy Any
        </limit>
</location>

Pronto, já pode-se conectar com seu cliente SVN.
Fonte: http://silmor.de/proxysvn.php

NAT 1:1 ou Proxy Reverso, qual a melhor alternativa?

Genericamente falando, tanto o NAT 1:1 como o Proxy Reverso tem por finalidade ligar um endereço interno específico para um endereço externo.

NAT 1:1 (one-to-one)
Se desejarmos que uma máquina da rede interna possa ser vista de fora da rede, ou seja, possa receber conexões e ter servidores instalados, podemos usar o NAT 1:1. Esse esquema de NAT é bem simples e consiste em criarmos manualmente uma tabela no roteador mapeando o IP privado para um IP público. Esse tipo de NAT também é chamado de NAT estático, uma vez que as informações na tabela permanecem válidas indefinidamente após serem criadas.

Como existe permanentemente uma entrada na Tabela NAT associando o IP 10.1.1.2 ao IP 200.3.3.3, tanto a máquina A pode iniciar a comunicação com alguma máquina da Internet como alguma máquina da Internet é que pode iniciar uma comunicação com a máquina A. A figura acima mostra o caso onde a máquina A enviou um pacote para uma máquina na Internet que possuía o IP 60.6.6.6. Quando esse pacote passa pelo roteador, o IP de origem será trocado para o IP 200.3.3.3. Do mesmo modo, como pode ser visto na próxima figura, sempre que o roteador receber um pacote da Internet para o IP 200.3.3.3 o IP de destino será trocado para 10.1.1.2.

Read More

Gerenciar Máquina Virtual no VMware ESXi via console (SSH)

Basicamente para controlar as VMs utiliza-se o comando vim-cmd vmsvc

Primeira coisa, você deve saber o ID da máquina virtual que você deseja manipular:

Listar máquinas registradas:
# vim-cmd vmsvc/getallvms

Visualizar o sumário da máquina:
# vim-cmd vmsvc/get.summary [ID]

Para ligar uma VM:
# vim-cmd vmsvc/power.on [ID]

Para desligar uma VM: 
# vim-cmd vmsvc/power.off [ID]

Para suspender uma VM
# vim-cmd vmsvc/power.suspend [ID]

Existem muitos outros…

Fontes:
http://blogs.vmware.com/vsphere/2011/03/ops-changes-part-6-quick-troubleshooting-tips.html
http://kb.vmware.com/selfservice/microsites/search.do?language=en_US&cmd=displayKC&externalId=1038043