jul 052020
 

A mágica do GNU/Linux muitas vezes acontece sem que você tenha sequer uma interface gráfica para uso amigável, porém, o shell (ou o terminal) também tem suas malícias para agilizar o seu trabalho.

Você pode trabalhar com várias aplicações ao mesmo tempo sem ter que terminar o que estava fazendo para iniciar uma nova tarefa, isso graças aos comandos “jobs”, “fg” e “bg”. “Jobs” significa “Trabalhos” e serve para exibir tudo o que você está fazendo no shell do GNU/Linux mas que está em segundo plano. Claro, você precisa mandar as tarefas para segundo plano para poder utilizar o comando “jobs”.

“fg” (foreground) serve para trazer as tarefas que estão em segundo plano para o primeiro plano, assim você pode continuar fazendo o que estava fazendo anteriormente.

Já a última opção, “bg” (background) serve para continuar executando tarefas em segundo plano, para que o shell fique livre e você possa executar outras tarefas sem interromper a tarefa anterior.

Vamos ver alguns exemplos práticos para que você entenda melhor.

Continue reading »

jun 182020
 

INTRODUÇÃO

O objetivo de um mecanismo de replicação de dados é permitir a manutenção de várias cópias idênticas de um ­­­­mesmo dado em vários servidores de bancos de dados (SGBD). Os principais benefícios da replicação de dados são a redundância, o que torna o sistema tolerante a falhas, a possibilidade de um balanceamento de carga do sistema, já que o acesso pode ser distribuído entre as réplicas, e finalmente, ter-ser o backup online dos dados, já que todas as replicas estariam sincronizadas. Este artigo, apresenta uma introdução ao mecanismo de replicação do MySQL, bem como as configurações básicas para realização desta tarefa.

VISÃO GERAL DA REPLICAÇÃO

O MySQL permite um tipo de replicação conhecido como Master-Slave, onde temos um servidor atuando como master e um ou mais servidores atuando como slave. O master grava em um log binário de alteração todos os comandos de atualizações da base de dados. Desta forma, todas as alterações ocorridas no master são imediatamente replicadas para os outros servidores slave.

A replicação no mysql é principalmente compatível com a anterior, isto é, um servidor mais novo pode normalmente ser um escravo de um servidor mais velho sem nenhum problema. Porém, versões mais antigas dos servidores são, freqüentemente, incapazes de servir como slaves de versões mais novas, pois eles não podem entender novas características ou a sintaxe SQL que o servidor mais novo utiliza, e pode haver diferenças no formato dos arquivos que a replicação usa, por exemplo, você não pode replicar de um master MySQL 5.0 para um slave MySQL 4.0.

Continue reading »

jun 152020
 

O Sed é um editor de textos não interativo. Vem do inglês Stream Editor, ou seja, editor de fluxos (de texto).

O Sed é um editor de textos não interativo. Vem do inglês [S]tream [ED]itor, ou seja, editor de fluxos de texto. O Sed da GNU, atualmente é o utilizado pela maioria das distribuições de Linux e é o que tem mais funcionalidades novas: GNU/Linux.

É case sentive

  • -i altera o arquivo
  • -e imprime na tela sem alterar o arquivo
  • -n faz a supressão, mostra só o resutado do comando
  • s substitui um trecho de texto por outro
  • ! inverte a lógica do comando
  • ; separador de comandos
  • | separador de strings
  • d no final deleta
  • p no final imprime
  • g no final (como se usa o d e p) altera todas as ocorrências
  • q sai do sed , não continua o comando

Continue reading »

jun 032020
 

When an application puts a socket into LISTEN state using the listen syscall, it needs to specify a backlog for that socket. The backlog is usually described as the limit for the queue of incoming connections.

TCP state diagram

Continue reading »

abr 192020
 

rsync é uma ferramenta de cópia e sincronização de arquivos e diretórios muito versátil e simples de utilizar. Com o rsync é possível copiar arquivos localmente (no mesmo sistema de arquivos), ou para um outro host na rede utilizando qualquer shell remoto, ou ainda por meio de um daemon remoto do rsync.

O rsync utiliza um algoritmo de transferência de dados que permite enviar apenas as diferenças entre os arquivos enviados e os existentes no destino, desta forma diminuindo a quantidade de dados enviados, e aumentando a performance da transferência. Por isso, é largamente utilizado como ferramenta de backup de dados, assim como comando de cópia normal do dia-a-dia.

O rsync também possui suporte à cópia de links, dispositivos, proprietários, grupos e permissões, além de não necessitar de privilégios de superusuário (root) para realizar seu trabalho.

Para que os dados sejam transferidos com segurança, o rsync assume que um servidor SSH esteja em execução ao menos em um dos hosts onde ocorrerá a transferência de arquivos.

Continue reading »

abr 192020
 

Esta dica irá mostrar um exemplo de configuração do lshell, em um sistema Debian Squeeze, para limitar a execução de comandos previamente liberados para um determinado usuário ou grupo, bem como os diretórios aos quais o usuário poderá ter acesso, dentre outras opções relacionadas ao seu ambiente shell.

Instalação do lshell:

# aptitude install lshell

Configuração do lshell – /etc/lshell.conf:

# gedit /etc/lshell.conf

[global]

## Diretório de logs.
## Usuário deve ser membro do grupo lshell.

logpath     : /var/log/lshell/

## Nível de log: 0, 1, 2 ou 3.
loglevel      : 3

## Nome do arquivo de log. (Padrão %u.log. Ex: usuario.log)
logfilename   : %y%m%d-%u

## Configuração padrão. Poderão ser criadas configurações
## separadas para cada usuário ou grupo.
## Ex: [usuariox], [grp:users]

[default]

## Lista de comandos permitidos ao usuário. Use ‘all’ para permitir
## todos os comandos na variável PATH do usuário.

allowed     : [‘ls’,’echo’,’cd’,’ll’,’date’,’hora’,’vim’,’vi’,’cat’]

## Lista de comandos ou caracteres proibidos.
forbidden     : [‘;’, ‘&’, ‘|’,’`’,’>’,'<‘, ‘$(‘, ‘${‘, ‘cat’]

## Lista de comandos permitidos quando usados com sudo.
## Devem estar previamente configurados em /etc/sudoers.

sudo_commands    : [‘modprobe’, ‘iptables’]

## Número de avisos que o usuário terá antes de ser desconectado
## após tentar entrar em um diretório não permitido ou executar
## um comando da lista ‘forbidden’.

warning_counter : 5

## Aliases para comandos. (alias e comando devem estar na lista ‘allowed’)
aliases     : {‘ll’:’ls -l’, ‘vi’:’vim’, ‘hora’:’date +%H:%M’}

## Texto a ser exibido ao iniciar o lshell.
intro      : “== Ambiente restrito ==\nDigite ‘?’ ou ‘help’ para ver a lista de comandos permitidos.”

## Tempo máximo de inatividade em segundos antes
## do usuário ser automaticamente desconectado.

timer      : 300

## Lista de pastas as quais poderão ser acessadas pelo usuário.
path      : [‘/tmp/’,’/var’]

## Define o diretório home do usuário. Se não especificado,
## sera utilizado o valor da variável de ambiente $HOME.
#home_path    : ‘/home/usuario/’

## Altera a variável de ambiente PATH do usuário.
#env_path    : ‘:/usr/local/bin:/usr/sbin’

## Permite ou proíbe o uso de SCP pelo usuário. ( 1 permitir – 0 negar)
scp      : 1

## Permite ou proíbe uploads com SCP ( 1 permitir – 0 negar).
## Parâmetro ‘scp’ deve possuir valor 1.

scp_upload    : 1

## Permite ou proíbe downloads com SCP ( 1 permitir – 0 negar).
## Parâmetro ‘scp’ deve possuir valor 1.

scp_download    : 0

## Permite ou proíbe o uso de SFTP ( 1 permitir – 0 negar).
sftp      : 1

## Lista de comandos permitidos através de SSH.
## Ex: ssh [email protected] ‘ls ~’

overssh      : [‘ls’,’rsync’]

## Considerar ou não comandos inválidos como ação proibida, se 1,
## comandos inválidos irão gerar avisos que poderão desconectar
## o usuário, conforme parâmetro ‘warning_counter’.

strict      : 0

## Forçar pasta de destino para arquivos enviados por SCP.
scpforce      : “/tmp”

## tamanho máximo do arquivo history.
history_size    : 100

## Nome do arquivo contendo o hipótrico de comandos.
history_file    : “/home/%u/.lshell_history”

Continue reading »

fev 032020
 

Parece que todos os arquivos de log de todos os servidores HTTP que eu administro têm seus logs de erros repletos de erros HTTP 404 nos últimos dias. E de onde exatamente estão todos esses erros? Aparentemente, eles vêm de crianças de script que procuram assumir os bancos de dados SQL para o lulz.

O QUE É O ZMEU?

De minha pesquisa, o ZmEu parece ser uma ferramenta de segurança usada para descobrir falhas de segurança na versão 2.xx do phpMyAdmin, um gerenciador de banco de dados MySQL baseado na web. A ferramenta parece ter se originado em algum lugar da Europa Oriental. Como o que parece acontecer com todas as ferramentas de segurança do black hat, ele foi para a China, onde tem sido usado desde então para ataques de força bruta ininterrupta contra servidores da Web em todo o mundo.

Continue reading »

dez 092019
 

Um computador tem essencialmente dois tipos de memória: a memória RAM e a memória de armazenamento em disco. A memória RAM é volátil, mas é a mais rápida de um sistema. No entanto, comparativamente à memória de armazenamento (memória em disco), a memória RAM é mais cara e de menor dimensão.

No Linux podemos ter uma partição Swap que permite usar memória de armazenamento do disco como se fosse memória RAM (obviamente sendo mais lenta). Hoje ensinamos como aumentar a memória Swap do seu sistema Linux.

Dica Linux: Como aumentar a memória Swap do sistema?

Continue reading »

Install Apache2, MariaDB And PHP 7.2 With PhpMyAdmin On Ubuntu 16.04 | 18.04 | 18.10 (LAMP + PhpMyAdmin)

 Apache2, Banco de Dados, CentOS 7 / RHEL 7, Clusterweb, ClusterWeb, Debian, Hospedagem, Leitura Recomendada, Linux, Profissional de TI, Ubuntu  Comentários desativados em Install Apache2, MariaDB And PHP 7.2 With PhpMyAdmin On Ubuntu 16.04 | 18.04 | 18.10 (LAMP + PhpMyAdmin)
nov 072019
 

This brief tutorial shows students and new users how to install LAMP + phpMyAdmin on Ubuntu 16.04 | 18.04 | 18.10 servers….

LAMP is an acronym for Linux (Ubuntu), Apache2 HTTP Server, MariaDB or MySQL Database Server and PHP Scripting Language… It is a group of open source software and building blocks of many of the web applications and majority of the content management systems (CMS) in use today…

phpMyAdmin is a web-based tool that allows you to interact with MariaDB databases, manage user accounts and privileges, execute SQL-statements, import and export data and much, much more.

If you’re going to be developing any PHP based applications or websites, then you’re probably going to be using the LAMP and phpMyAdmin allows you to easily manage your databases from your favorites web browsers…

This brief tutorial is going to show students and new users how to install Apache2, MariaDB, PHP with phpMyAdmin support on Ubuntu Linux 16.04 | 18.04 and 18.10 servers…

To get started with installing the LAMP Stack, follow the steps below:

Continue reading »

Como visualizar o uso do espaço em disco no Linux

 CentOS 7 / RHEL 7, Clusterweb, ClusterWeb, Debian, Leitura Recomendada, Linux, Profissional de TI, Ubuntu  Comentários desativados em Como visualizar o uso do espaço em disco no Linux
set 172019
 

Você pode encontrar na Internet um monte de ferramentas que visualizam o uso do espaço em disco no Linux. Nem precisava. O próprio sistema operacional já apresenta uma solução robusta chamadadf. O comando “df” significa “disk filesystem” e pode ser facilmente utilizada para avaliar o espaço em disco no sistema de arquivos do Linux.

Vamos estudar agora dez pontos do comando:

Continue reading »

set 132019
 

Introduction

MariaDB is an open-source database management system, commonly used as an alternative for the MySQL portion of the popular LAMP (Linux, Apache, MySQL, PHP/Python/Perl) stack. It is intended to be a drop-in replacement for MySQL and Debian now only ships with MariaDB packages. If you attempt to install MySQL server related packages, you’ll receive the compatible MariaDB replacement versions instead.

The short version of this installation guide consists of these three steps:

  • Update your package index using apt
  • Install the mariadb-server package using apt. The package also pulls in related tools to interact with MariaDB
  • Run the included mysql_secure_installation security script to restrict access to the server

Continue reading »

Instalar a ferramenta de administração de banco de dados PHPMyAdmin

 Apache2, CentOS 7 / RHEL 7, Clusterweb, ClusterWeb, Debian, Leitura Recomendada, Linux, Profissional de TI, Programação  Comentários desativados em Instalar a ferramenta de administração de banco de dados PHPMyAdmin
set 132019
 

Desde o Debian 10, o PHPMyAdmin não está mais disponível como pacote .deb. Portanto, vamos instalá-lo a partir da fonte.

Crie pastas para o PHPMyadmin:

mkdir /usr/share/phpmyadmin
mkdir /etc/phpmyadmin
mkdir -p /var/lib/phpmyadmin/tmp
chown -R www-data:www-data /var/lib/phpmyadmin
touch /etc/phpmyadmin/htpasswd.setup

Continue reading »

Como criar um Novo Usuário e Conceder Permissões no MySQL

 Banco de Dados, CentOS 7 / RHEL 7, Clusterweb, ClusterWeb, Debian, Leitura Recomendada, Linux, MySQL, Profissional de TI, Ubuntu  Comentários desativados em Como criar um Novo Usuário e Conceder Permissões no MySQL
set 132019
 

O que representa o Vermelho

As linhas que o usuário precisa digitar ou customizar estarão em vermelho neste tutorial! O restante pode na maior parte ser copiado e colado.

Sobre o MySQL

O MySQL é um sistema de gerenciamento de banco de dados open source que ajuda os usuários a armazenar, organizar, e posteriormente, recuperar dados. Ele possui uma variedade de opções para conceder a usuários específicos permissões diferenciadas dentro de tabelas e bases de dados – este tutorial vai lhe dar um breve resumo de algumas das muitas opções.

Continue reading »

set 032019
 

PHP 7 foi lançado dezembro passado. Após testar o código localmente, é hora de atualizar o servidor de produção. Geralmente, a maioria dos sites funcionam bem nele.

Contudo, suspeitamos que não muitos sites atualizaram. É mais seguro e fácil continuar em versões anteriores. Na verdade, uma pesquisa de sites WordPress mostrou que alguns tem:

“Até Novembro de 2016, 53.9% dos sites WordPress rodam versões PHP menores que 5.5 Apenas, 3.4% dos sites rodam PHP 7, a versão atual do PHP.” via PHP Compatibility Checker.

Mas PHP 7 já está aí há quase um ano.

Nesse episódio, mostraremos uma abordagem para atualizar para PHP 7 no Ubuntu 14.x e resolver problemas com PHPMyAdmin, que muitos vanguardistas enfrentaram.

Por hora, se usamos WordPress, devemos instalar o plugin PHP Compatibility Checker para garantir que não encontraremos problemas inesperados com nossos Plugins.

Sempre gostamos de suas ideias e comentários. Se tiverem perguntas ou sugestões de tópicos, por favor, publique seus pensamentos na seção de comentários.

Continue reading »