Latest web development tutorials

Usuário de Linux e gerenciamento de grupo de usuários

sistema Linux é um sistema operacional multi-usuário multi-tarefa time-sharing, um usuário para usar quaisquer recursos do sistema, o administrador do sistema deve primeiro solicitar uma conta, então a identidade da conta no sistema.

A conta do usuário por um lado pode ajudar os administradores do sistema para os usuários que utilizam o sistema para rastrear e controlar o seu acesso aos recursos do sistema, por outro lado, também pode ajudar os usuários a organizar arquivos e fornecer aos usuários com proteção de segurança.

Cada conta de utilizador tem um nome de usuário e senha exclusivos para cada um.

Os usuários digitam o nome de usuário e senha corretos no início da sessão, você pode entrar no sistema e seu próprio diretório home.

Implementar o gerenciamento de conta de usuário, trabalho a ser feito, principalmente, nos seguintes aspectos:

  • conta de usuário para adicionar, excluir e modificar.
  • gerenciamento de senhas do usuário.
  • gestão de grupo de usuários.

Um sistema Linux de gerenciamento de conta de usuário

gerenciamento de contas de usuário relacionadas, principalmente, à conta de usuário para adicionar, modificar e apagar.

Adicionando contas de usuário é criar uma nova conta no sistema, e depois atribuir usuários para um novo número de conta, grupo de usuários, o diretório home e login Shell e outros recursos. Basta adicionar a conta está bloqueada e inutilizável.

1. Adicionar uma nova conta de usuário usando o comando useradd, sua sintaxe é a seguinte:

useradd 选项 用户名

Parâmetro Descrição:

  • opções:

    • comentário -c Especifica um comentário descrição.
    • -d diretório Especifica o diretório home do usuário, se este diretório não existir, você pode usar a opção -m, você pode criar um diretório home.
    • grupo -g dos usuários especificar o grupo de usuários que pertencem.
    • -G Grupo de usuários, grupos de usuários, especifique grupo adicional o usuário pertence.
    • arquivo -s Shell especifica o login de um usuário Shell.
    • -u usuário especifica o número de utilizador número de usuário, se a opção -o, ao mesmo tempo, você pode voltar a usar outro número de identificação do usuário.
  • Nome de usuário:

    Especifique o novo nome da conta de login.

exemplo 1

# useradd –d /usr/sam -m sam

Este comando cria um usuário sam, em opção -d e -m é usado para gerar um nome de login sam diretório / usr / sam (/ usr para o diretório home do usuário padrão é o diretório pai).

exemplo 2

# useradd -s /bin/sh -g group –G adm,root gem

Este comando cria um usuário-gem, o login do usuário Shell é /bin/sh , ele pertence ao grupo de usuários grupo, mas também pertencem a grupos de raiz e de usuário adm, grupo de usuários que grupo é o grupo principal.

Pode haver um novo grupo: #groupadd group及groupadd adm

Aumentar a conta de usuário que está no arquivo / etc / passwd para adicionar um novo registro de usuário, atualizar outros arquivos do sistema, como / etc / shadow, / etc / group e similares.

Linux fornece sistemas integrados ferramentas de gestão userconf, que pode ser usado para o gerenciamento unificado de contas de usuário.

3, excluir a conta

Se uma conta de utilizador já não é utilizado, pode ser removido do sistema. Para excluir uma conta de usuário é / etc / passwd arquivos de sistema e outros para excluir o registro de usuário, se necessário, remover o diretório home do usuário.

Excluir uma conta de usuário existente usando o userdel comando, seu formato é o seguinte:

userdel 选项 用户名

opção comum é -r, o seu papel é remover o diretório home do usuário em conjunto.

Por exemplo:

# userdel sam

Este comando remove o usuário sam em um arquivo de sistema (maior / etc / passwd, / etc / shadow, / etc / group, etc.) gravar, apagar o diretório home do usuário.

4. Conta Modificar

Modificar conta de usuário está prestes a mudar os atributos de um usuário com base na situação real, como o número de usuários, diretórios pessoais, grupos de usuários, faça o login Shell e similares.

Modificar uma informação de usuário existente usando o usermod comando, seu formato é o seguinte:

usermod 选项 用户名

As opções comuns incluem -c, -d, -m, -g, -G, -s, -u以及-o等 -G, -s, -u useradd -c, -d, -m, -g, -G, -s, -u以及-o等 , ou seja, essas opções com useradd opção de comando, você pode especificar um novo valor para os usuários de recursos.

Além disso, alguns sistemas pode usar as opções: -l novo nome de usuário

Esta opção especifica uma nova conta, terá o nome de usuário original para o novo nome de usuário.

Por exemplo:

# usermod -s /bin/ksh -d /home/z –g developer sam

Este comando define o login do usuário Shell sam modificar ksh, diretório home para / home / z, o grupo de usuários para o desenvolvedor.

5, o gerenciamento de senhas de usuário

Uma parte importante da gestão de utilizadores é um gerenciamento de senhas do usuário. Não apenas para criar uma senha de conta de usuário, mas o sistema está bloqueado, você não pode usar, você deve atribuir uma senha antes que você pode usar até especificar uma senha nula.

Especificar e modificar as senhas de usuário de comando Shell é passwd . O superusuário pode especificar uma senha para si e para outros usuários, os usuários comuns só pode usá-lo para modificar sua própria senha. Formato do comando é:

passwd 选项 用户名

uso opcional:

  • -Eu Bloquear senha, que desativa a conta.
  • desbloqueio de senha -u.
  • -d ativar a conta sem uma senha.
  • Forçar usuários -f para alterar senhas no próximo logon.

Se o nome de usuário padrão, em seguida, modificar a senha do usuário atual.

Por exemplo, suponha que o usuário atual é sam, em seguida, o seguinte comando para alterar a senha do usuário:

$ passwd 
Old password:****** 
New password:******* 
Re-enter new password:*******

Se o super usuário, você pode especificar a senha de qualquer usuário usando o seguinte formato:

# passwd sam 
New password:******* 
Re-enter new password:*******

Os usuários comuns para mudar suas senhas quando, comando passwd irá verificar a senha original, em seguida, verifique que requer que os usuários insiram uma nova senha duas vezes, digite a senha duas vezes se consistente, em seguida, especificar a senha para o usuário, e a senha de superusuário para o usuário especificado quando você não precisa saber a senha original.

Para a segurança do sistema, você deve escolher senhas mais complexas, por exemplo, é preferível usar uma senha de 8-bit, a senha contém letras e números maiúsculas e minúsculas, e deve nome, aniversário, etc. não são os mesmos.

Quando você especificar uma senha em branco para um usuário, execute o seguinte comando no formulário:

# passwd -d sam

Este comando irá apagar a senha do usuário do sam, de modo que o usuário sam próxima vez que fizer login, o sistema não irá pedir uma senha.

comando passwd também pode bloquear com -l (bloqueio) uma opção de usuário, você não pode entrar, tais como:

# passwd -l sam

Em segundo lugar, o grupo de usuários do sistema de gestão Linux

Cada usuário tem um grupo de usuários, um usuário do grupo de sistemas lata todos os utilizadores da gestão centralizada. sistemas Linux diferentes têm diferentes grupos de utilizadores das disposições, tais como o usuário Linux é o grupo de usuários com seu homônimo, o grupo de usuário é criado ao mesmo tempo em que a criação do usuário.

grupo de usuários de Gestão envolve a adição do grupo de usuários, excluir e modificar. Aumento no grupo, na verdade, é para excluir e modificar as atualizações / etc / arquivo de grupo.

1, adicione um comando de novos grupos de usuários groupadd. O seu formato é o seguinte:

groupadd 选项 用户组

As opções podem ser utilizados são os seguintes:

  • -g GID Especifica o novo ID de grupo de grupo de usuários (GID).
  • -o -g opção é geralmente usado em simultâneo, indicando GID de grupo com o novo sistema de GID tem o mesmo grupo de utilizadores.

Exemplo 1:

# groupadd group1

Este comando adiciona ao sistema um novo grupo1, grupo do novo grupo ID é adicionado à base do grupo máximo número de identificação actualmente disponíveis 1.

Exemplo 2:

# groupadd -g 101 group2

Este comando de adicionar ao sistema um novo group2 grupo, enquanto que a especificação de um novo grupo de número de identificação de grupo é 101.

2, se você quiser excluir um grupo de usuários existente, use o comando groupdel no seguinte formato:

groupdel 用户组

Por exemplo:

# groupdel group1

Este comando para remover o grupo do grupo1 sistema.

3, modificar as propriedades de um comando de grupo de usuários uso groupmod. Sua sintaxe é a seguinte:

groupmod 选项 用户组

opções comumente utilizados são:

  • -g GID Especifica o novo ID de grupo para o grupo de usuários.
  • -o opção -g e usar o novo grupo de usuários do sistema GID com os mesmos grupos de usuários existentes GID.
  • grupo de usuários novo -n será alterado para o novo nome do nome do grupo de usuários

Exemplo 1:

# groupmod -g 102 group2

Este número de identificação do grupo group2 grupo de comando alterado para 102.

Exemplo 2:

# groupmod –g 10000 -n group3 group2

Este grupo de comando número de identificação group2 a 10.000, eo nome do grupo alterado para group3.

4, se um usuário pertence a mais de um grupo de usuários, o usuário pode alternar entre grupos de usuários, a fim de ter direitos de outros grupos de usuários.

Os usuários podem fazer logon, use o newgrp comando para mudar para os outros grupos de utilizadores, o parâmetro de ordem é o objeto do grupo de usuários. Por exemplo:

$ newgrp root

Este comando irá mudar para a raiz dos grupos de usuários atuais, com a condição de que o grupo de usuário root é de fato o grupo primário do usuário, ou um grupo adicional. Semelhante às ferramentas de gestão de sistemas de gestão de conta de usuário, gerenciamento de grupo de usuários também podem ser integrados.


, a conta de usuário arquivos relacionados terceiro sistema

obra completa de gerenciamento de usuário Há muitas maneiras, mas cada método são de fato relacionadas com os arquivos de sistema a ser modificado.

E de usuário e informações de grupo relacionadas são armazenadas em alguns arquivos de sistema, esses arquivos incluem / etc / passwd, / etc / shadow, / etc / group e similares.

A seguir descreve o conteúdo desses arquivos.

1, o arquivo / etc / passwd é o usuário mais importante de uma gestão de documentos envolvidos.

sistema Linux, cada usuário tem um linhas correspondentes no arquivo / etc / passwd, que registra os atributos básicos dos usuários.

Este arquivo é legível para todos os usuários. É semelhante ao exemplo seguinte:

# cat /etc/passwd

root:x:0:0:Superuser:/:
daemon:x:1:1:System daemons:/etc:
bin:x:2:2:Owner of system commands:/bin:
sys:x:3:3:Owner of system files:/usr/sys:
adm:x:4:4:System accounting:/usr/adm:
uucp:x:5:5:UUCP administrator:/usr/lib/uucp:
auth:x:7:21:Authentication administrator:/tcb/files/auth:
cron:x:9:16:Cron daemon:/usr/spool/cron:
listen:x:37:4:Network daemon:/usr/net/nls:
lp:x:71:18:Printer administrator:/usr/spool/lp:
sam:x:200:50:Sam san:/usr/sam:/bin/sh

A partir do exemplo acima, podemos ver, / etc / passwd em uma linha corresponde a um usuário, cada linha foi gravada por dois pontos (:) separados em sete campos, formato e significados específicos são os seguintes:

用户名:口令:用户标识号:组标识号:注释性描述:主目录:登录Shell

1) "Nome de Usuário" é uma cadeia que representa a conta de usuário.

Normalmente, não mais de oito caracteres, e as letras e / ou números de maiúsculas e minúsculas. nome de login não pode conter dois pontos (:), porque aqui é os delimitadores do cólon.

Por razões de compatibilidade, o nome de login não deve conter um caractere de ponto, e não usa um hífen (.) (-) E mais (+) é iniciado.

2) "Password" alguns sistemas, o armazenamento de senhas de usuários criptografadas.

Embora esse campo é armazenado na seqüência de senha criptografada, que não sejam expressamente, mas devido ao arquivo / etc / passwd para todos os usuários de ler, de modo que este ainda é um risco de segurança. Portanto, agora muitos sistemas Linux (como SVR4) ambos usam a técnica de sombra, as senhas do usuário realmente criptografada armazenada no arquivo / etc / sombra, e no campo de senha de arquivo / etc / passwd detém apenas um especial caracteres, tais como "X" ou "*."

3) "User ID" é um número inteiro dentro do sistema para usá-lo para identificar o usuário.

Em circunstâncias normais, é de um para um com o nome de usuário. Se vários nome de usuário correspondente ao número de identificação do usuário é o mesmo que o sistema interno irá tratá-los como o mesmo usuário, mas eles podem ter senhas diferentes, diferentes diretórios e login diferente Shell e afins.

número de identificação do usuário é geralmente na faixa de 0-65 535,0 número de identificação superusuário root, de 1 a 99 são reservados pelo sistema, como gerenciamento de conta, número de identificação de usuário comum a partir de 100 partidas. Em sistemas Linux, este limite é de 500.

4) campo "Grupo ID" do registro é um grupo de usuários que o usuário pertence.

Corresponde à / registro de arquivo / etc grupo.

5) "comentários descrição" campo registra situação pessoal do usuário.

Por exemplo o nome do usuário real, telefone, endereço, etc., neste campo e não há nenhum uso prático. No sistema Linux diferente, o formato deste campo não é unificada. Em muitos sistemas Linux, este campo é armazenado na seção de comentários de qualquer texto de descrição, é usado como comando finger saída.

6) "menu principal", que é a pasta de trabalho inicial do usuário.

É o diretório onde o usuário após o login no sistema. Na maioria dos sistemas, o diretório pessoal de cada usuário são organizados sob um diretório específico, eo nome do diretório home do usuário é o nome de login do usuário. Cada usuário tem seu próprio diretório home ler, escrever, executar (search) permissão para acessar diretórios de outros usuários são definidas em função das circunstâncias.

7) Depois que o usuário fizer logon, para iniciar um processo, o usuário é responsável pela operação passado para o kernel, o processo é executado após o usuário fizer logon para o interpretador de comandos do sistema ou um determinado programa, nomeadamente a Shell.

Shell é a interface entre os sistemas Linux de usuário e. Há muitos Linux-Shell, cada um com características diferentes. sh comumente usado (Bourne Shell), csh (C Shell), ksh (Korn Shell), tcsh (TENEX / TOPS-20 Tipo C Shell), bash (Bourne Again Shell) e similares.

O administrador do sistema pode especificar um Shell para o usuário com base nos hábitos do sistema e do usuário. Se você não especificar um Shell, em seguida, o sistema utiliza sh como o login padrão Shell, isto é, o campo é / bin / sh.

Login do usuário Shell também pode ser especificado para um determinado programa (este programa não é um interpretador de comandos).

Usando esse recurso, podemos restringir os usuários a executar aplicações específicas, após a execução do aplicativo, os usuários automaticamente sairá do sistema. Alguns sistemas Linux requerem apenas aqueles registrados no programa do sistema para aparecer neste campo.

8) O sistema tem uma classe de usuários chamados pseudo-usuário (ou usuários pseudo).

O usuário também tem a / etc / passwd arquivar um registro, mas não pode entrar porque o seu login do Shell está vazio. Elas existem principalmente para facilitar os processos de gestão do sistema, do sistema para satisfazer os requisitos pertinentes do proprietário do arquivo.

pseudo-utilizador comum é a seguinte:

伪 用 户 含 义 
bin 拥有可执行的用户命令文件 
sys 拥有系统文件 
adm 拥有帐户文件 
uucp UUCP使用 
lp lp或lpd子系统使用 
nobody NFS使用

Tem um arquivo de conta

1, exceto que pseudo-usuário listado acima, existem muitos pseudo-usuários padrão, tais como: auditoria, cron, mail, Usenet, etc., eles também são relevantes para os respectivos processos e requisitos de documentação.

Uma vez que o arquivo / etc / passwd é legível para todos os usuários, se a senha do usuário é muito simples ou palavras óbvias da lei, um computador comum pode facilmente quebrá-lo, pelo que os requisitos de segurança do sistema Linux mais elevado senhas criptografadas conceituados separados, armazenados em um arquivo separado, este arquivo é arquivo / etc / shadow. Não tem privilégios de superusuário para ler esse arquivo, o que garante a segurança da senha do usuário.

2, / etc / shadow em filas e etc / passwd na correspondência /, é gerado automaticamente pelo dados de comando pwconv / etc / passwd, de acordo com

Seu formato de arquivo e / etc / passwd semelhante, composta de vários campos, entre os campos com ":" separados. Estes campos são:

登录名:加密口令:最后一次修改时间:最小时间间隔:最大时间间隔:警告时间:不活动时间:失效时间:标志
  1. "Login" é consistente com o arquivo / etc / passwd, conta de usuário nome de login
  2. campo "Password" é armazenado em senhas de usuários criptografadas, um comprimento de 13 caracteres. Se estiver vazio, o usuário correspondente sem senha, nenhuma senha de login, se você não pertence ao conjunto contendo {./0-9A-Za-z} caracteres, o usuário correspondente não pode fazer logon.
  3. "Modificada" que é a partir de um certo tempo, para o utilizador modificar o número de dias a senha última vez. Hora de início para sistemas diferentes podem ser diferentes. Por exemplo, em SCO Linux, o tempo para começar é 01 de janeiro de 1970.
  4. "Intervalo mínimo" refere-se ao número mínimo de dias necessários entre os dois modificar a palavra-passe.
  5. "Intervalo de tempo máximo" refere-se a senha é válida o número máximo de dias.
  6. "Warning Time" campo indica o número de dias a partir do sistema começou a alertar os usuários para uma senha formal entre falhas.
  7. "Tempo inactivo" significa é que o usuário não está conectado, mas a atividade da conta permanece ativa número máximo de dias.
  8. campo "tempo morto" é um determinado número de dias absolutos, se você usar este campo, então ele dá a vida útil das contas correspondentes. Após o término da conta não é uma conta legítima, não pode ser usado para acessar.

Aqui está um exemplo / etc / shadow of:

# cat /etc/shadow

root:Dnakfw28zf38w:8764:0:168:7:::
daemon:*::0:0::::
bin:*::0:0::::
sys:*::0:0::::
adm:*::0:0::::
uucp:*::0:0::::
nuucp:*::0:0::::
auth:*::0:0::::
cron:*::0:0::::
listen:*::0:0::::
lp:*::0:0::::
sam:EkdiSECLWPdSa:9740:0:0::::

3, todas as informações são armazenadas no grupo de utilizadores / etc / grupo.

O grupo de utilizadores é um sistema Linux meios para gerenciar usuários e controlar o acesso.

Cada usuário pertence a um grupo de usuários, um grupo pode ter vários usuários, um usuário pode pertencer a diferentes grupos.

Quando um usuário é membro de mais de um grupo, o registro no arquivo / etc / passwd é o grupo primário que o usuário pertence, que é o padrão quando você faz logon para o seu grupo, enquanto o outro grupo é chamado um grupo adicional.

Quando o usuário quer acessar um arquivo que pertencem a grupos adicionais, você deve primeiro usar o comando newgrp para tornar-se para ser acessado por membros do grupo.

Todas as informações são armazenadas no arquivo / etc grupo de usuário / grupo. O formato deste arquivo também é semelhante ao arquivo / etc / passwd, por dois pontos (:) separados por um número de campos, que são:

组名:口令:组标识号:组内用户列表
  1. "Nome do grupo" é o nome do grupo, composto por letras ou números. E / etc / passwd nomes de login, nomes de grupo não deve ser repetido.
  2. campo "Password" é armazenada nas senhas de grupos de usuários criptografadas. grupos de usuários do sistema Linux geralmente não têm uma senha, que este campo é geralmente vazia, ou *.
  3. "Grupo ID" com o número de identificação de usuário similar, é um número inteiro, os sistemas internos utilizados para identificar grupos.
  4. "Os usuários na lista de grupos" faz parte de uma lista de todos os usuários / b] este grupo, separados entre os diferentes utilizadores com uma vírgula (,). Este grupo de usuários pode ser o grupo primário do usuário, ele pode ser um grupo adicional.

/ Um exemplo de ficheiro etc / grupo é como se segue:

root::0:root
bin::2:root,bin
sys::3:root,uucp
adm::4:root,adm
daemon::5:root,daemon
lp::7:root,lp
users::20:root,sam

Em quarto lugar, a quantidade de usuários de subvenção

Adicionar e excluir usuários em todos os administradores de sistemas Linux são fáceis, mais difícil é se você quiser adicionar dezenas, centenas ou mesmo milhares de usuários, é improvável que também usam useradd adicionar um por um, necessariamente procurando por uma maneira de criar um grande número de usuários do método é simples. sistema Linux fornece um grande número de usuários para criar uma ferramenta que permite criar um grande número de usuários imediatamente, como segue:

(1) para editar um usuário arquivo de texto.

Cada coluna de acordo com /etc/passwd escrita no formato do arquivo de senhas, preste atenção ao nome do usuário de cada usuário, UID, não pode hospedar o mesmo diretório, que pode deixar o campo de senha em branco ou digite o número x. User.txt um arquivo de exemplo tem o seguinte teor:

user001::600:100:user:/home/user001:/bin/bash
user002::601:100:user:/home/user002:/bin/bash
user003::602:100:user:/home/user003:/bin/bash
user004::603:100:user:/home/user004:/bin/bash
user005::604:100:user:/home/user005:/bin/bash
user006::605:100:user:/home/user006:/bin/bash

(2) Como root, execute o comando /usr/sbin/newusers , a partir de um arquivo de usuário que você acabou de criar user.txt dados de importação, crie um usuário:

# newusers < user.txt

Você pode então executar o comando vipw ou vi /etc/passwd para verificar /etc/passwd arquivo tem sido o surgimento dos dados desses usuários, e o diretório home do usuário foi criado.

(3) Executar / usr / sbin / pwunconv.

O /etc/shadow gerado shadow senha decodificado e, em seguida, escrito de volta para o /etc/passwd , eo /etc/shadow da shadow campo de senha excluído. Isto é para facilitar o passo seguinte do trabalho de transformação criptográfica, que é para cancelar a shadow password característica.

# pwunconv

(4) para editar arquivo de controle de senha de cada usuário.

Arquivos de exemplo passwd.txt tem o seguinte teor:

user001:密码
user002:密码
user003:密码
user004:密码
user005:密码
user006:密码

(5) Execute como root /usr/sbin/chpasswd .

Criar uma senha de usuário, chpasswd vai passar por /usr/bin/passwd senhas comando codificado escritas /etc/passwd campo de senha.

# chpasswd < passwd.txt

(6) para determinar a senha codificada / campo de senha de gravação etc / passwd mais tarde.

Executar /usr/sbin/pwconv senha codificada como shadow password , eo resultado é escrito em /etc/shadow .

# pwconv

Isso conclui a criação de um grande número de usuários, após o qual você pode ir para verificar as permissões no diretório home do usuário sob o / configurações de casa estão corretas se, e verificar se a senha de login do usuário está correto.