• Nenhum resultado encontrado

Trivia. /etc/passwd. /etc/passwd. /etc/group. /etc/passwd. Exemplo: Gestão de Utilizadores em Linux

N/A
N/A
Protected

Academic year: 2021

Share "Trivia. /etc/passwd. /etc/passwd. /etc/group. /etc/passwd. Exemplo: Gestão de Utilizadores em Linux"

Copied!
5
0
0

Texto

(1)

Trivia

• Qual foi o 1º sistema de ficheiros implementado no kernel

Linux?

• O programa swapon cria novas partições de swap.

Sim/Não?

• Como podemos saber quais os sistemas de ficheiros

montados?

• Um exemplo de sistema de ficheiros journaling em Linux.

Gestão de Utilizadores em Linux

• Os utilizadores são identificados pelo “User ID”: UID.

• Cada utilizador pode pertencer a um ou mais grupos.

• Cada grupo possui também o seu identificador: GID.

/etc/passwd

• Os utilizadores do sistema estão definidos no

/etc/passwd

• Cada linha corresponde a um utilizador.

• Campos separados por “:”

• Todos obrigatórios, mas podem estar vazios.

/etc/passwd

• Formato:

nome:palavra-chave:UID:GID:nome-completo:pasta-do-utilizador:shell-por-omissão Nome:

Nome (único) do utilizador (max. 32 caracteres) Palavra-chave:

Palavra chave (cifrada) do utilizador, normalmente um ‘x’ (‘*’ desabilita o utilizador) UID:

Identificador único do utilizador (normalmente, para util. normais >100) GID:

Identificador do grupo a que o utilizador pertence por omissão Nome-completo:

Descrição textual do utilizador Pasta-do-utilizador:

Pasta onde o utilizador guarda os seus ficheiros Shell-por-omissão:

Shell a abrir por omissão (pode ser /dev/null; /sbin/nologin)

/etc/passwd

• Exemplo:

root:BeDyr8qulmhZ2:0:0:root:/root:/bin/bash daemon:*:2:2:daemon:/sbin:/bin/bash bin:*:1:1:bin:/bin:/bin/bash

postgres:*:26:2:Postgres Database Admin:/var/lib/pgsql:/bin/bash wwwrun:*:30:65534:Daemon user for apache:/tmp:/bin/bash

guest:a28HqK3Yamh7t:1001:102:Utilizador nosso convidado:/home/guest:/bin/csh user:uHr5fg6RtEw23:1002:102:Utilizador local:/home/user:/bin/bash

/etc/group

• Os grupos a que os utilizadores podem

pertencer estão no /etc/group

• Estrutura semelhante ao /etc/passwd

• É normal criar um grupo para cada utilizador

• Cada linha contém :

– Group name - define o nome do grupo – Password - Normalmente tem um "*" ou um "x". – Group Identifier(GID) – Identificador único do grupo. – Lista de utilizadores pertencentes ao grupo

(2)

/etc/group

• Exemplo:

root:x:0:root bin:x:1:root,bin,daemon daemon:x:2: users:x:102: nogroup:x:65534:root

Problema

• O ficheiro /etc/passwd tem de poder ser

lido por todos os utilizadores!

• Porquê?

– Exemplo: Se fizermos ls -l, o comando ls precisa ler o

/etc/passwd para saber a correspondência entre o UID e o

nome de um utilizador

• As palavras-chave no /etc/passwd estão

cifradas, mas…

/etc/shadow

• A solução é mover as palavras-chave do

/etc/passwd para o /etc/shadow

• O /etc/shadow só pode ser lido pelo root

• No /etc/passwd, o campo da palavra-chave

passa a um ‘x’, para indicar que estamos a

utilizar o /etc/shadow

/etc/shadow

• Além da palavra chave, possui mais alguma

informação

• Estrutura semelhante ao /etc/passwd

Nome:

Nome do utilizador Palavra-chave:

Palavra chave (cifrada) do utilizador Data-modificação:

Última vez que a palavra-chave foi alterada Tempo de vida mínimo:

Intervalo de tempo mínimo entre modificações da palavra-chave Tempo de vida máximo:

Intervalo de tempo máximo entre modificações da palavra-chave Tempo de aviso:

Quanto tempo antes o utilizador será avisado que a sua palavra-chave irá expirar

Adicionar utilizadores

• Passos

– Editar /etc/passwd, /etc/shadow para definir o

utilizador

– Editar /etc/group

– Utilizar passwd para alterar a palavra chave

– Criar a pasta do utilizador e possível estrutura

– Copiar ficheiros e scripts

– Alterar permissões e dono dos anteriores

Ferramentas

• Existem algumas ferramentas básicas

para gerir os utilizadores e grupos:

– useradd

– usermod

– userdel

– groupadd

– groupmod

– groupdel

(3)

useradd

• useradd <nome-do-utilizador>:

– Adiciona utilizador aos /etc/passwd,

/etc/shadow;

– Cria um grupo no /etc/group;

– Copia os ficheiros sob /etc/skel para a nova

pasta do utilizador sob

/home/<nome-do-utilizador>

– Muda as permissões dos anteriores

usermod, userdel

• usermod

– Modifica as configurações do utilizador

• userdel

– Apagar um utilizador

– Ainda temos de:

• Apagar pasta do utilizador e outros ficheiros deste

• …

groupadd, groupmod, groupdel

• Operações semelhantes, mas sobre os

grupos…

Desligar utilizadores

• Através da shell:

– Colocar “/sbin/nologin” no campo shell do /etc/passwd – Se for um utilizador normal, é habitual colocar um programa que

emita as razões porquê este está impedido de entrar no sistema

• Através da palavra-chave:

– Colocar um “!” no campo da palavra-chave do /etc/shadow – Equivalente a: passwd –l (-u para restaurar)

Atributos por omissão

• Atributos por omissão como:

– Pasta onde residem as caixas de correio;

– Intervalos de duração das palavras-chave;

– Gamas de valores para os UIDs e GIDs;

– Se a pasta do utilizador deve ser criada quando

utilizamos o useradd;

– …

São definidos em /etc/login.defs

Mensagens de entrada no sistema

• /etc/motd

– “Message of the Day”, apresentada depois da

entrada com sucesso do utilizador.

• /etc/issue

– Apresentada antes da entrada do utilizador,

no ecrã de apresentação das credenciais.

(4)

Exercício

• Todos os utilizadores do sistema devem ter, sob a sua pasta, uma pasta WWW (permissões 755), com um ficheiro de texto chamado robots.txt, com o conteúdo seguinte:

# go away User-agent: * Disallow: /

• Os utilizadores não devem poder alterar a palavra chave com uma frequência maior que dois dias e devem a mudar, pelo menos, todos os anos. • Adicionar 5 utilizadores com os UIDs 600, 601, …, 604, respectivamente. • Os utilizadores com UID 600, 602 e 603 pertencem ao grupo asi1_fd, com o

GID 101. Este possuem a palavra chave “asi1”

• Os utilizadores 601 e 504 pertencem asi1_gd. Não possuem palavra chave. • O utilizador com UID=601 deve ser um utilizador válido, mas sem acesso a

uma shell.

• Crie um utilizador “bigdog”, com permissões para aceder a todos os objectos do sistema.

Pluggable Authentication Modules

• Tradicionalmente um utilizador era autenticado com a

informação no /etc/passwd (e /etc/shadow)

• Outros mecanismos foram aparecendo:

– NIS, LDAP, Smart Cards, …

• Cada vez que é inventado um novo mecanismo de

autenticação, os programas (ftpd, sshd, …) tinham de

ser reescritos para os suportar

• PAM possibilita que os programas utilizem autenticação

independente do mecanismo subjacente

Pluggable Authentication Modules

• Não é mais que uma biblioteca de funções que

implementa um sistema flexível de autenticação

• Os ficheiro(s) de configuração:

– /etc/pam.conf ou

– /etc/pam.d/

– Em RH, a última opção.

• Cada aplicação que utiliza PAM tem um ficheiro

de configuração em /etc/pam.d/

Pluggable Authentication Modules

• Cada ficheiro contém a política de

autenticação para o serviço

• Cada linha deste ficheiro contém uma

directiva com os seguintes parâmetros:

– Tipo

– Acção-resultado

– Módulo

Pluggable Authentication Modules

• Tipo:

– Existem 4 tipos :

– auth : Procedimentos para a autenticação de utilizadores – account: Atributos das contas dos utilizadores – password: Verificam palavras-chave

– session: Configuram e gerem sessões dos utilizadores

• Acção-resultado:

– Sufficient – Requisite – Required – Optional

Pluggable Authentication Modules

• Módulo

– Indica qual o módulo PAM a utilizar

– Pequenos programas que indicam sucesso ou

insucesso

– Alguns exemplos:

• pam_deny: Retorna sempre insucesso • pam_permit: Retorna sempre sucesso

• pam_unix: Sucesso/insucesso de acordo autenticação tradicional • pam_nologin: Retorna insucesso, se o ficheiro /etc/nologin existir • pam_cracklib: Retorna insucesso, se a palavra chave não passar

um teste de qualidade • …

(5)

Pluggable Authentication Modules

• Exemplo :

auth required pam_securetty.so

auth required pam_nologin.so

auth required pam_unix.so

• sshd

auth required pam_stack.so service=system.out

auth required pam_nologin.so

account required pam_stack.so service=system.out

password required pam_stack.so service=system.out

session required pam_stack.so service=system.out

session required pam_limits.so

session required pam_console.so

nsswitch.conf

• Existem aplicações que utilizam rotinas do sistema para

obter informação como:

– Identificadores e nomes de utilizadores e grupos, nomes e endereços de máquinas, serviços, etc…

• Estas rotinas do sistema podem ter de ir buscar esta

informação de diversos repositórios:

– NIS, NIS+, LDAP, DNS, etc …

• As fontes de informação e respectiva ordem de

utilização é determinada pelo /etc/nsswitch.conf

nsswitch.conf

• Exemplo:

passwd: files nisplus nis shadow: files nisplus nis group: files nisplus nis hosts: files nisplus dns

bootparams: nisplus [NOTFOUND=return] files netgroup: files

ethers: files netmasks: files networks: files protocols: files nisplus rpc: files

services: files nisplus automount: files nisplus aliases: files nisplus

Referências

Documentos relacionados

Diante de tais fundamentos concluo que a con- duta da parte ré não ultrapassou o direito de livre manifestação de pen- samento não gerando ofensa injusta à honra,

“TRANSCRIÇÃO IN IPSIS LITTERIS: Quando as pessoas comentam assim ah A polícia tem medo de traficante mentira polícia não tem medo de traficante não na verdade a polícia vai

Notificada a autoridade coatora, esclareceu ausência de ilegalidade a ser combatida por meio do writ, tendo em vista que “o valor fixado atualmente para a UEPB é de R$ 24.220.000,00

Existindo a disponibilidade de uso de uma sala com computadores e acesso à Internet, e/ou um Laboratório de Física, com computadores instalados, as possibilidades didático-

Prestar serviços, que contribuam para a melhoria da Qualidade, agregando valor para toda Cadeia Automotiva Indústria, Comércio e Serviços. • Criado em 1995 nas câmaras setoriais

Através dos resultados dos índices morfométricos e coeficiente de Rugosidade, a microbacia apresenta potencialidades do uso do solo com pastagens para a pecuária, e,

A presente lei dá execução ao disposto na Convenção Quadro da Organização Mundial de Saúde para o Con- trolo do Tabaco, aprovada pelo Decreto n.º 25 -A/2005, de 8 de

Desenvolvimento Gerencial (INDG) 7 , organização que se tornou referência em consultoria de gestão com foco em resultados, contando como uma rede de 900 consultores e 450