Admin Linux - Gerenciamento de usuários

Ao discutir o gerenciamento de usuários , temos três termos importantes para entender -

  • Users
  • Groups
  • Permissions

Já discutimos as permissões detalhadas aplicadas a arquivos e pastas. Neste capítulo, vamos discutir sobre usuários e grupos.

Usuários CentOS

No CentOS, existem dois tipos de contas -

  • System accounts - Usado para um daemon ou outro software.

  • Interactive accounts - Normalmente atribuído a um usuário para acessar recursos do sistema.

A principal diferença entre os dois tipos de usuário é -

  • System accountssão usados ​​por daemons para acessar arquivos e diretórios. Geralmente, eles não permitem o login interativo via shell ou login de console físico.

  • Interactive accounts são usados ​​por usuários finais para acessar recursos de computação a partir de um shell ou login de console físico.

Com esse conhecimento básico de usuários, vamos agora criar um novo usuário para Bob Jones no Departamento de Contabilidade. Um novo usuário é adicionado com oadduser comando.

A seguir estão alguns adduser interruptores comuns -

Interruptor Açao
-c Adiciona um comentário à conta do usuário
-m Cria o diretório inicial do usuário no local padrão, se inexistente
-g Grupo padrão para atribuir o usuário
-n Não cria um grupo privado para o usuário, geralmente um grupo com nome de usuário
-M Não cria um diretório inicial
-s Shell padrão diferente de / bin / bash
-você Especifica o UID (de outra forma atribuído pelo sistema)
-G Grupos adicionais para atribuir ao usuário

Ao criar um novo usuário, use as opções -c, -m, -g, -n da seguinte forma -

[root@localhost Downloads]# useradd -c "Bob Jones  Accounting Dept Manager" 
-m -g accounting -n bjones

Agora vamos ver se nosso novo usuário foi criado -

[root@localhost Downloads]# id bjones 
(bjones) gid = 1001(accounting) groups = 1001(accounting)

[root@localhost Downloads]# grep bjones /etc/passwd 
bjones:x:1001:1001:Bob Jones  Accounting Dept Manager:/home/bjones:/bin/bash

[root@localhost Downloads]#

Agora precisamos habilitar a nova conta usando o comando passwd -

[root@localhost Downloads]# passwd bjones 
Changing password for user bjones. 
New password:  
Retype new password:  
passwd: all authentication tokens updated successfully.

[root@localhost Downloads]#

A conta do usuário não está habilitada, permitindo que o usuário efetue login no sistema.

Desativando contas de usuário

Existem vários métodos para desabilitar contas em um sistema. Isso inclui a edição do arquivo / etc / passwd manualmente. Ou mesmo usando o comando passwd com o-linterruptor. Ambos os métodos têm uma grande desvantagem: se o usuário tiver acesso ssh e usar uma chave RSA para autenticação, ele ainda poderá fazer o login usando este método.

Agora vamos usar o comando chage , alterando a data de validade da senha para uma data anterior. Além disso, convém anotar na conta o motivo pelo qual a desativamos.

[root@localhost Downloads]# chage -E 2005-10-01 bjones
 
[root@localhost Downloads]# usermod  -c "Disabled Account while Bob out of the country 
for five months" bjones

[root@localhost Downloads]# grep bjones /etc/passwd 
bjones:x:1001:1001:Disabled Account while Bob out of the country for four 
months:/home/bjones:/bin/bash

[root@localhost Downloads]#

Gerenciar grupos

Gerenciar grupos no Linux torna conveniente para um administrador combinar os usuários dentro de containers aplicando conjuntos de permissões aplicáveis ​​a todos os membros do grupo. Por exemplo, todos os usuários em Contabilidade podem precisar de acesso aos mesmos arquivos. Assim, fazemos um grupo contábil, agregando usuários contábeis.

Na maioria das vezes, qualquer coisa que requeira permissões especiais deve ser feita em um grupo. Essa abordagem geralmente economiza tempo ao aplicar permissões especiais a apenas um usuário. Por exemplo, Sally é responsável pelos relatórios e apenas Sally precisa de acesso a determinados arquivos para relatórios. No entanto, e se Sally ficar doente um dia e Bob fizer relatórios? Ou a necessidade de relatórios cresce? Quando um grupo é formado, um Administrador só precisa fazer isso uma vez. A adição de usuários é aplicada conforme as necessidades mudam ou se expandem.

A seguir estão alguns comandos comuns usados ​​para gerenciar grupos -

  • chgrp
  • groupadd
  • groups
  • usermod

chgrp - Altera a propriedade do grupo para um arquivo ou diretório.

Vamos fazer um diretório para que as pessoas do grupo de contabilidade armazenem arquivos e criem diretórios para arquivos.

[root@localhost Downloads]# mkdir /home/accounting

[root@localhost Downloads]# ls -ld /home/accounting
drwxr-xr-x. 2 root root 6 Jan 13 10:18 /home/accounting

[root@localhost Downloads]#

A seguir, vamos atribuir a propriedade do grupo ao grupo de contabilidade .

[root@localhost Downloads]# chgrp -v  accounting /home/accounting/ 
changed group of ‘/home/accounting/’ from root to accounting

[root@localhost Downloads]# ls -ld /home/accounting/ 
drwxr-xr-x. 2 root accounting 6 Jan 13 10:18 /home/accounting/

[root@localhost Downloads]#

Agora, todos no grupo de contabilidade têm permissão de leitura e execução para / home / contabilidade . Eles também precisarão de permissões de gravação.

[root@localhost Downloads]# chmod g+w /home/accounting/

[root@localhost Downloads]# ls -ld /home/accounting/ 
drwxrwxr-x. 2 root accounting 6 Jan 13 10:18 /home/accounting/

[root@localhost Downloads]#

Uma vez que o grupo de contabilidade pode lidar com documentos confidenciais, precisamos aplicar algumas permissões restritivas para outro ou mundo .

[root@localhost Downloads]# chmod o-rx /home/accounting/

[root@localhost Downloads]# ls -ld /home/accounting/ 
drwxrwx---. 2 root accounting 6 Jan 13 10:18 /home/accounting/

[root@localhost Downloads]#

groupadd - Usado para fazer um novo grupo.

Interruptor Açao
-g Especifica um GID para o grupo
-K Substitui as especificações do GID em /etc/login.defs
-o Permite substituir a rejeição de ID de grupo não exclusivo
-p Senha do grupo, permitindo que os usuários se ativem

Vamos fazer um novo grupo chamado secreto. Vamos adicionar uma senha ao grupo, permitindo que os usuários se adicionem com uma senha conhecida.

[root@localhost]# groupadd secret

[root@localhost]# gpasswd secret 
Changing the password for group secret 
New Password:  
Re-enter new password:

[root@localhost]# exit 
exit

[centos@localhost ~]$ newgrp secret 
Password:

[centos@localhost ~]$ groups 
secret wheel rdc

[centos@localhost ~]$

Na prática, as senhas dos grupos não são usadas com frequência. Os grupos secundários são adequados e compartilhar senhas entre outros usuários não é uma boa prática de segurança.

o groupscomando é usado para mostrar a qual grupo um usuário pertence. Usaremos isso, depois de fazer algumas alterações em nosso usuário atual.

usermod é usado para atualizar os atributos da conta.

A seguir estão as opções de usermod comuns .

Interruptor Açao
-uma Anexa, adiciona usuário a grupos suplementares, apenas com a opção -G
-c Comentário, atualiza o valor do comentário do usuário
-d Diretório inicial, atualiza o diretório inicial do usuário
-G Agrupa, adiciona ou remove os grupos de usuários secundários
-g Grupo, grupo primário padrão do usuário
[root@localhost]# groups centos 
centos : accounting secret

[root@localhost]#

[root@localhost]# usermod -a -G wheel centos

[root@localhost]# groups centos
centos : accounting wheel secret

[root@localhost]#