Sistemas Operacionais - Gnu/Linux Administracao do Sistema / Contas de Usuários

5,110 views
4,980 views

Published on

Published in: Technology
0 Comments
1 Like
Statistics
Notes
  • Be the first to comment

No Downloads
Views
Total views
5,110
On SlideShare
0
From Embeds
0
Number of Embeds
9
Actions
Shares
0
Downloads
118
Comments
0
Likes
1
Embeds 0
No embeds

No notes for slide

Sistemas Operacionais - Gnu/Linux Administracao do Sistema / Contas de Usuários

  1. 1. 1 Sistemas Operacionais Luiz Arthur Em sistemas operacionais multiusuários, é comum que o administrador gaste grande parte do seu tempo configurando constas de usuários, efetuando manutenções de rotina e tarefas de backup. A administração de contas de usuários no Linux é relativamente fácil. As contas de usuários são gravadas em um arquivo especial /etc/passwd. Neste arquivo são gravados os dados como login do usuário, senha, identificador, grupo a que ele pertence, nome do usuário, diretório home e shell. A conta do super-usuário tem características especiais: root:x:0:0:root:/root/:/bin/bash Cada elemento que constitui o conteúdo do arquivo /etc/passwd é separado por dois pontos na seguinte seqüência: - Login: O login é a identificação que o usuário vai utilizar no sistema. Este deve ser único sem espaços e geralmente uma abreviação do nome. - x: O x representa a senha do usuário. Nos primórdios do Linux a senha criptografada era gravada neste campo no lugar do x. Mas como vários aplicativos e utilitários precisam ter acesso ao conteúdo do arquivo /etc/passwd ele precisa ter permissões de leitura para todos. Logo percebeu-se que não era muito seguro e a senha criptografada foi colocada em outro arquivo especial chamado /etc/shadow com permissões de leitura somente para o root.
  2. 2. 2 Sistemas Operacionais Luiz Arthur - ID do usuário (UserID - UID): Este ID é numérico único para cada conta de usuário. Por definição o ID zero é designado para o usuário root que habilita seus poderes como administrador do sistema. Por convenção, os ID's de 1 a 99 são utilizados para uso administrativo e contas de usuários utilizados para serviços do sistema. - ID do grupo (GroupID – GID): Este é o ID numérico do grupo ao qual o usuário pertence. Os usuários podem pertencer a grupos de trabalho para facilitar o compartilhamento de informações e gerencia da segurança do sistema. O GID precisa estar cadastrado no arquivo /etc/group. - Nome do usuário: Este campo alfa numérico aceita espaços e é reservado para o nome do usuário ou qualquer outra observação pertinente. - Diretório home: O diretório home é o diretório padrão para a conta de usuário. É neste diretório definido que o dono da conta tem privilégios especiais neste campo do arquivo /etc/passwd deverá ser colocado o caminho completo do diretório home. - Shell: Este campo é designado o executável do shell que cada usuário utiliza. O padrão é o Boune Again Shell /bin/bash. Outros shell's podem ser utilizados, como o /bin/tcsh ou qualquer outro programa que tome seu lugar. Existe uma situação especial em que o arquivo /bin/false é referenciado este arquivo simplesmente não faz nada, proibindo o usuário desta conta de logar no sistema interativamente.
  3. 3. 3 Sistemas Operacionais Luiz Arthur Exemplos de contas no arquivo /etc/passwd: As senhas no Linux são criptografadas de uma forma que não é possível recuperar a senha usando a engenharia reversa. No entanto um ataque do tipo força bruta, onde diversas palavras, números e símbolos são criptografados e comparados com as senhas criptografadas até que uma comparação seja positiva, é muito utilizado depois do advento de computadores mais rápidos. Por este motivo, as senhas foram transferidas para um arquivo especial chamado /etc/shadow. Este arquivo contém permissões especiais a que somente o super- usuário tem permissões de acesso, dificultando este tipo de ataque. O arquivo /etc/shadow possui a seguinte formatação: root:$1odIUdsnsOIUsid83sHi8Jhue:12422:0:99999:7::: O primeiro campo do arquivo contém o login dos usuários e o segundo campo contém as senhas criptografadas. Os demais campos contém informações sobre a expiração da conta.
  4. 4. 4 Sistemas Operacionais Luiz Arthur Grupo de trabalho Para facilitar a administração das permissões de acesso aos recursos e arquivos do sistema, o Linux faz uso do conceito de grupo de trabalho. Estes grupos são definidos no arquivo /etc/group. root:x:0:root daemon:x:10:wwwrun,sendmail,squid user:x:500:aula,aula Cada coluna separada por dois-pontos tem o significado a seguir: - Nome do grupo: O nome do grupo tem que ser único no sistema. - Assim como as contas de usuário, os grupos podem também fazer uso de senha para que um usuário possa ingressar nele. As senhas são criptografadas no arquivo /etc/gshadow. - ID do Grupo (GroupID ou GID): Cada grupo precisa de um ID numérico inteiro positivo e único. Esta ID é referenciado no arquivo /etc/passwd. - Lista de membros: Os grupos de usuários podem conter um ou mais membros e um usuário pode ser membro de mais de um grupo.
  5. 5. 5 Sistemas Operacionais Luiz Arthur Como arquivo de /etc/group é de livre leitura existe a necessidade de separar as senhas de grupo em um arquivo de leitura somente para super-usuário. Este arquivo é o /etc/gshadow. Não é comum o uso de senhas para os grupos de trabalho. Administrando Contas de Usuário Como você deve ter visto administrar contas de usuários grupos e senhas é relativamente simples. Você poderá faze-lo com um editor de textos como o vi. Mas o Linux possui um conjunto de ferramentas para facilitar esta tarefa. useradd ou adduser adduser adiciona um usuário ou grupo no sistema. Por padrão, quando um novo usuário é adicionado, no Slackware ele é adicionado ao grupo users. Opcionalmente o adduser também pode ser usado para adicionar um usuário a um grupo. Será criado um diretório home com o nome do usuário (a não ser que o novo usuário criado seja um usuário do sistema) e este receberá uma identificação. A identificação do usuário (UID) escolhida será a primeira disponível no sistema.
  6. 6. 6 Sistemas Operacionais Luiz Arthur useradd/adduser [opções] [usuário/grupo] Onde: usuário/grupo Nome do novo usuário que será adicionado ao sistema. Opções: -g initial_group Indica o grupo primário do usuário. -G group,[...] Adiciona o usuário um ou mais grupos, os diferentes grupos são separados por virgulas. -u [num] Cria um novo usuário com a identificação [num] ao invés de procurar o próximo UID disponível.
  7. 7. 7 Sistemas Operacionais Luiz Arthur groupadd Adiciona um novo grupo de usuários no sistema. groupadd [grupo] [opções] Grupo: Nome do grupo a ser criado. Opções: -g Informa manualmente o número de ID do grupo. passwd Muda a senha do usuário ou grupo. Um usuário somente pode alterar a senha de sua conta, mas o superusuário (root) pode alterar a senha de qualquer conta de usuário, inclusive a data de validade da conta, etc. Os donos de grupos também podem alterar a senha do grupo com este comando.
  8. 8. 8 Sistemas Operacionais Luiz Arthur Os dados da conta do usuário como nome, endereço, telefone, também podem ser alterados com este comando. passwd [usuário/grupo] [opções] Onde: usuário Nome do usuário/grupo que terá sua senha alterada. Opções: -g Se especificada, a senha do grupo será alterada. Somente o root ou o administrador do grupo pode alterar sua senha. A opção -r pode ser usada com esta para remover a senha do grupo. A opção -R pode ser usada para restringir o acesso do grupo para outros usuários. -x [dias] Especifica o número máximo de dias que a senha poderá ser usada. Após terminar o prazo, a senha deverá ser modificada.
  9. 9. 9 Sistemas Operacionais Luiz Arthur -i Desativa a conta caso o usuário não tenha alterado sua senha após o tempo especificado por -x. -n [dias] Especifica o número mínimo de dias para a senha ser alterada. O usuário não poderá mudar sua senha até que [dias] sejam atingidos desde a última alteração de senha. -w [num] Número de dias antecedentes que o usuário receberá o alerta para mudar sua senha. O alerta ocorre [num] dias antes do limite da opção -x, avisando ao usuários quantos dias restam para a troca de sua senha. -l [nome] Bloqueia a conta do usuário [nome]. Deve ser usada pelo root. O bloqueio da conta é feito acrescentando um caracter a senha para que não confira com a senha original.
  10. 10. 10 Sistemas Operacionais Luiz Arthur -u [nome] Desbloqueia a conta de um usuário bloqueada com a opção -l. -S [nome] Mostra o status da conta do usuário [nome]. A primeira parte é o nome do usuário seguido de L (conta bloqueada), NP (sem senha), ou P (com senha), a terceira parte é a data da última modificação da senha, a quarta parte é a período mínimo, máximo, alerta e o período de inatividade para a senha. Procure sempre combinar letras maiúsculas, minúsculas, e números ao escolher suas senhas. Não é recomendado escolher palavras normais como sua senha pois podem ser vulneráveis a ataques de dicionários cracker. Outra recomendação é utilizar senhas ocultas em seu sistema (shadow password). Você deve ser o dono da conta para poder modificar a senhas. O usuário root pode modificar/apagar a senha de qualquer usuário.
  11. 11. 11 Sistemas Operacionais Luiz Arthur newgrp Altera a identificação de grupo do usuário. Para retornar a identificação anterior, digite exit e tecle Enter. Para executar um comando com outra identificação de grupo de usuário, use o comando sg. newgrp - [grupo] Onde: - Se usado, inicia um novo ambiente após o uso do comando newgrp (semelhante a um novo login no sistema), caso contrário, o ambiente atual do usuário é mantido. grupo Nome do grupo ou número do grupo que será incluído. Quando este comando é usado, é pedida a senha do grupo que deseja acessar. Caso a senha do grupo esteja incorreta ou não exista senha definida, a execução do comando é negada.
  12. 12. 12 Sistemas Operacionais Luiz Arthur userdel Apaga um usuário do sistema. Quando é usado, este comando apaga todos os dados da conta especificado dos arquivos de contas do sistema. userdel [-r] [usuário] Onde: -r Apaga também o diretório HOME do usuário. Observação: Note que uma conta de usuário não poderá ser removida caso ele estiver no sistema, pois os programas podem precisar ter acesso aos dados dele (como UID, GID) no /etc/passwd.
  13. 13. 13 Sistemas Operacionais Luiz Arthur groupdel Apaga um grupo do sistema. Quando é usado, este comando apaga todos os dados do grupo especificado dos arquivos de contas do sistema. groupdel [grupo] Tenha certeza que não existem arquivos/diretórios criados com o grupo apagado através do comando find. Observação: Você não pode remover o grupo primário de um usuário. Remova o usuário primeiro.
  14. 14. 14 Sistemas Operacionais Luiz Arthur lastlog Mostra o último login dos usuários cadastrados no sistema. É mostrado o nome usado no login, o terminal onde ocorreu a conexão e a hora da última conexão. Estes dados são obtidos através da pesquisa e formatação do arquivo /var/log/lastlog. Caso o usuário não tenha feito login, é mostrada a mensagem ** Never logged in ** lastlog [opções] Onde: opções -t [dias] Mostra somente os usuários que se conectaram ao sistema nos últimos [dias]. -u [nome] Mostra somente detalhes sobre o usuário [nome]. A opção -t substitui a opção -u caso sejam usadas.
  15. 15. 15 Sistemas Operacionais Luiz Arthur last Mostra uma listagem de entrada e saída de usuários no sistema. São mostrados os seguintes campos na listagem: Nome do usuário Terminal onde ocorreu a conexão/desconexão O hostname (caso a conexão tenha ocorrido remotamente) ou console (caso tenha ocorrido localmente). A data do login/logout, a hora do login/down se estiver fora do sistema/ still logged in se ainda estiver usando o sistema Tempo (em Horas:Minutos) que esteve conectado ao sistema. A listagem é mostrada em ordem inversa, ou seja, da data mais atual para a mais antiga. A listagem feita pelo last é obtida de /var/log/wtmp.
  16. 16. 16 Sistemas Operacionais Luiz Arthur sg Executa um comando com outra identificação de grupo. A identificação do grupo de usuário é modificada somente durante a execução do comando. Para alterar a identificação de grupo durante sua seção shell, use o comando newgrp. sg [-] [grupo] [comando] Onde: - Se usado, inicia um novo ambiente durante o uso do comando (semelhante a um novo login e execução do comando), caso contrário, o ambiente atual do usuário é mantido. grupo Nome do grupo que o comando será executado. comando Comando que será executado. O comando será executado pelo bash. Quando este comando é usado, é pedida a senha do grupo que deseja acessar. Caso a senha do grupo esteja incorreta ou não exista senha definida, a execução do comando é negada. Exemplo: sg root ls /root
  17. 17. 17 Sistemas Operacionais Luiz Arthur Adicionando o usuário a um grupo extra Para adicionar um usuário em um novo grupo e assim permitir que ele acesse os arquivos/diretórios que pertencem àquele grupo, você deve estar como root e editar o arquivo /etc/group com o comando vigr. Este arquivo possui o seguinte formato: NomedoGrupo:senha:GID:usuários Onde: NomedoGrupo É o nome daquele grupo de usuários. senha Senha para ter acesso ao grupo. Caso esteja utilizando senhas ocultas para grupos, as senhas estarão em /etc/gshadow. GID Identificação numérica do grupo de usuário. usuarios Lista de usuários que também fazem parte daquele grupo. Caso exista mais de um nome de usuário, eles devem estar separados por vírgula.
  18. 18. 18 Sistemas Operacionais Luiz Arthur Deste modo para acrescentar o usuário "joao" ao grupo audio para ter acesso aos dispositivos de som do Linux, acrescente o nome no final da linha: "audio:x:100:joao". Pronto, basta digitar logout e entrar novamente com seu nome e senha, você estará fazendo parte do grupo audio (confira digitando groups ou id). Outros nomes de usuários podem ser acrescentados ao grupo audio bastando separar os nomes com vírgula. Você também pode usar o comando adduser da seguinte forma para adicionar automaticamente um usuário a um grupo: adduser joao audio Isto adicionaria o usuário "joao" ao grupo audio da mesma forma que fazendo-se a edição manualmente.
  19. 19. 19 Sistemas Operacionais Luiz Arthur fim

×