Para utilizar o sistema operacional Linux é necessário que se tenha uma conta de usuário cadastrada no sistema, ou seja, deverá fornecer um nome de usuário e uma senha de acesso ao computador.

Os usuários comuns são contas de acesso que não possuem direitos administrativos, ou seja, são contas que, simplesmente terão acesso a arquivos e diretórios criados pelo seu usuário. Essas contas são utilizadas para que os usuários do LINUX consigam acessar o sistema, digitar documentos e criar planilhas, navegar na Internet, sem alterar ou interferir em qualquer configuração do sistema operacional.

Mas na grande maioria das empresas, os computadores estão ligados em rede e existe um grande número de usuários que compartilham recursos comuns. Precisamos então fazer com que se tenha uma administração centralizada e fácil de todas as configurações referentes aos usuários e senhas que utilizam os sistemas.

O grande problema é que, podemos ter, por exemplo, três pessoas que trabalham no departamento de TIC da empresa que, normalmente, acessam os mesmos arquivos e diretórios de trabalho durante o dia. Então como fazer para diferenciar estes usuários e seus direitos de acessos a arquivos e diretórios de trabalho no sistema, dos demais usuários da empresa, que não poderão ter acesso a esses arquivos e diretórios? Mais do que isso, como fazer para que essa configuração não se torne repetitiva, difícil e trabalhosa para o administrador da rede?

Para isso utilizaremos o conceito de grupos. Os grupos foram criados para que usuários com tarefas comuns, acessos comuns a arquivos e diretórios de trabalhos sejam colocados em um mesmo grupo e todas as configurações sejam realizadas uma única vez ao grupo. Ou seja, se os usuários gabriel, senac e teste fazem parte do grupo TIC, então todos os três usuários terão os mesmos direitos concedidos ao grupo TIC.

Desta forma, o administrador tem um controle maior de suas configurações, bem como, uma agilidade muito grande para realizá-las. Podemos concluir então que, um grupo é um conjunto de usuários que compartilham os mesmos direitos de acesso a determinados recursos do sistema.

Importante: Toda vez que é criado um usuário no sistema, automaticamente é criado também, um grupo com o mesmo nome do usuário. Este é o grupo primário daquele usuário, o qual ele faz parte e sempre fará parte. Isso é uma configuração que pode ser alterada no sistema, mas que por padrão, vem conforme descrito acima.

Superusuário

Esta é uma conta de usuário no sistema para fins administrativos. Esta conta deverá ser utilizada, exclusivamente, pelo administrador do sistema. Com esta conta é possível realizar qualquer tarefa, independente de direitos e permissões concedidas à conta.

Este superusuário é conhecido como root. Seguem abaixo alguns privilégios do usuário root:

– Acessar arquivos, mesmo sem ter permissão ou direito concedido.

– Mudar permissão ou direito de qualquer arquivo do sistema.

– Adicionar e remover usuários no sistema.

– Instalar aplicativos e periféricos.

Seguem abaixo as principais obrigações do usuário root:

– Manter a segurança do sistema e a segurança da rede.

– Verificar o espaço livre em disco.

– Realizar backup diariamente.

– Disponibilizar e manter serviços de rede aos usuários.

– Gerenciamento do desempenho do sistema.

– Manter a analisar o log (registro) do sistema.

Importante: Quando você está trabalhando como root, qualquer comando digitado será executado sem restrição. Portanto, qualquer engano cometido pode danificar o sistema todo. Por isso a recomendação de utilizar a conta de root somente para fins administrativos.

UID e GID

O UID é a identificação de um usuário internamente no sistema. Se você cria um usuário com o nome de gabriel, o sistema identifica este usuário através de um código (número) seqüencial chamado UID.

O GID é a identificação de um grupo internamente no sistema. Se você cria um grupo com o nome de TIC, o sistema identifica este grupo através de um código (número) seqüencial chamado GID.

Usuário root = UID = 0

Usuários administrativos = UID < 500

Usuários comuns = UID >= 500

Ou seja, quando criamos o primeiro usuário comum no sistema, este será criado com UID = 500. O usuário root sempre tem UID = 0.

Importante: Se você quiser que um usuário comum passe a ter direito de root no sistema, basta alterar o seu UID para 0. Veremos mais adiante como é feita essa alteração.

 

Gerenciamento de Usuários

As contas de usuários e grupos, como já visto anteriormente, são fundamentais para garantirmos a segurança e a integridade dos dados do sistema. O usuário utilizará, sempre, uma conta e uma senha para acessar o sistema (realizar o login). Depois disso, poderá somente ter acesso, aos arquivos e diretórios com permissões para esta conta de usuário ou com permissões para alguma conta de grupo que este usuário faça parte.

É tarefa fundamental dos administradores de sistemas LINUX saber criar contas de usuários no sistema, criar contas de grupos, delegar autoridades aos usuários, configurar as permissões de acessos aos arquivos e diretórios do sistema de forma adequada, agrupar os usuários com acessos comuns e manter somente contas utilizadas no banco de dados de usuários do sistema.

Primeiramente, vamos conhecer alguns conceitos importantes sobre o funcionamento destas contas em sistema LINUX.

No momento que criamos um usuário no sistema, serão alterados os seguintes arquivos.

– /etc/passwd – banco de dados com informações de contas de usuários do sistema e suas propriedades.

– /etc/shadow – banco de dados com informações de senhas de usuários do sistema (senhas criptografadas).

– /etc/group – banco de dados com informações de contas de grupos do sistema e suas propriedades.

 

No momento que criamos um usuário no sistema, serão utilizados os seguintes arquivos.

– /etc/login.defs – neste arquivo estão as configurações padrões para o login do usuário. É nele que definimos algumas das opções de segurança, tais como, quantidade mínima de caracteres na senha, tempo de expiração da senha, entre outras.

– /etc/skel/* – o conteúdo deste diretório será copiado para dentro do diretório home do usuário, no momento em que este está sendo criado. Esses são arquivos de configuração do shell do usuário, que têm a finalidade de estipular um padrão de criação de contas de usuários. São exemplos desses arquivos: .bashrc, .bash_profile, .bash_logout, .bash_history, entre outros.

Comandos
** Estes comandons não serão repetidos na página COMANDOS.

#useradd : comando utilizado para criação de contas de usuário no sistema.

Sintaxe: useradd [opções] <username>

Parâmetros do useradd:

-d Definir o diretório home do usuário

-g Definir o grupo primário do usuário

-s Definir o shell que será utilizado pelo usuário

-p Essa opção serve para especificarmos uma senha já criptografada para o usuário.

 

#userdel : comando utilizado para exclusão de contas de usuário no sistema.

Sintaxe: userdel [opções] <username>

Parâmetros do userdel:

-r Apagar também o diretório home do usuário

 

#passwd : comando utilizado para alteração de senha de usuário no sistema.

Sintaxe: passwd [opções] <username>

-d Permite o usuário acessar (logar) o sistema sem senha.

-l Bloqueia/trava a conta do usuário. O usuário não consegue logar.

-u Desbloqueia/destrava a contado usuário (bloqueado pela opção “-l”).

-S Mostra o status da senha do usuário.

 

#usermod:

Sintaxe: usermod [opções] <username>

-d Modifica o caminho do diretório home do usuário.

-g Modifica o grupo do usuário.

-c Modifica o comentário referente ao usuário.

-s Modifica o Shell de comando que o usuário irá utilizar.

-p Substitui a senha já criptografada do usuário.

 

#groupadd : comando utilizado para criação de contas de grupo no sistema.

Sintaxe: groupadd [opções] <groupname>

-f Modo forçado, ou seja, cria o grupo mesmo que já exista no sistema.

 

#groupmod

Sintaxe: groupmod [opções] <groupname>

-g Ao usarmos esta opção, podemos modificar o GID do grupo.

-n Para trocarmos o nome do grupo.

 

#gpasswd : comando utilizado para incluir ou excluir usuários nas contas de grupos. Além disso, o gpasswd é utilizado para administrar os grupos do sistema.

Parâmetros do gpasswd:

-a Adicionar usuário no grupo

-d Excluir usuário do grupo

-R Desabilitar o acesso ao grupo através do comando newgrp

-r Remover a senha de um grupo

-A Definir o administrador do grupo

-M Definir os membros e seus direitos no grupo

 

#newgrp : comando utilizado pelos próprios membros do grupo para inclusão de novos usuários no grupo.

 

#id : comando utilizado para listar informações sobre o usuário, tais como, sei uid, seu gid, grupos que pertence, entre outras.

 

Dicas:

  • Para criar um usuário com senha, porém sem acesso à linha de comando, basta definir a sua Shell padrão para /Bin/false.
  • O comando mkpasswd pode ser usado para gerar senhas fortes, difíceis de serem descobertas.
  • Ao remover o usuário, antes faça um backup dos seus arquivos e guarde por algum tempo, pois podem querem requisitá-los mais tarde.
  • Crie uma partição específica para o /home, para facilitar os procedimentos de backup e migração dos dados dos usuários.
  • Crie um esquema fácil para o usuário poder trocar a própria senha, ou poder criar uma nova. Isso lhe poupará muito tempo.
  • Deixe em um lugar público e de fácil acesso as regras de uso do servidor e seus recursos, para que os usuários saibam o que é e o que não é permitido fazer.
  • Para exibir uma mensagem padrão para usuários no terminal quando logarem via SSH ou Telnet.
    Edite o arquivo profile:
    # vi /etc/profile
    No final do arquivo insira a seguinte linha:
    echo “mensagem”
  • Desabilitar o Ctrl+Alt+Del no Linux.
    Editar o arquivo /etc/ inittab
    # Trap CTRL-ALT-DELETE
    ca::ctrlaltdel:/sbin/shutdown -t3 -r now  ou ca::ctrlaltdel:echo “Você não tem permissão para isso.”
    Comente a linha acima com um “#” no início da linha.
    Após alterar o arquivo executar init q