SOFTWARE LIVRE

quarta-feira, 12 de março de 2014

Objetivos Certificação Linux LPIC - Exame 101

By on 12:51


Olá pessoal, neste artigo vamos explorar os requisitos exigidos na primeira prova para a obtenção da Certificação Linux do LPI (Linux Professional Institute) - O exame LPIC-101.

O exame 101 é dividido basicamente em 4 tópicos:
  • 101 - Arquitetura do Sistema - Peso 8
  • 102 - Instalação do Linux e Gerenciamento de Pacotes - Peso 11
  • 103 - Comandos GNU e Unix - Peso 26
  • 104 - Dispositivos, Sistemas de Arquivos Linux e FHS - Peso 15

Os pesos indicam a importância do assunto na prova, no exame 101 podemos notar que o tópico com maior peso é o 103 - Comandos GNU/Linux e Unix com o valor 26, isto quer dizer que o exame terá 26 perguntas neste tópico.

Cada Tópico tem suas subdivisão que estão elencadas abaixo:


Tópico 101 - Arquitetura do Sistema

  • 101.1 Identificação e configuração de hardware (peso 2)
  • 101.2 Inicialização (boot) do sistema (peso 3)
  • 101.3 Alternar níveis, desligar e reniciar o sistema (peso 3)



Tópico 102 - Instalação do Linux e Gerenciamento de Pacotes

  •  102.1 Dimensionar partições de disco (peso 2)
  •  102.2 Instalação do gerenciador de boot (peso 2)
  •  102.3 Gerenciamento de bibliotecas do sistema (peso 1)
  •  102.4 Gerenciamento de pacotes DEB (peso 3)
  •  102.5 Gerenciamento de pacotes RPM (peso 3)




Tópico 103 - Comandos GNU e Unix

  •  103.1 A linha de comandos (peso 4)
  •  103.2 Fluxo de texto e uso de filtros (peso 3)
  •  103.3 Gerenciamento básico de arquivos (peso 4)
  •  103.4 Streams, Pipes e Redirecionadores (peso 4)
  •  103.5 Gerenciamento de processos (peso 4)
  •  103.6 Prioridade de processos (peso 2)
  •  103.7 Buscas usando expressões regulares (peso 2)
  •  103.8 Operações básicas em arquivos usando o editor VI (peso 3)




Tópico 104 -Dispositivos, Sistemas de Arquivos e FHS

  •  104.1 Partições e sistemas de arquivos (peso 2)
  •  104.2 Manter integridade do sistema de arquivos (peso 2)
  •  104.3 Pontos de montagens em sistemas de arquivos (peso 3)
  •  104.4 Administrar cotas de discos (peso 1)
  •  104.5 Permissões e propriedades de arquivos (peso 3)
  •  104.6 Criar e alterar links simbólicos e físicos (peso 2)
  •  104.7 Encontrar arquivos e sua localização correta (peso 2)


Mais informações podem ser encontradas no site do LPI: www.lpi.org





    terça-feira, 11 de março de 2014

    Curso de Introdução a Linux

    By on 12:17


    Linux está presente em 98% dos super computadores do mundo, milhares dos servidores da Internet, na maioria das transações financeiras e milhões de smartphones com Android, ou seja Linux está em todos os lugares

    A edX aprensenta um curso de Introdução ao Linux de forma EAD e gratuita, o curso visa explorar várias ferramentas e técnicas comumente utilizada por programadores Linux, administradores de sistemas e usuários finais aprenderão a utilizar o ambiente Linux no dia-a-dia.

    O curso é destinado profissionais com experiência em computadores mas que tenham limitações ou nenhuma experiência em Linux.

    Esta é uma ótima maneira de obter bons conhecimentos de Linux seja na linha de comando ou no modo gráfico.


    Link do curso: https://www.edx.org/course/linuxfoundationx/linuxfoundationx-lfs101x-introduction-1621




    sexta-feira, 13 de dezembro de 2013

    Atualizando o Grub2 em sistemas Red Hat-like

    By on 11:03

    Para atualizar o grub2 nos sitemas Red Hat-like (CentOS, Fedora, Scientific Linux) não há o comando update-brub2, para refazer o menu no grub deve-se utilizar o comando

    grub2-mkconfig -o /boot/grub2/grub.cfg
    
    O comando deve ser executado como root.

    Desta forma o sistema irá recriar o arquivo de configuração /boot/grub2/grub.cfg

    Até a próxima.



    domingo, 1 de dezembro de 2013

    Compartilhando a Internet com iptables

    By on 22:33


    Uma organização hoje precisa ter internet em seus computadores para estar conectada com o mundo, para que haja esta conexão é necessário um endereço IP válido, mas a quantidade de IP na versão 4 está acabando, o que encarece o valor de se ter vários endereços válidos.

    Para driblar esta falta de IP, podemos utilizar um servidor Linux com IP válido como gateway da rede interna para compartilhar a internet, este servidor deve ter pelo menos duas placas de redes, uma para receber a internet e outra que faz parte da rede interna.

    Com o Linux podemos compartilhar a internet vinda do roteador para a rede interna, para isto temos que habilitar o repasse de pacotes pelo kernel.

    echo 1 > /proc/sys/net/ipv4/ip_forward
    

    Com isto o Linux estará habilitado para o repasse de pacotes, mas esta configuração não é permanente pois o diretório /proc só existe na memória RAM, ou seja enquanto o servidor estiver ligado.

    Para que a configuração resista a um desligamento podemos editar o arquivo /etc/sysctl.conf alterando a seguinte configuração:
    net.ipv4.ip_forward=1

    Após salvar o arquivo recarregue as configurações com o comando:
    #sysctl -p

    Cenário

    A segunda parte da configuração envolve o firewall de pacotes netfilter utilizando o comando iptables.

    Configurações do Servidor
    eth0 Placa que recebe dados da Internet
    eth1 Placa que faz parte da Rede Interna
    iptables -t nat -A POSTROUTING -o eth0 -s 192.168.200.0/24 -j MASQUERADE

    Para que as máquinas tenham conexão com a internet, elas devem estar com o gateway configurado com o IP do servidor Linux (192.168.200.1).

    Até a próxima.



    sábado, 23 de novembro de 2013

    Comando find

    By on 09:56


    O comando find no Linux é muito útil e prático na pesquisa de arquivos. Ele consegue pesquisar arquivos baseados em vários critérios de busca como permissões, propriedades, data de modificação, etc.

    Neste artigo será apresentado como usar o comando find com várias opções possíveis. Os exemplos são distintos para facilitar a compreensão. O comando find está disponível na maioria das distribuições linux por padrão.

    Este é um comando que você deve dominar, se você quiser se sentir confortável com seu sistema Linux.

    Então vamos começar, a forma básica do comando é:

    find onde-quer-pesquisar critérios-de-busca o-que-você-procura
    

    Exemplos básicos

    1. Listar todos os arquivos do diretório corrente

    Este comando lista todos os arquivos do diretório corrente bem como seus subdiretórios.
    $ find
    .
    ./abc.txt
    ./subdir
    ./subdir/how.php
    ./cool.php
    

    O comando é o mesmo que
    $ find .
    $ find . - print
    

    2. Pesquisar num caminho ou diretório específico

    Este comando vai pesquisar por arquivos no diretório test do diretório corrente. Por padrão vai listar todos os arquivos dentro de test.
    $ find ./test
    ./test
    ./test/abc.txt
    ./test/subdir
    ./test/subdir/how.php
    ./test/cool.php
    

    O comando abaixo pesquisa arquivos pelo nome
    $ find ./test -name abc.txt
    ./test/abc.txt
    

    Também é possível utilizar coringas
    $ find ./test -name *.php
    ./test/subdir/how.php
    ./test/cool.php
    

    Perceba que todos os subdiretórios são pesquisados recursivamente. Isto é muito útil na busca de arquivos numa estrutura grande de diretórios

    Ignorando o case-sentive
    As vezes não sabemos se o nome está com letras maiúsculas ou minúsculas. Para ignorar esta diferença, basta utilizar a opção iname no lugar de name.
    $ find ./test -iname *.Php
    ./test/subdir/how.php
    ./test/cool.php
    

    3. Limite de profundidade da pesquisa

    O comando find, por padrão, percorre toda a árvore de diretórios de forma recursiva. No entanto, a profundidade da pesquisa pode ser especificada. Por exemplo, nós não queremos ir mais de 2 ou 3 níveis para baixo nos sub-diretórios. Isso é feito usando a opção maxdepth.
    $ find ./test -maxdepth 2 -name *.php
    ./test/subdir/how.php
    ./test/cool.php
    

    $ find ./test -maxdepth 1 -name *.php
    ./test/cool.php
    

    O segundo exemplo usa maxdepth de 1, o que significa que ele não vai mais baixo do que um nível mais profundo, ou apenas no diretório atual.

    Isto é muito útil quando queremos fazer apenas no diretório atual ou no máximo um nível de sub-diretórios de profundidade e não de toda a árvore de diretórios que levaria mais tempo uma busca limitada.

    Assim como maxdepth existe uma opção chamada mindepth que faz o que o nome sugere, ou seja, ele vai pelo menos nível N profunda antes de procurar os arquivos.

    4. Invertendo a pesquisa

    Também é possível pesquisar por arquivos que não fazem nenhum critério no padrão determinado. Isso é útil quando se sabe quais arquivos serão excluídos da pesquisa.
    $ find ./test -not -name *.php
    ./test
    ./test/abc.txt
    ./test/subdir
    

    Assim, no exemplo acima, encontramos todos os arquivos que não têm a extensão do PHP, ou arquivos não-php. O comando find também suporta o ponto de exclamação no lugar de not.
    find ./test ! -name *.php
    

    5. Combine múltiplos critérios de busca

    É possível usar vários critérios, por exemplo especificar nome e negar certos arquivos.
    $ find ./test -name 'abc*' ! -name '*.php'
    ./test/abc.txt
    ./test/abc
    

    O comando find acima procura por arquivos que começam com abc em seus nomes e que não têm uma extensão php. Este é um exemplo de quão poderoso expressões de busca pode ser construído com o comando find.

    operador OR

    Ao usar vários critérios de nome, o comando find seria combiná-los com operador AND, o que significa que apenas os arquivos que satisfaçam todos os critérios serão correspondidos. No entanto, se precisamos executar uma correspondência com base OU então o comando find tem a opção "o".
    $ find -name '*.php' -o -name '*.txt'
    ./abc.txt
    ./subdir/how.php
    ./abc.php
    ./cool.php
    

    A busca de comando acima funciona para os arquivos que terminam em qualquer extensão php ou txt.

    6. Pesquisar somente os arquivos ou somente os diretórios

    Às vezes queremos encontrar apenas os arquivos ou somente os diretórios com um determinado nome. Find pode fazer isso facilmente também.
    $ find ./test -name abc*
    ./test/abc.txt
    ./test/abc 

    Somente arquivos
    $ find ./test -type f -name abc*
    ./test/abc.txt
    

    Somente diretórios
    $ find ./test -type d -name abc*
    ./test/abc
    

    Muito útil e prático!

    7. Pesquisar vários diretórios juntos

    Então, digamos que você deseja pesquisar dentro dois diretórios separados. Mais uma vez, o comando é muito simples
    $ find ./test ./dir2 -type f -name abc*
    ./test/abc.txt
    ./dir2/abcdefg.txt
    

    Veja, que foi listado os arquivos a partir de 2 diretórios separados.

    8. Encontre os arquivos ocultos

    Arquivos ocultos no linux começam com um ponto. Então, é fácil usar os critérios de nome e listar todos os arquivos ocultos.
    $ find ~ -type f -name ".*"
    

    9. Localizar arquivos com determinadas permissões

    O comando find pode ser usado para encontrar arquivos com uma permissão específica usando a opção "perm". Os seguintes comando procuram arquivos com a permissão 0664
    $ find . -type f -perm 0664
    ./abc.txt
    ./subdir/how.php
    ./abc.php
    ./cool.php
    

    Isto pode ser útil para encontrar arquivos com permissões erradas que podem levar a problemas de segurança. Inversão também pode ser aplicada a verificação de autorização.
    $ find . -type f ! -perm 0777
    ./abc.txt
    ./subdir/how.php
    ./abc.php
    ./cool.php
    

    10. Localizar arquivos com sgid / bits suid definido

    A opção "perm" do comando find aceita a mesma seqüência modo como chmod. O comando a seguir localiza todos os arquivos com permissão 644 e conjunto de bits SGID.
    # find / -perm 2644
    

    A opção perm também suporta o uso de uma sintaxe alternativa em vez de números octais.
    $ find / -maxdepth 2 -perm /u=s 2>/dev/null
    /bin/mount
    /bin/su
    /bin/ping6
    /bin/fusermount
    /bin/ping
    /bin/umount
    /sbin/mount.ecryptfs_private
    

    Note que o "2> / dev / null" remove as entradas que têm um erro de "Permission Denied"

    Conclusão

    Então isso foi um rápido tutorial sobre o comando find. O find é um dos comandos mais essenciais no terminal, que permite a busca de arquivos muito fácil. É uma obrigação de todos os administradores de sistema. Assim, dominá-lo. Tem alguma dúvida? Deixe um comentário abaixo.




    Combatendo ameaças às redes corporativas

    By on 00:24


    É muito comum observar uma falha na atualização das ferramentas quando é preciso enfrentar os ataques. Os invasores estão usando técnicas da próxima geração enquanto muitas empresas utilizam ferramentas ultrapassadas. E a situação só piora.  Projetadas para dispositivos de rede de primeira geração, esses sistemas não conseguem enfrentar desafios, como problemas tecnológicos, ataques avançados e performance de demandas.

    E como lidar com esse conflito de gerações? Novas abordagens de segurança estão surgindo para tratar do ambiente de TI e enfrentar ameaças sofisticadas e crescentes na rede. Há alguns critérios que ajudam na tomada de decisões para melhorar o sistema de segurança corporativa. Seguem algumas dicas que vão ajudar no combate às ameaças das redes corporativas:

    1-    Visibilidade

    Ter uma observação ampla do ambiente para analisar o contexto da rede e acompanhar o comportamento do usuário para determinar se o alvo avaliado é uma ameaça real. A maioria das ferramentas de segurança usadas atualmente não oferece a visibilidade adequada para uma rede dinâmica, comportamento e tráfego na definição de políticas de segurança.

    2-    Determinar ameaças eficazes

    É necessário garantir que a segurança da sua rede seja capaz de protegê-la de ameaças eficazes e aquelas que estão se tornando frequentes. As táticas modernas, como encapsulamento, ataques zero, comandos e controle de evasões fazem a diferença frente aos modelos antigos de malwares.

    3-    Controles granulares

    A adoção de mecanismos específicos, e granulares, é importante nas políticas de segurança, a ponto de customizar a detecção de invasores, respondendo para aplicativos e websites.

    4-    Automatização

    O uso de ferramentas e ajustes nas políticas de segurança pode ser diferencial. Além disso, ajuda a aplicar essas ações por toda a rede da empresa. Na era de redes de conexão com multi-gigabytes,  é preciso reforçar a segurança e inspecionar cada canto desse sistema amplo – tarefa que as defesas tradicionais não fazem.

    5-    Proteção avançada

    Um sistema contra malwares avançados garante inteligência baseada em nuvem e é capaz de coordenar as defesas de todo o ambiente são essenciais. Além disso, existem aspectos considerados primordiais no suporte ao modelo de segurança. Ter performance, escalabilidade e flexibilidade no momento de fazer mudanças na rede e ampliações no sistema no futuro, assegura uma proteção de alto nível e proporciona solidez aos investimentos já feitos.

    É só uma questão de tempo até que a empresa enfrente uma violação. E a boa notícia é que as tecnologias de segurança de rede estão evoluindo. Armadas com os critérios corretos, as companhias terão a certeza de que podem se defender e minimizar os riscos em uma época desafiadora.

    Fonte: http://computerworld.uol.com.br




    sexta-feira, 22 de novembro de 2013

    Fdisk – Manipulando a tabela de partições no Linux

    By on 14:17



    Discos rígidos podem ser divididos em um ou mais discos lógicos, chamados de partições. Esta divisão é configurada na tabela de partição localizada no setor 0 do disco.


    As partições dividem-se em primárias, extendidas e lógicas. Um HD pode ter no máximo 4 partições primárias. Para resolver este problema existe a partição extendida que serve para alocar partições lógicas, aumentando o número possível de partições existentes em um disco rígido.


    Para fazer esta divisão nos discos podemos utilizar o fdisk

    Para mostrar a tabela de partições de um disco utiliza-se a opção -l e o dispositivo.


    #fdisk -l /dev/sdb
    




    Podemos observar que não há nenhuma partição no disco /dev/sdb

    Para utilizar efetivamente o fdisk, basta utilizar o comando junto com o disco a ser manipulado:

    #fdisk /dev/sdb
    

    Abrirá o prompt  do fdisk, nele é possível fazer as manipulações no disco, como: criação, exclusão de partições primárias, extendidas.



    A letra "m" mostrará o conjunto de menus disponíveis para o administrador do sistema.


    Para criar uma nova partição é utilizada a opção "n", logo em seguida será solicitado o tipo de partição (primária ou extendida). Neste caso foi criado uma partição primária (p). Logo após é definido o início da partição no disco, foi utilizado a opção padrão, apenas apertando enter. Depois do início da partição é escolhido o tamanho da partição, decidimos por criar uma partição de 2GB, digitando +2GB. 


    Depois de configuradas as opções da partição é criada uma nova entrada na tabela de partições que pode ser verificada com a opção "p".




    Até então todas as configurações estão apenas em memória, para gravar as tabelas de partição no disco é usado o opção "w".



    Agora o comando fdisk -l retorna uma partição para o disco /dev/sdb


    Pronto a partição foi criada, para ser utilizável só falta formatá-la com algum sistema de arquivos e ser montado num diretório.

    #mkfs -t ext4 /dev/sdb1 
    


    #mkdir /disco1
    #mount /dev/sdb1 /disco1
    #cd /disco1

    Com isto o disco foi particionado, formatado e montado.

    Obs.: O autor do blog não se responsabiliza por eventuais efeitos adversos de sua postagem.





    quinta-feira, 21 de novembro de 2013

    Top 10 supercomputadores no mundo

    By on 12:58



    A 42 ª edição da lista TOP500 de supercomputadores foi lançada, com as máquinas Linux mais poderosas do mundo. Liderando o grupo novamente é Tianhe-2, um supercomputador desenvolvido pela National University of Defense Technology da China, com um desempenho de 33,86 petaflop/s no benchmark Linpack. Tianhe-2 utiliza o sistema operacional Linux Kylin (OS).

    O mais novo supercomputador que integra o Top 10, Piz Daint, também é o sistema mais eficiente de energia no Top 10, consumindo um total de 2,33 MW e entregar 2,7 Gflops / W. O número dois computadores, Titan também é um dos sistemas mais eficientes, consumindo um total de 8,21 MW e entregando 2,143 Gflops / W.

    Veja os 10 supercomputadores do mundo:

    1. Tianhe-2, desenvolvido pela  National University of Defense Technology da China - 33.86 petaflop/s - Kylin Linux operating system (OS)

    2. Titan,  Cray XK7 sistema instalado no Department of Energy’s (DOE) Oak Ridge National Laboratory - 17.59 Pflop/s – Cray Linux Environment

    3. Sequoia, um IBM BlueGene/Q sistema instalado no DOE’s Lawrence Livermore National Laboratory - 17.17 Pflop/s - Linux

    4. K computer, um sistema Fujitsu instalado no RIKEN Advanced Institute for Computational Science (AICS) in Kobe, Japão - 10.51 Pflop/s - Linux

    5. Mira, um BlueGene/Q system installed at DOE’s Argonne National Laboratory - 8.59 Pflop/s - Linux

    6. Piz Daint, um Cray XC30 instalado no Swiss National Supercomputing Centre (CSCS) in Lugano, Switzerland - 6.27 Pflop/s – Cray Linux Environment

    7. Stampede, um Dell no Texas Advanced Computing Center of the University of Texas, Austin – 5.17 Pflop/s - Linux

    8. JUQEEN, um BlueGene/Q instalado em Forschungszentrum Juelich na Alemanha – 5.01 Pflops/s - Linux

    9. Vulcan, um IBM BlueGene/Q system at Lawrence Livermore National Laboratory – 4.29 Pflop/s - Linux

    10. SuperMUC, em Leibniz Rechenzentrum na Alemanha – 2.90 Pflop/s - Linux

    Fonte: http://www.linux.com



    terça-feira, 19 de novembro de 2013

    E-mail seguro em todos os ministérios custará R$ 300 milhões

    By on 02:23


    Instalar o "e-mail seguro" em todos os ministérios é tarefa de R$ 300 milhões. A conta, feita pelo presidente do Serpro, Marcos Mazoni, é uma projeção do que será necessário para atender a Esplanada ao longo do primeiro semestre do próximo ano.

    O valor deixa de fora, por exemplo as três primeiras implantações, a serem feitas ainda em 2013. Até porque se tratam do Ministério do Planejamento, onde basicamente será atualizada a versão 2 para 3 do Expresso, do Palácio do Planalto e do Ministério das Comunicações.

    Para esses primeiros casos – que envolvem cerca de 1,5 mil ‘clientes’ – não há aperto. Segundo explica o presidente do Serpro, o valor a ser investido para estender o Expresso às demais pastas é especialmente para ampliação da capacidade de armazenamento.


    Fonte: http://convergenciadigital.uol.com.br



    sábado, 16 de novembro de 2013

    Agendando backup com data e hora no Linux

    By on 11:10


    Um administrador de sistemas deve estar sempre com os backups em dias, pois nunca se sabe quando murphy pode aparecer. Porém fazer cópias de segurança é um trabalho chato e muitos são relapsos no que diz a respeito aos backups.

    Felizmente há uma forma de automatizar esta tarefa e deixar com que o sistema operacional se encarregue de fazer isto para você, é só dizer o que ele deve fazer.

    No Linux há várias ferramentas de backup como rsync, dd, bacula, cp, entre outros. E através do ShellScript pode ser configurado um script para fazer o trabalho pesado.

    Um exemplo básico de ShellScript para fazer um backup baseado na data e horário da operação da cópia:


    backup_etc.sh
    #!/bin/bash
    ## Script para fazer cópias dos arquivos /etc
    
    #Cria uma variável para armazenar data e hora
    DATA=$(date +%Y-%m-%d-%HH-%MM)
    
    #Faz a cópia dos aquivos /etc e 
    #coloca no diretório /backup/backup-etc-DATA
    tar cjf /backup/backup-etc-$DATA.tar.bz2 /etc
    
    

    O script vai fazer a cópia do diretório /etc e armazenar no diretório /backup. Para minimizar o uso do espaço em disco foi utilizado o comando tar juntamente com o algoritmo de compactação do bzip2 através da opção j.

    Agendando Backups


    O cron é um agendador de tarefas que podemos configurar para executar procedimentos de tempos em tempos. Além de poder agendar em determinados dias, horas, o cron possui outra forma de trabalhar, através dos diretórios:

    Diretório
    Periodicidade
    /etc/cron.daily Todo dia
    /etc/cron.hourly De hora em hora
    /etc/cron.weekly Toda Semana
    /etc/cron.monthly Uma vez ao mês

    É só escolher a periodicidade desejada para executar seu script e adicionar em um dos diretórios acima. Pronto você tem seus arquivos salvo com certa frequência, só não esqueça de conferir os arquivos copiados de tempos em tempos.

    O ideal é armazenar o backup em outra máquina, de preferência longe do servidor de onde estão saindo os dados, em outro artigo será apresentado o rsync que utiliza um tunelamento ssh para o envio dos arquivos de backup.

    Já fez seu backup hoje?

    Até a próxima!