Resumo LPI 102: Tópico 107 - Tarefas Administrativas

Neste artigo veremos, de forma detalhada, como administrar contas de usuários e grupos (tópico 107.1), automatizar e agendar tarefas administrativas (107.2) e localização e internacionalização (107.3).

[ Hits: 16.210 ]

Por: Perfil removido em 28/02/2013


107.1 - Administrar contas de usuários e grupos



Em mais um resumo de tópico para a prova LPI 102, venho percebendo a facilidade em estudar usando associação. Com comandos de modo geral, procure saber para que ele serve e o que significa.

Alguns são bem intuitivos, por exemplo, o passwd (password), lsusb (list usb), nc (netcat), chfn (change information). Outros, são mais complicados. Geralmente comandos com ch, tem algo a ver com change (alteração, mudança), ls com list (listar).

Estar atento e disposto a associar os nomes dos comandos facilitará e MUITO seu estudo. O mesmo vale para parâmetros. Leia, ao menos, a descrição nas páginas de manual e faça testes, simule situações, se você ainda não passa boa parte do dia de frente pra tela preta.

Contas de usuários

O comando adduser só pode executado pelo root. Cria usuários automaticamente, com parâmetros definidos no arquivo: /etc/adduser.conf

O comando useradd só pode ser executado como root. Cria usuário setando manualmente os parâmetros desejados. Indicado para uso em scripts. Principais parâmetros:
  • -c (comment) :: Adiciona descrição à conta, geralmente nome completo do usuário;
  • -d (home dir) :: Define o caminho para o diretório pessoal do usuário;
  • -g (Group ID) :: Define o grupo principal - GID;
  • -G (groups) :: Define grupos secundários;
  • -u (User ID) :: Define o ID - UID;
  • -s (shell) :: Define o shell padrão;
  • -p (passaword) :: Define a senha;
  • -e (expire date) :: Define a data de expiração da conta;
  • -k (skel dir) :: Define se a conta do usuário usará a estrutura com base no /etc/skel;
  • -m (create home) :: Cria o diretório pessoal, se não existir.

O diretório /etc/skel/ serve como modelo na criação dos diretórios pessoais. Skel = Skeleton (esqueleto).

O comando passwd altera a senha de usuários. Sintaxe:

# passwd <usuário>
$ passwd


Ou seja, como root, é possível alterar a senha de qualquer usuário. Como usuário comum, somente é possível alterar a própria senha.

O comando chfn (change information) altera o campo descrição da conta de um usuário. Não precisa ser root.

O comando chsh (change shell) altera o shell padrão do usuário. Não precisa ser root.

O comando userdel exclui uma conta de usuário. Parâmetro principal: "-r" (remove) - remove o diretório pessoal.

O arquivo /etc/passwd armazena informações de contas de usuários e pode ser lido por qualquer usuário (permissão: rw-r--r--). Utiliza como separador de campos o ":" (2 pontos).

Observe a estrutura:

root:x:0:0::/root:/bin/bash

Enumerando os campos:
  1. Login do usuário;
  2. Senha. Se for "x", a senha encontra-se criptografada no arquivo /etc/shadow;
  3. UID - ID do usuário;
  4. GID - ID do grupo principal do usuário;
  5. Descrição do usuário;
  6. Caminho do diretório pessoal;
  7. Shell padrão do usuário.

O comando vipw usa o editor padrão do sistema (Vi) para alterar o arquivo /etc/passwd, bloqueando-o contra edições concorrentes.

Parâmetro principal: -s (shadow) - edita o arquivo /etc/shadow, usando o modelo de bloqueio.

No arquivo /etc/shadow estão as senhas criptografadas dos usuários e mais algumas configurações. Não está visível para todos usuários, por medida de segurança (permissão: rw-r-----). Seu separador de campos também é o ":".

Estrutura:

root:<senha>:15516:0:99999:7:::

Enumerando os campos:
  1. Login do usuário, que deve corresponder ao do /etc/passwd;
  2. Guarda a senha criptografada do usuário;
  3. Número de dias desde que a senha foi alterada pela última vez. Contando desde 01/01/1970.
  4. Número mínimo de dias que o usuário pode permanecer sem alterar a senha. Zero significa que não tem este prazo mínimo;
  5. Número máximo de dias que o usuário tem para trocar a senha;
  6. Número de dias que o usuário será avisado até que a senha expire;
  7. Número de dias a partir da expiração da senha até que a conta seja bloqueada;
  8. Mostra o número de dias que a conta encontra-se bloqueada. Contando desde 01/01/1970;
  9. Campo reservado.

O comando pwconv altera o armazenamento das senhas do arquivo /etc/passwd para o /etc/shadow.

O comando pwunconv altera o armazenamento das senhas do arquivo /etc/shadow para o /etc/passwd.

O comando chage altera informações referentes à validade de senhas de usuário. Parâmetros principais:
  • -m (minimum days) :: Número de dias mínimos para o usuário poder alterar sua senha;
  • -M (max days) :: Número máximo de dias para troca da senha;
  • -d (last days) :: Número de dias desde que a senha foi alterada, contando desde 01/01/1970;
  • -E (expire date) :: Data de expiração da conta do usuário;
  • -I (inactive) :: Número de dias a partir da expiração da senha até que a senha seja bloqueada;
  • -W (warn days) :: Número de dias para avisar o usuário que a senha deve ser trocada.

O comando usermod modifica contas de usuários. Parâmetros principais:
  • -c (comment) :: Altera o comentário da conta;
  • -d (diretory) :: Altera o caminho do diretório pessoal;
  • -m (move) :: Move o diretório pessoal do usuário para um novo local;
  • -g (group) :: Altera o grupo principal;
  • -G (groups) :: Adiciona o usuário a outros grupos;
  • -l (login) :: Altera o nome de login;
  • -p (password) :: Altera a senha;
  • -u (UID) :: Altera o ID do usuário;
  • -s (shell) :: Altera o shell padrão;
  • -e (expire date) :: Altera a data de expiração da conta do usuário. dd/mm/aaaa;
  • -f (??) :: Dias depois da expiração da senha que a conta será bloqueada. O -1 cancela essa função;
  • -L (lock) :: Bloqueia o usuário. Insere o "!" no campo da senha criptografada;
  • -U (unlock) :: Desbloqueia o usuário. Retira o "!".

Administrando grupos de usuários

O comando groupadd cria um grupo de usuário.

Principal parâmetro: -g (GID) - Especifica um ID para o grupo.

O comando groupdel exclui um grupo de usuário.

O comando gpasswd insere e exclui usuários de grupos e realiza algumas modificações relacionadas às senhas. Este comando usado sem parâmetro cria uma senha para um grupo.

Principais parâmetros:
  • -r (remove) :: Remove a senha do grupo;
  • -a (add) :: Adiciona usuário ao grupo;
  • -d (delete) :: Deleta usuário do grupo;
  • -A (admin) :: Torna usuário administrador do grupo.

O comando groups mostra o grupo que o usuário pertence. Usado sem argumentos, mostra os grupos do usuário atual.

O comando id mostra os grupos do usuário e informações de UID e GID.

O comando newgrp altera o grupo principal do usuário. Caso ele não pertença, é adicionado automaticamente.

O arquivo /etc/group armazena informações dos grupos. Possui permissão: rw-r--r--

Estrutura:

adm:x:5012:pedro,joao

Enumerando os campos:
  1. Nome do grupo;
  2. Senha criptografada do grupo. O "x" significa que a senha está no arquivo /etc/gshadow;
  3. ID do grupo. GID;
  4. Usuários pertencentes ao grupo, separados por ",".

O comando vigr edita o arquivo /etc/group, evitando gravações concorrentes.

Principal parâmetro: -s (shadow) - Edita o arquivo /etc/gshadow.

O arquivo /etc/gshadow armazena informações de senhas com criptografia. Possui permissão: rw--r----

Estrutura:

adm:*::pedro

Enumerando:
  1. Nome do grupo, correspondente ao /etc/group;
  2. Senha criptografada. O "*" significa que o grupo não tem senha;
  3. Usuário administrador do grupo;
  4. Usuário pertencentes ao grupo, como no /etc/group.

O comando grpconv converte o armazenamento das senhas dos grupos, do arquivo /etc/group para o /etc/gshadow.

O comando grpunconv faz o inverso do comando grpconv.

O comando groupmod realiza algumas modificações nos grupos. Principais parâmetros:
  • -g (GID) :: Altera o GID;
  • -n (name) :: Altera o nome do grupo.

    Próxima página

Páginas do artigo
   1. 107.1 - Administrar contas de usuários e grupos
   2. 107.2 - Automatizar e agendar tarefas administrativas
   3. 107.3 - Localização e internacionalização
Outros artigos deste autor

File Globbing ou Englobamento - Introdução

Linux + Rails + Ruby + Mongrel + PostgreSQL + NetBeans 6 Preview

Recuperando senhas de e-mails esquecidas usadas no Claws-Mail

Configurando o aMSN para Lan House e/ou Cyber Café

Configuração universal do servidor X (modo gráfico)

Leitura recomendada

Ambiente X-Window, a continuação

Migrando para Linux sem medo

Vida nova para o Kurumin 7

Mamãe, quero Slack! (parte 3 - final)

KDEmod: Tornando mais simples o KDE do seu Arch Linux

  
Comentários
[1] Comentário enviado por gpxlnx em 01/03/2013 - 08:36h

Meus Sinceros Parabéns Pedro,

Estou me preparando para o exema 102 tb, e este seu material esta de parabéns, ando pesquisando pela net a mto tempo,
lendo livros e o seu realmente se destaca.

Obrigado por Compartilhar.

Caso precise de algum auxílio testking, ou algo modestamente estou ae para ajudar

[2] Comentário enviado por mbrainiac em 01/03/2013 - 09:56h

Parabéns Pedro,

Excelente artigo

[3] Comentário enviado por removido em 04/03/2013 - 09:01h

Obrigado pelos comentários pessoal. Infelizmente estou me baseando, somente, no livro do Luciano Siqueira. Ele é muito bom, porém, andei fazendo uns simulados e percebi coisas que não tem no livro. Daí a importância do post lá no meu blog, que tem a vantagem de poder ser editado a qualquer momento. :)

Flw.

[4] Comentário enviado por Jvek em 05/03/2013 - 12:13h

Cara,.. Ótimo artigo,.. tu praticamente "compilo" o assunto adm/users; p/ quem pretende encarar o exame ajuda e muito,... Bom post,.. Parabéns!!!

[5] Comentário enviado por Nicolas777 em 06/03/2013 - 10:24h

Ótimo artigo! Parabens

[6] Comentário enviado por premoli em 08/03/2013 - 10:33h

10... onde achou os parâmetros do comando useradd? não achei com useradd -h ou man useradd .... :-(

[7] Comentário enviado por removido em 08/03/2013 - 11:04h

Opa premoli, beleza?

Cara, qual distribuição você está usando? Utilizo Ubuntu, Red Hat e CentOS, todas elas mostram os parâmetros citados no artigo, tanto com o 'useradd -h', quanto com o 'man useradd' :O

Busca nos repositórios pelo pacote 'manpages-pt' ou similar.

Abraço :)

[8] Comentário enviado por thiagomadeira em 11/03/2013 - 22:26h

muito bom, parabéns!!


Contribuir com comentário




Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts