Mostrando postagens com marcador redhat. Mostrar todas as postagens
Mostrando postagens com marcador redhat. Mostrar todas as postagens

sexta-feira, 10 de maio de 2013

Aula 13 - Permissões especiais GNU/Linux



Tipos de permissões especiais GNU/Linux

Autor: Gabriel Santana
Data: 04/12/2004
Artigo totalmente reproduzido de:

Introdução: SUID, SGUID, STICKY

No artigo anterior  vimos como funcionam as permissões pelo modo octal e literal. Vimos um pouco também sobre o funcionamento do umask.

Agora vamos estudar como funcionam os tipos de permissões especiais, que afetam arquivos executáveis e diretórios: SUID, SGUID e STICKY, conhecidos também como permissões de sistema.

SUID
Se este bit estiver ligado em um arquivo executável, isso indica que que ele vai rodar com as permissões do seu dono (o proprietário do arquivo) e não com as permissões do usuário que o executou.
OBS: Só tem efeito em arquivos executáveis.

SGUID
Faz o mesmo que o SUID, mas agora o arquivo executado vai rodar com as permissões do grupo do arquivo. Se aplicado a um diretório, força os arquivos/diretórios criados dentro dele a ter o mesmo grupo do diretório pai, ao invés do grupo primário do usuário que o criou.

STICKY
Se este bit for ativado, faz com que arquivos criados em um determinado diretório só possam ser apagados por quem o criou (dono) ou pelo super-usuário do sistema. Um exemplo de uso do STICKY é o diretório /tmp.

Tabela de Valores
SUID      4
SGUID  2
STICKY  1

SUID
Para demonstrar o uso do SUID vou dar como exemplo o comando shutdown, que é utilizado para desligar e reiniciar o sistema, mas que só pode ser executado pelo usuário root. Mesmo se você der permissão através do "chmod 755 /sbin/shutdown", o usuário comum não vai conseguir realizar a execução deste, somente o root.
Vamos lá!

# groupadd shutdown
# gpasswd -a gabriel shutdown
# chown root:shutdown /sbin/shutdown
# chmod 4750 /sbin/shutdown
# ln -s /sbin/shutdown /bin/shutdown

Comentários dos comandos acima:
groupadd : adiciona um novo grupo ao sistema.
gpasswd -a : adiciona um novo membro a um grupo.
chown : : muda o dono e o grupo de um arquivo/diretório.
chmod : liga o bit SUID junto com as novas permissões.
-ln -s : cria um link simbólico de um arquivo/diretório.

Agora, logue-se novamente no shell:
# su - gabriel

Agora teste o comando shutdown. Não esqueça de voltar e terminar de ler o artigo ;D.
# shutdown -h now

OBS 1: Reparem que, se olharmos as permissões do comando shutdown, veremos um 's' na permissão do dono no lugar do 'x', isto indica que o bit SUID está ligado.
OBS 2: 'su - gabriel' utilizei para que o sistema atualize-se e reconheça que o usuário 'gabriel' agora faz parte também do grupo shutdown. Outra forma de fazer isso seria logar-se novamente, o que seria chato pois seria necessário sair do X. Caso conheçam uma outra maneira de fazer a mesma coisa favor postem aqui.


SGUID
O bit SGUID tem a mesma função do bit SUID, só que agora é usada a permissão do grupo do arquivo para executá-lo. O SGUID também tem uma outra função, que funciona em diretórios. Quando este bit está ligado em um diretório ele possibilita que todos arquivos/diretórios criados dentro dele pertençam ao mesmo grupo desse diretório.
Vamos a um exemplos para que possamos entender.

# cd /tmp
# mkdir publico
# ls -l publico
drwxr-xr-x  2 root root  48 2004-11-24 21:21 publico

Veja que só o root pode escrever nele, ou seja, criar arquivos e diretórios.

Vamos ligar o bit SGUID neste diretório.

# chmod 2777 publico
# ls -l publico
drwxrwsrwx  2 root root  48 2004-11-24 21:21 publico

Observe que o 's' indica que o bit SGUID está ligado. Agora entre neste diretório com outros usuários, crie arquivos e diretórios, e repare que os arquivos e diretórios criados pertencem ao mesmo grupo do diretório pai (diretório antecedente).

Exemplo:
$ mkdir testando
$ ls -l
drwxr-sr-x  2 linuxba root 48 2004-11-24 21:31 testando

Vamos para o próximo.

STICKY
Bom, o bit STICKY não tem segredo. Como vocês já sabem, ele faz com que um diretório funcione igual ao diretório /tmp, onde todos os usuários podem criar arquivos/diretórios mas só o próprio dono do arquivo/diretório ou o usuário root podem excluí-los.

# cd /tmp
# mkdir corrimao
# chmod 1777 corrimao

$ cd /tmp/corrimao
$ mkdir teste

# ls -l
drwxr-xr-x  2 linuxba users 48 2004-11-24 21:47 teste

Vamos dar uma olhada na conclusão. ;D

 Conclusão
Bom, é isso ai pessoal, este artigo na verdade é uma continuação do artigo anterior, onde foram abordados os tipos de permissões do sistema GNU/Linux.

Para que você aprenda (e não decore) o que foi passado neste artigo, pratique e tente entender a lógica da coisa, pois assim você vai aprender e será muito difícil de esquecer. E fiquem à vontade quanto aos comentários.

Artigos recomendados:

Até a próxima!

Gabriel Santana
Nick: m4sk4r4
CompactNick: m4sk




segunda-feira, 6 de maio de 2013

Configuração de Rede no Redhat e CentOS


Segue o resumo de comandos e conceitos vistos em Sala de Aula.
Este é um material de apoio aos meus alunos que tem todo embasamento durante as aulas presenciais.

Você pode encontrar todos os resumos de aula no link abaixo:

Na Aula 6  vimos a configuração de Rede nas distribuições baseada em Debian.
Desta vez, vamos configurar a conexão de rede nas distribuições baseadas em Redhat/CentOS.

Obs: Caso você esteja montando um servidor, aconselho parar o configurador de Rede da Interface Gráfica:

1 - Pare o NetworkManager 
# service NetworkManager stop

2 - Desative o NetworkManager da inicialização padrão do Redhat/CentOS
# chkconfig --del NetworkManager

3 - Acesse o diretório de configuração da rede
# cd /etc/sysconfig/network-scripts

4 - Crie o arquivo de configuração da eth0
# vim ifcfg-eth0
E escreva o conteúdo abaixo: (Se quiser, você pode fazer a mesma configuração abaixo)
DEVICE=eth0
IPADDR=10.0.0.1
NETMASK=255.0.0.0
GATEWAY=10.0.0.254
DNS1=8.8.8.8
DNS2=8.8.4.4
ONBOOT=yes

Salve o arquivo.

Para reiniciar o serviço de rede no CentOS use:
# service network restart
ou
# /etc/init.d/network restart

Para iniciar a rede automaticamente no Boot
# chkconfig --add network

Para listar inicialização dos daemons do Redhat/CentOS faça:
# chkconfig --list

Obs: Veja se a coluna correspondente ao nível 3 e 5 estão com on ou off conforme a sua configuração.

Depois das configurações feitas, execute os seguintes comandos para verificar as configurações de rede:

Para listar o ip
# ifconfig

Para exibir as configurações de DNS
# cat /etc/resolv.conf

Para exibir o Default Gateway
# route -n

Vamos agora configurar agora o nome e domínio da máquina.
Vamos tomar como exemplo o nome servidor.dailson.com.br

Configurando o Nome e domínio
# vim /etc/hosts
Acrescente a linha com Seu IP, Nome FQDN e apelido (alias)
127.0.0.1 localhost.localdomain   localhost
10.0.0.1  servidor.dailson.com.br   servidor

No arquivo /etc/sysconfig/network procure a linha HOSTNAME e coloque o seguinte valor:
HOSTNAME=servidor.dailson.com.br

Testando as configurações:

Para verificar o nome da máquina
# hostname

Para verificar o domínio
# dnsdomainname

Para verificar a resolução de DNS
# ping servidor.dailson.com.br
# ping servidor

Caso algum comando acima retorne erro ou retorne vazio, você deve voltar aos arquivos de configuração e checá-los novamente.

Obs: Você também pode usar o configurador do Redhat/CentOS
# system-config-network


Criando Interfaces virtuais:
A maneira mais prática, é copiar o arquivo da interface eth0 atual para o novo arquivo e fazer a mudança de IPs.
# cd /etc/sysconfig/network-scripts
# cp ifcfg-eth0 ifcfg-eth0:0

Abra o arquivo e faça a alteração para o novo IP. Note que foram retiradas as linhas de DNS1, DNS2 e GATEWAY. Isso foi feito, porque é o mesmo da eth0. Porém se você deixar, o sistema não acusa erro.
DEVICE=eth0:0
IPADDR=10.0.0.2
NETMASK=255.0.0.0
ONBOOT=yes


Se você tem dúvida sobre o cálculo do endreço de broadcast e network, sugiro a instalação do aplicativo ipcalc:
# apt-get install ipcalc

E depois coloque o ip para o ipcalc devolver todos os parâmentros de configuração da sua rede.
Exemplo:
# ipcalc 192.168.0.1

A resposta desse comando, são todos os cálculos para seu IP. Veja o resultado para o IP acima:

sábado, 27 de abril de 2013

Aula 8.1 - Gerenciando Pacotes Redhat / CentOS / Fedora com o rpm


Segue o resumo de comandos e conceitos vistos em Sala de Aula.
Este é um material de apoio aos meus alunos que tem todo embasamento durante as aulas presenciais.

O Exercício de fixação desta aula, pode ser acessado no seguinte link:
Em breve...

Você pode encontrar todos os resumos de aula no link abaixo:

Gerenciador de Pacotes RPM

O yum é um gerenciador de pacotes da Redhat e derivados classificado como "amigável" (user-friendly). Na verdade, para manipular os pacotes de instalação do Redhat/CentOS/Fedora, aprenderemos a utilizar o RPM - Redhat Packager Mangager.

O RPM, originalmente abreviatura de Red Hat Package Manager, e atualmente um acrónimo recursivo de RPM Package Manager (“Gerenciador de Pacotes RPM”)1 é um sistema de gerenciamento de pacotes de software, assim como o formato de arquivo usado por esse sistema. Ele é parte da Linux Standard Base1 . O RPM serve para instalar, atualizar, desinstalar, verificar e procurar softwares1 . Originalmente desenvolvido pela Red Hat, RPM é agora usado por muitas distribuições Linux. E também é portado para outros sistemas operacionais como NetWare da Novell e AIX da IBM.

Um pacote (programa) para distribuições baseadas em Redhat/CentOS/Fedora, utilizam o formato .rpm

Exemplo:
htop-1.0.2-1.el6.rf.x86_64

Para os exemplos abaixo, iremos usar como base o pacote htop-1.0.2-1.el6.rf.x86_64 . Clique neste link para baixá-lo: http://apt.sw.be/redhat/el6/en/x86_64/rpmforge/RPMS/htop-1.0.1-2.el6.rf.x86_64.rpm

Para instalar um pacote .rpm
# rpm -hiv htop-1.0.2-1.el6.rf.x86_64

Para atualizar um programa a partir de um pacote .rmp
# rpm -Uvh htop-1.0.2-1.el6.rf.x86_64

Para remover um pacote
# rpm -e htop (note aqui que não é o nome do pacote e sim o comando que foi instalado)

Exibindo a lista de arquivos instalados por um pacote
# rpm -ql htop (note que aqui é usado o nome do comando)

Para listar o conteúdo de um pacote .rpm
# rpm -qpl htop-1.0.2-1.el6.rf.x86_64

Listando os arquivos que foram instalados a partir de um pacote
# rpm -ql htop (note que aqui é usado o nome do comando)

Exibindo informações sobre o pacote
# rpm -qip htop-1.0.2-1.el6.rf.x86_64

Procura o pacote ao qual pertece o arquivo
# rpm -qf /etc/services

Listando de todos os pacotes instalados no sistema
# rpm -qa

Fontes:

quarta-feira, 31 de agosto de 2011

Guia de Comandos do YUM


Guia de Comandos para utilização do YUM.

Clique aqui para ver um tutorial sobre Comandos do apt-get

O yum (Yellow dog Update, Modified) é o gerenciador de pacotes utilizado nas distribuições derivadas do Redhat como Fedora e CentOS. O yum foi desenvolvido pelo pessoal do Yellow Dog (uma distribuição baseada no RedHat e foi aperfeiçoado e adotado pela equipe da Red Hat.

O YUM é um front-end de manipulação de pacotes do Redhat, Fedora, CentOS e derivados.

Os pacotes (programas) do Redhat, tem extensão .rpm
Ex:
linux-modules-2.6.24-23-server_2.6.24-23.37_i386.rpm

O Comando de manipulação é o rpm, mas programas como apt-get, yum e synaptic, facilitam esta tarefa.

Abaixo, um guia de comandos desta ferramenta.

Ao contrário do apt-get, não é necessário fazer comandos de atualização de repositórios para começar a a instalar pacotes.
Os repositórios são sites da Internet que mantém os pacotes da sua distribuição atualizados.
Lembre-se que os resositórios são configurados no diretório /etc/yum.repos.d/
Basta colocar um arquivo com qualquer nome com extensão .repo dentro deste diretório e automaticamente o repositório fica disponível.

Abaixo um exemplo de um repositório do YUM:
[Novo_Repositorio]
name=Repositorio Novo
baseurl=http://dl.atrpms.net/f$releasever-$basearch/atrpms/stable


No site http://www.projetofedora.org/wiki/index.php/RPMFusion  você encontra um super repositório chamado RPMFusion que é a união do Livna, FreshRPM eDribble. Adicione ele ao Fedora ou CentOS.

Vamos aos comandos:
Instalar um programa

# yum install sl

Pode-se especificar mais de um programa

# yum install sl cowsay

Removendo um programa

# yum remove sl

Faz a instalação de programas sem perguntar nada:

# yum install -y sl

Procurando um programa:

# yum search samba

Esta opção retorna uma lista muito longa. Se não tiver familiarizado, é melhor utilizar o list:

# yum list samba

Os repositórios do YUM usa um conceito chamado de GROUP. Que é um nome que categoriza um conjunto de pacotes. Por exemplo, o grupo Administration Tools tem uma série de pacotes relativos a Ferramentas de Administração do Sistema. Para listar todos os grupos, faça:

# yum grouplist

Para instalar um grupo inteiro de programas, faça:

# yum groupinstall "Administration Tools" 
ou
# yum install @"Administration Tools"
Obs: Se o grupo tiver espaço, é necessário o uso de aspas

Outra boa maneira de pesquisar é se você lembrar o nome do programa ou um arquivo de configuração mais não lembrar do nome do pacote. Neste caso use o provides:

# yum provides mcedit
 
Para atualizar um pacote:

# yum update httpd

Para atualizar todo o sistema comece pelo comando abaixo. Ele não instala nada, apenas lista o que pode ser atualizado

# yum check-update

Se quiser  atualizar o sistema:

# yum update

Semelhante ao Debian, se quiser fazer o upgrade e também remover pacotes obsoletos, faça:

# yum upgrade

Caso você tenha um pacote rpm e quer que o YUM o instale resolvendo todas as dependências, basta executar o comando:

# yum localinstall pacote.rpm

Limpando o cache do YUM

# yum clean

Fazendo cache local de arquivos rpm.
Ao contrário do apt-get que baixa os arquivos em /var/cache/apt/archives, o yum não baixa seus pacotes em cache. Mas existem ferramentas que fazem isso.


Para que o yum faça cache, é necessário fazer a instalação do pacote yum-downloadonly e forçar o download do pacote com o seguinte comando:

# yum install pacote --downloadonly

Outro método:
Instale o pacote yum-utils com o comando:

# yum install yum-utils.noarch

E depois faça os downloads de pacotes com o seguinte comando:

# yumdownloader pacote

Por padrão, os arquivos baixados ficam em /var/cache/yum

Uma excelente dica!
Toda vez que você digita o comando yum é realizada uma checagem nos repositórios e isto torna o uso do comando um pouco lento, principalmente se você tem uma conexão lenta com a Internet. Para evitar esta checagem a cada comando, instrua o yum a guardar por um determinado tempo a última checagem que ele fez. Para isso faça:

# vim /etc/yum.conf

Procure a linha (se não tiver escreva)

# metadata_expire = 90m 

e tire o comentário dela (deixando sem o #)

metadata_expire = 90m 

Pronto! Com as configurações acima, durante 90 minutos o yum deixará um cache local e o comando será bem mais rápido.

Referências:
http://linux.die.net/man/8/yum
http://www.cyberciti.biz/faq/yum-downloadonly-plugin/
http://www.projetofedora.org/wiki/index.php/RPMFusion
http://www.cyberciti.biz/faq/rhel-yum-grouplist-groupinstall-option-not-working/

sexta-feira, 5 de agosto de 2011

Um Breve Relato sobre as Certificações da Redhat: RHCSA e RHCE


 

PessoALL,

Na última semana de Julho/2011 participei de um treinamento na RedHat em São Paulo denominado Fast Track, onde é englobado o conteúdo de 3 cursos em um apenas.

O Curso é denominado de RH300 e é destinado a pessoas que já tem bastante experiência em Linux. O curso é num ritmo alucinante e dura 4 dias, de segunda a quinta. Na sexta feira acontecem duas provas:

RHCSA - Redhat Certfied System Administrator.
Que é a junção de duas provas: 124 e 135. Passando nela, você obtém este título.
 A tarde, fomos convidados a fazer a segunda prova:

RHCE - Redhat Certified Engineer
Neste caso, é necessário ser RHCSA e passar na prova 254.


Graças a Deus, consegui passar por esta maratona. Os dias eram árduos, chegávamos na Redhat por volta das 9 da manhã e saíamos as 9 da noite. Pois quando acabava as aulas, era hora de exercitar, fazer os labs e tirar dúvidas.

O que mais achei proveitoso, foi o fato das provas serem totalmente práticas, testando de fato se o aluno sabe. Não há "decoreba". Ou faz ou não faz. As questões eram inteligentes e o tempo curto para fazer as provas. Então não há tempo para "fuçar", é chegar, fazer e pronto!

Aconselho a todos a seguirem a carreira Redhat, vale a pena, o curso é sério, a prova é feita sob grande sigilo e o ambiente é muito profissional.

Outra coisa boa, foi conhecer pessoas legais por lá. Tinha gente do Brasil inteiro e a "Babel" estava formada.

Porém, estes são os primeiros degraus desta carreira. Em ordem, segue abaixo a carreira completa:
  1. Red Hat Certified Datacenter Specialist (RHCDS)
  2. Red Hat Certified Virtualization Administrator (RHCVA)
  3. Red Hat Certified Security Specialist (RHCSS)
  4. Red Hat Certified Engineer (RHCE)
  5. Red Hat Certified System Administrator (RHCSA)
Mais informações sobre a Carreira Redhat:
http://www.cossindia.net/CMS/index.php?option=com_content&view=category&id=2&Itemid=13

Mais informações sobre RHCSA:
http://www.cossindia.net/CMS/index.php?option=com_content&view=article&id=1:rhcsa&catid=2:red-hat-programs&Itemid=13

Mais informações sobre RHCE: 
http://www.cossindia.net/CMS/index.php?option=com_content&view=article&id=8:red-hat-certified-engineer-rhce&catid=2:red-hat-programs&Itemid=13

Na foto abaixo, tem parte do pessoal que fez o curso e ralava até tarde para estudar juntos.
Esta foto foi batida  depois do Pior Rodízio de Pizza que já fui na face da terra! Culpa do Marcos e do Aslan que indicou.


Julio (RJ), BLKID (RJ), Dailson (PE/BA), Marcos Sabatino (RJ/DF) e Waldírio (RJ)

Meus agradecimentos em especial a Aslan Carlos e Pablo Hess que foram nossos professores.

Dailson Fernandes

       

Fonte das Figuras: http://www.cossindia.net/