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]#