Observação:
- Este tutorial está disponível em um ambiente de laboratório gratuito fornecido pela Oracle.
- Ele usa valores de exemplo para credenciais, tenancy e compartimentos do Oracle Cloud Infrastructure. Ao concluir o laboratório, substitua esses valores pelos específicos do seu ambiente de nuvem.
Criar usuários e grupos no Oracle Linux
Introdução
O tutorial a seguir fornece procedimentos detalhados para executar a administração de usuários e grupos no Oracle Linux. Você criará usuários e grupos, implementará grupos privados de usuários e concederá privilégios elevados ao usuário.
Objetivos
Neste laboratório, você:
- Criar um novo usuário e explorar o diretório inicial do usuário
- Criar um novo grupo e adicionar um usuário a um grupo
- Utilizar o esquema de grupo privado do usuário e implementar o acesso de gravação a um diretório
- Administre o comando
sudo
para conceder privilégios root
Do Que Você Precisa?
- Um sistema com o Oracle Linux instalado
Observação: ao usar o ambiente de laboratório gratuito, consulte Conceitos Básicos do Oracle Linux Lab para obter conexão e outras instruções de uso.
Administração de Contas de Usuário
Nesta seção, você usa utilitários de linha de comando para criar uma nova conta de usuário, exibir arquivos que são atualizados ao adicionar um novo usuário, modificar uma conta de usuário, definir uma senha para o novo usuário e fazer login como o novo usuário.
-
Abra um terminal e conecte-se à sua instância do Oracle Linux.
-
Torne-se o usuário root.
sudo su -
-
Como o usuário root, adicione um usuário denominado alice.
useradd alice
O usuário é adicionado ao arquivo
/etc/passwd
. -
Exiba a entrada do alice no arquivo
/etc/passwd
.grep alice /etc/passwd
A saída mostra:
- O UID e o GID do novo usuário são iguais (
1001
). - Um diretório home foi criado para o novo usuário (
/home/alice
). - O shell padrão do novo usuário é
/bin/bash
.
- O UID e o GID do novo usuário são iguais (
-
Exiba os diretórios home.
ls -l /home
Neste exemplo, o usuário opc já existia.
Um diretório home foi criado para o novo usuário porque o parâmetro CREATE_HOME em/etc/login.defs
está definido comoyes
. -
Exiba o parâmetro CREATE_HOME no arquivo
/etc/login.defs
.grep CREATE_HOME /etc/login.defs
-
Exiba as definições padrão de um novo usuário, armazenadas em
/etc/default/useradd
.cat /etc/default/useradd
O parâmetro SKEL é definido como
/etc/skel
. -
Exiba o conteúdo do diretório
/etc/skel
.ls -la /etc/skel
-
Visualize o conteúdo do diretório inicial do alice.
ls -la /home/alice
O conteúdo de SKEL (
/etc/skel
) é copiado para o diretório home do novo usuário. -
Exiba a nova entrada do alice no arquivo
/etc/group
.grep alice /etc/group
Como o Oracle Linux usa um esquema de grupo privado de usuários (UPG), um novo grupo privado (alice, GID=1001) foi criado quando o usuário do alice foi criado.
-
Modificar informações GECOS para o usuário do alice. Exiba a entrada do alice no arquivo
/etc/passwd
antes e depois de modificar as informações do GECOS.grep alice /etc/passwd usermod -c "Alice Smith" alice grep alice /etc/passwd
-
Crie uma senha de
AB*gh246
para o usuário do alice. Exiba a entrada do alice no arquivo/etc/shadow
antes e depois de criar uma senha para o alice.grep alice /etc/shadow passwd alice grep alice /etc/shadow
O
!!
do alice é substituído por um valor de senha hash. -
Saia do log-in root e faça log-in como o usuário alice. Forneça a senha de
AB*gh246
quando solicitado.exit su - alice
-
Verifique se você é o usuário do alice e se o diretório atual é o diretório inicial do usuário do alice.
whoami pwd
-
Saia do shell do usuário alice e torne-se o usuário root.
exit sudo su -
-
Como usuário root, adicione um usuário denominado oracle que seja usado de forma posterior neste laboratório.
useradd oracle
-
Crie uma senha de
XY*gh579
para o usuário oracle.passwd oracle
Administrar Contas do Grupo
Nesta seção, você cria uma nova conta de grupo e adiciona um usuário a esse novo grupo.
-
Como o usuário root, adicione um grupo denominado staff.
groupadd staff
O grupo é adicionado ao arquivo
/etc/group
. -
Exiba as 10 últimas entradas no arquivo
/etc/group
.tail /etc/group
O GID (
1003
) do novo grupo é incrementado em um. -
Adicione o usuário do alice ao grupo staff. Exiba a entrada de grupo staff no arquivo
/etc/group
.usermod -aG 1003 alice grep staff /etc/group
O usuário do alice tem uma associação de grupo secundária no grupo staff.
-
Exiba a associação do grupo principal para o alice.
grep alice /etc/passwd
O grupo principal do usuário do alice ainda é
1001
.
Implementar Grupos Privados de Usuários
Nesta seção, você usa o esquema User Private Groups para conceder aos usuários diferentes acesso ao arquivo de um único diretório.
-
Como o usuário root, crie o diretório
/staff
.mkdir /staff
-
Exiba o diretório
/staff
e suas permissões.ls -ld /staff
-
Altere a propriedade do grupo do diretório
/staff
para o grupo staff. A opção-R
(recursiva) define o grupo para arquivos e diretórios em/staff
. Exiba o diretório/staff
e suas permissões após alterar a propriedade do grupo.chgrp -R staff /staff ls -ld /staff
O proprietário do diretório
/staff
ainda é root, mas o grupo agora é staff. -
Defina o bit setgid no diretório
/staff
. Em seguida, exiba as permissões no diretório/staff
.chmod -R 2775 /staff ls -ld /staff
As permissões do grupo no diretório
/staff
foram alteradas. -
Adicione o usuário oracle ao grupo staff. Exiba a entrada staff no arquivo
/etc/group
após adicionar o usuário oracle.usermod -aG staff oracle grep staff /etc/group
Os usuários alice e oracle têm uma associação de grupo secundária no grupo staff.
-
Torne-se o usuário oracle. Você não é solicitado a informar a senha do usuário oracle porque atualmente você é o usuário root. Verifique se você é o usuário oracle e se o diretório atual é o diretório home do usuário oracle.
su - oracle whoami pwd
-
Exiba a associação do grupo do usuário oracle.
groups
O usuário oracle pertence a dois grupos - oracle e staff.
-
Altere para o diretório
/staff
. Crie um novo arquivo no diretório/staff
chamadooracle_file
. Exiba as permissões e a propriedade do novo arquivo.cd /staff touch oracle_file ls -l oracle_file
As permissões são leitura/gravação para o grupo staff.
-
Torne-se o usuário do alice. Forneça a senha de
AB*gh246
quando solicitado. Verifique se você é o usuário do alice.su - alice whoami
-
Exiba a associação do grupo do usuário do alice.
groups
O usuário do alice pertence a dois grupos: alice e staff.
-
Altere para o diretório
/staff
. Crie um novo arquivo no diretório/staff
chamadoalice_file
. Exiba as permissões e a propriedade dos novos arquivos.cd /staff touch alice_file ls -l
As permissões são leitura/gravação nos dois arquivos do grupo staff.
-
Como usuário do alice, use o comando
touch
para atualizar o timestamp nooracle_file
. Visualize os arquivos para verificar se o horário foi alterado.touch oracle_file ls -l
A atualização do timestamp implica permissões de gravação no arquivo como o usuário do alice, mesmo que o arquivo tenha sido criado pelo usuário oracle.
-
Saia do shell do usuário alice e do shell do usuário oracle para retornar ao shell do usuário root. Verifique se você é o usuário root.
exit exit whoami
Opção 1: Conceder Privilégios Elevados a um Usuário
Nesta seção, você concede privilégios sudo
a um usuário adicionando uma entrada ao arquivo /etc/sudoers
.
-
Torne-se o usuário do alice. A senha do alice não é solicitada porque você é atualmente o usuário root. Verifique se você é o usuário do alice.
su - alice whoami
-
Como usuário do alice, tente adicionar newuser.
useradd newuser
O usuário do alice não tem permissão para adicionar newuser.
-
Insira o comando
sudo
antes do comandouseradd
anterior para adicionar newuser. Forneça a senha deAB*gh246
quando solicitado.sudo useradd newuser
A tentativa de executar este comando de administrador sem a autorização adequada é reportada no arquivo
/var/log/secure
. -
Saia do shell do usuário alice para retornar ao shell do usuário root. Exiba entradas sudoers no arquivo
/var/log/secure
.exit grep sudoers /var/log/secure
A entrada alice: user NOT in sudoers para o uso tentado do comando
/sbin/useradd
está no arquivo/var/log/secure
. Várias entradas são mostradas no exemplo. Você só pode ter uma única entrada. -
Como usuário root, edite o arquivo
/etc/sudoers
usando o comandovisudo
.visudo
Esse comando abre o arquivo
/etc/sudoers
usando o editorvim
. -
No arquivo
/etc/sudoers
, adicione a linha a seguir para conceder ao usuário do alice permissão para executar o comando/sbin/useradd
.alice ALL=(ALL) /sbin/useradd
A nova entrada é destacada. Salve suas alterações e saia do comando
visudo
. -
Torne-se o usuário do alice. Tentativa de adicionar newuser sem o comando
sudo
. Insira o comandosudo
e tente adicionar newuser uma segunda vez. Forneça a senha deAB*gh246
quando solicitado.su - alice useradd newuser sudo useradd newuser
-
Verifique se newuser foi adicionado.
grep newuser /etc/passwd ls -l /home
O newuser agora existe. Com a entrada do alice no arquivo
/etc/sudoers
, o usuário do alice tem privilégiossudo
para executar o comando/sbin/useradd
. -
Saia do shell alice para retornar ao shell root. Use o comando
visudo
e exclua a entrada alice do arquivo/etc/sudoers
adicionado anteriormente neste laboratório.exit visudo
A entrada a ser excluída é destacada. Exclua a linha inteira ou, como neste exemplo, insira o caractere
#
para comentar a linha. Salve suas alterações e saia do comandovisudo
. -
Verifique se o usuário do alice não pode mais adicionar um novo usuário. Torne-se o usuário do alice. Tentativa de adicionar anotheruser ao comando
sudo
.su - alice sudo useradd anotheruser
A tentativa de executar este comando de administrador sem a autorização adequada é reportada no arquivo
/var/log/secure
. -
Saia do shell do usuário alice para retornar ao shell do usuário root.
exit
Opção 2: Conceder Privilégios Elevados a um Usuário
Nesta seção, você concede privilégios sudo
adicionando um usuário ao grupo roda.
-
Como usuário raiz, exiba a entrada roda no arquivo
/etc/sudoers
.grep wheel /etc/sudoers
A entrada %wheel ALL=(ALL) ALL no arquivo
/etc/sudoers
permite que qualquer membro do grupo wheel execute qualquer comando, quando precedido porsudo
. -
Adicione o usuário do alice ao grupo roda. Confirme se o usuário do alice está no grupo roda.
usermod -aG wheel alice grep wheel /etc/group
O usuário alice tem uma associação de grupo secundária no grupo roda.
-
Torne-se o usuário do alice. A senha do alice não é solicitada porque você é atualmente o usuário root. Verifique se você é o usuário do alice.
su - alice whoami
-
Como usuário do alice, adicione terceiro usuário usando o comando
sudo useradd
. Forneça a senha deAB*gh246
se solicitado.sudo useradd thirduser
-
Verifique se o terceiro usuário foi adicionado. O comando
ls
falha até que você insirasudo
e forneça a senha do alice. Isso confirma que o usuário do alice tem privilégiossudo
.grep thirduser /etc/passwd ls -la /home/thirduser sudo ls -la /home/thirduser
Mais Recursos de Aprendizagem
Explore outros laboratórios em docs.oracle.com/learn ou acesse mais conteúdo de aprendizado gratuito no canal YouTube do Oracle Learning. Além disso, visite education.oracle.com/learning-explorer para se tornar um Oracle Learning Explorer.
Para obter a documentação do produto, visite o Oracle Help Center.
Create users and groups on Oracle Linux
F49510-05
July 2022
Copyright © 2021, Oracle and/or its affiliates.