arquivo do usuário
Propósito
Contém atributos de usuário estendidos.
Descrição
O arquivo " user contém atributos de usuário estendidos. O arquivo " user é um arquivo ASCII que contém estrofes de atributos para os usuários. O comando " mkuser cria uma estrofe nesse arquivo para cada novo usuário e inicializa seus atributos com os atributos padrão definidos no arquivo " /usr/lib/security/mkuser.default.
Cada estrofe no arquivo ' /etc/security/user é identificada por um nome de usuário, seguido por dois pontos (:), e contém atributos no formato ' Attribute=Value. Cada par de valor de atributo é terminado por um caractere de nova linha, e cada estrofe é terminada por um caractere de nova linha adicional. Para obter um exemplo de uma estrofe, consulte a seção Exemplos.
O arquivo suporta uma estrofe padrão. Se um atributo não for definido para um usuário, o valor padrão para o atributo será usado.
Atributos
Se você tiver a autoridade apropriada, poderá configurar os seguintes atributos do usuário:
| Item | Descrição |
|---|---|
| account_locked | Indica se a conta do usuário está bloqueada. Os valores a seguir são os valores possíveis para o campo " account_locked:
|
| admin | Define o status administrativo do usuário. Os valores a seguir são os valores possíveis para o campo " admin:
|
| admgroups | Lista os grupos que o usuário administra. O parâmetro Valor é uma lista separada por vírgula de nomes de grupos. Para obter informações adicionais sobre nomes de grupos, consulte o atributo ' adms do arquivo ' /etc/security/group. |
| auditclasses | Lista as classes de auditoria do usuário. O parâmetro Valor é uma lista de classes separadas por vírgula, ou um valor de ALL para indicar todas as classes de auditoria. |
| auth1 | Lista métodos obrigatórios adicionais para autenticar o usuário. O atributo " auth1 está obsoleto e pode não ser suportado em uma versão futura. O atributo " SYSTEM deve ser usado em seu lugar. O processo de autenticação falhará se algum dos métodos especificados pelo atributo ' auth1 falhar. O parâmetro Value é uma lista separada por vírgulas de pares Method e Name no formato ' Os métodos de autenticação válidos para os atributos " auth1 e " auth2 são definidos no arquivo " /etc/security/login.cfg. |
| auth2 | Lista métodos opcionais adicionais para autenticar o usuário. O atributo " auth2 está obsoleto e pode não ser suportado em uma versão futura. O atributo " SYSTEM deve ser usado em seu lugar. O processo de autenticação não falhará se algum dos métodos especificados pelo atributo " auth2 falhar. O parâmetro Value é uma lista separada por vírgulas de pares Method e Name no formato ' |
| core_compress | Ativa ou desativa a compactação do arquivo principal. Os valores válidos para esse atributo são On e Off. Quando o valor do atributo ' core_compress é On, a compactação do arquivo principal é ativada; caso contrário, a compactação é desativada. O valor padrão é off. |
| core_path | Ativa ou desativa a especificação do caminho do arquivo principal. Os valores válidos para esse atributo são On e Off. Se o valor do campo " core_path for On, os arquivos principais serão colocados no diretório especificado pelo campo " core_pathname. Caso contrário, os arquivos principais são colocados no diretório de trabalho atual do usuário. O valor padrão é Off. |
| core_pathname | Especifica um local a ser usado para colocar arquivos de núcleo, se o atributo ' core_path estiver definido como On. Se o campo ' core_pathname não for definido e o campo ' core_path for definido como On, os arquivos principais serão colocados no diretório de trabalho atual do usuário. Este atributo é limitado a 256 caracteres. |
| core_naming | Seleciona uma opção de estratégias de nomenclatura do arquivo principal. Os valores válidos para este atributo estão On e Off. Um valor de On permite a nomeação do arquivo principal no formato ' core.pid.time, que é o mesmo que a variável de ambiente ' CORE_NAMING faz. Um valor de Off usa o nome padrão de core. |
| daemon | Indica se o usuário especificado pelo parâmetro Name pode executar programas usando o daemon ' cron ou o daemon ' src (controlador de recursos do sistema). Os valores a seguir são os valores possíveis do campo " daemon:
|
| dce_export | Permite que o registro DCE sobrescreva as informações do usuário local com as informações do usuário do DCE durante uma operação de exportação do DCE. Os valores a seguir são os valores possíveis do campo " dce_export:
|
| dictionlist | Define os dicionários de senhas que são usados pelas restrições de composição ao verificar as novas senhas. Os dicionários de senha são uma lista de nomes de caminho absoluto separados por vírgula, avaliados da esquerda para a direita. Todos os arquivos de dicionário e diretórios devem ser protegidos por gravação de todos os usuários, exceto raiz. Os arquivos do dicionário são formatados uma palavra por linha. A palavra começa na primeira coluna e finaliza com um caracter de nova linha. Apenas 7-bit palavras ASCII são suportadas para senhas. Se o processamento de texto estiver instalado em seu sistema, o arquivo de dicionário recomendado é o arquivo ' /usr/share/dict/words. Um nome de usuário pode não ser permitido na senha adicionando uma entrada com a palavra-chave $
USER nos arquivos de dicionário. Essa palavra-chave ' USER não pode fazer parte de nenhuma palavra ou padrão das entradas nos arquivos de dicionário. Uma expressão regular também pode ser despermitida na senha, se mencionada no arquivo do dicionário. Para diferenciar entre uma palavra e um padrão no arquivo do dicionário. Um padrão é indicado com " * como primeiro caractere. Por exemplo, se o administrador quiser proibir qualquer senha que termine com ' 123, ele poderá mencionar a seguinte entrada no arquivo de dicionário:O primeiro " |
| minloweralpha | Define o número mínimo de caracteres alfabéticos minúsculos que devem constar em uma nova senha. O valor é uma sequência de número inteiro decimal. O valor padrão é 1. O intervalo é de 0 a PW_PASSLEN. |
| minupperalpha | Define o número mínimo de caracteres alfabéticos maiúsculos que devem constar em uma nova senha. O valor é uma sequência de número inteiro decimal. O valor padrão é 1. O intervalo é de 0 a PW_PASSLEN. |
| mindigit | Define o número mínimo de digitos que deve estar em uma nova senha. O valor é uma sequência de número inteiro decimal. O valor padrão é 1. O intervalo é de 0 a PW_PASSLEN. |
| minspecialchar | Define o número mínimo de caracteres especiais permitidos em uma nova senha. O valor é uma sequência de número inteiro decimal. O valor padrão é 1. O intervalo é de 0 a PW_PASSLEN. Notas:
|
| efs_adminks_access | Define o local do repositório de chaves " efs_admin. O valor possível é " file.
Observação: esse atributo é válido somente se o sistema estiver habilitado paraEFSEncrypted File System).
|
| efs_allowksmodechangebyuser | Define se o usuário pode alterar o modo ou não. Os valores a seguir são possíveis:
Nota: Este atributo é válido apenas se o sistema for EFS-ativado.
|
| efs_file_algo | Define o algoritmo que é usado para gerar a chave de proteção do arquivo. Os valores a seguir são possíveis:
Nota: Este atributo é válido apenas se o sistema for EFS-ativado.
|
| efs_initialks_mode | Define o modo inicial do armazenamento de chaves do usuário. Os valores a seguir são os possíveis:
Notas:
|
| efs_keystore_access | Define o local do armazenamento de chaves. Os valores a seguir são os possíveis:
Nota: Este atributo é válido apenas se o sistema for EFS-ativado.
|
| efs_keystore_algo | Define-se o algoritmo que é usado para gerar a chave privada do usuário quando o armazenamento de chaves é criado. Os valores a seguir são possíveis:
Notas:
|
| expires | Identifica a data de expiração da conta. O parâmetro Value é uma cadeia de 10 caracteres no formato MMDDhhmmyy, em que MM indica o mês, DD indica o dia, hh indica a hora, mm indica o minuto e yy indica os dois últimos dígitos dos anos de 1939 a 2038. Todos os caracteres são numéricos. Se o parâmetro Valor for 0, a conta não expirará. O valor padrão é 0. Consulte o comando " date para obter mais informações. |
| histexpire | Designa o período (em semanas) em que um usuário não pode reutilizar uma senha. O valor é uma sequência de número inteiro decimal. O valor padrão é 52. |
| histsize | Designa o número de senhas anteriores que um usuário não pode reutilizar. O valor é uma sequência de número inteiro decimal. O valor padrão é 4. |
| login | Indica se o usuário pode fazer login no sistema com o comando " login. Os valores a seguir são os possíveis:
|
| logintimes | Especifica a hora, o dia ou ambos em que o usuário tem permissão para acessar o sistema. O valor é uma lista separada por vírgula de entradas da seguinte forma:
A variável dia deve ser de um dígito entre 0 e 6 que representa um dos dias da semana. Um 0 (zero) indica o domingo e um 6 indica o sábado. A variável de tempo é o horário militar de 24 horas (1700 é 5:00 PM). São necessários zeros à esquerda. Por exemplo, você deve digitar ' A variável de data é uma cadeia de quatro dígitos no formato mmdd, em que mm representa o mês do calendário e dd representa o número do dia. Por exemplo, " As entradas dessa lista especificam os horários em que um usuário tem acesso permitido ou negado ao sistema. As entradas não precedidas por um ' |
| loginretries | Define o número de tentativas de login malsucedidas permitidas após o último login bem-sucedido antes do sistema bloquear a conta. O valor é uma sequência de número inteiro decimal. Um valor zero ou negativo indica que não existe limite. Depois que a conta do usuário for bloqueada, ele não poderá fazer login até que o administrador do sistema redefina o atributo ' unsuccessful_login_count do usuário no arquivo ' /etc/security/lastlog para que seja menor que o valor de ' loginretries. Para redefinir o atributo ' unsuccessful_login_count, digite o seguinte comando:
|
| maxage | Define a duração máxima (em semanas) de uma senha. A senha deve ser alterada nesse tempo. O valor é uma sequência de número inteiro decimal. O valor padrão é 13, indicando uma idade máxima de 13 semanas. |
| maxexpired | Define o tempo máximo (em semanas) além do valor maxage que um usuário pode alterar uma senha expirada. Após esse tempo definido, apenas um usuário administrativo pode alterar a senha. O valor é uma sequência de número inteiro decimal. O valor padrão é 4. Se o atributo maxexpired for 0, a senha expirará quando o valor maxage for atendido. Se o atributo maxage for 0, o atributo maxexpired será ignorado. |
| maxrepeats | Define o número máximo de vezes que um caractere pode ser repetido em uma nova senha. Como um valor 0 não é significativo, o valor padrão 8 indica que não há número máximo. O valor é uma sequência de número inteiro decimal. |
| minage | Define a duração mínima (em semanas) que uma senha deve existir antes de poder ser alterada. O valor é uma sequência de número inteiro decimal. O valor padrão é 4. |
| minalpha | Define o número mínimo de caracteres alfabéticos que devem fazer parte de uma nova senha. O valor é uma sequência de número inteiro decimal. O valor padrão é 2. |
| mindiff | Define o número mínimo de caracteres necessários em uma nova senha que não estavam na senha antiga. O valor é uma sequência de número inteiro decimal. O padrão é um valor 0, indicando que não há número mínimo. |
| minlen | Define o comprimento mínimo de uma senha. O valor é uma sequência de número inteiro decimal. O valor padrão é 10. O valor máximo permitido é o atributo ' PW_PASSLEN. Esse atributo é determinado pela soma do valor dos atributos " minalpha e " minother. Se a soma desses valores for maior que o valor do atributo ' minlen, o comprimento mínimo será definido como o resultado. Observação: O atributo " PW_PASSLEN é definido em " /usr/include/userpw.h. O valor do atributo ' PW_PASSLEN é determinado pelo algoritmo de senha de todo o sistema que é definido em ' /etc/security/login.cfg.
O comprimento mínimo de uma senha é determinado pelo atributo " minlen e nunca deve ser maior que o atributo " PW_PASSLEN. Se a soma dos atributos " minalpha e " minother for maior que o atributo " PW_PASSLEN, o atributo " minother será reduzido à diferença dos atributos " PW_PASSLEN e " minalpha. |
| minother | Define o número mínimo de caracteres não alfabéticos que são permitidos em uma nova senha. O valor é uma sequência de número inteiro decimal. O padrão é um valor 0,
indicando que não há número mínimo. Notas:
|
| projects | Define a lista de projetos aos quais os processos do usuário podem ser atribuídos. O valor é uma lista de nomes de projetos separados por vírgula e é avaliado da esquerda para a direita. O nome do projeto deve ser um nome de projeto válido, conforme definido no sistema. Se um nome de projeto inválido for encontrado na lista, ele será relatado como um erro pelo comando ' user. |
| pwdchecks | Define os métodos de restrição de senha que são aplicados a novas senhas. O valor é uma lista de nomes de método separados por vírgula e é avaliado da esquerda para a direita. Um nome de método é um nome de caminho absoluto ou um nome de caminho relativo a ' /usr/lib de um módulo de carregamento executável. |
| pwdwarntime | Define o número de dias antes do sistema emitir um aviso de que uma mudança de senha é necessária. O valor é uma sequência de número inteiro decimal. Um valor zero ou negativo indica que nenhuma mensagem é emitida. O valor deve ser menor que a diferença dos atributos maxage e minage. Os valores maiores que essa diferença são ignorados, e uma mensagem é emitida quando o valor " minage é atingido. |
| registry | Define o registro de autenticação onde o usuário é administrado. É usado para resolver um usuário administrado remotamente para o domínio administrado localmente. Essa situação pode ocorrer quando os serviços de rede falham inesperadamente ou quando os bancos de dados de rede são replicados localmente. Os valores de exemplo são files ou NIS ou DCE. |
| rlogin | Permite o acesso à conta a partir de um local remoto com os comandos " telnet ou " rlogin. Os valores a seguir são os possíveis:
|
| su | Indica se outro usuário pode mudar para a conta de usuário especificada com o comando " su. Os valores a seguir são os valores possíveis do campo " su:
|
| sugroups | Lista os grupos que podem usar o atributo " su para alternar para a conta de usuário especificada. O parâmetro Value é uma lista separada por vírgulas de nomes de grupos ou um valor de ' ALL para indicar todos os grupos. Um ' ! (ponto de exclamação) na frente do nome de um grupo exclui esse grupo. Se esse atributo não for especificado, todos os grupos poderão alternar para essa conta de usuário com o atributo " su. |
| SYSTEM | Define o mecanismo de autenticação do sistema para o usuário. O valor pode ser uma expressão que descreve quais métodos de autenticação devem ser usados ou pode ser a palavra-chave " O mecanismo " SYSTEM é sempre usado para autenticar o usuário, independentemente do valor dos atributos " auth1 e " auth2. Se o atributo " SYSTEM for definido como " Os nomes dos métodos ' compat, ' files e ' NIS são fornecidos pela biblioteca de segurança. Métodos adicionais podem ser definidos no arquivo ' /usr/lib/security/methods.cfg. Especifique o valor de ' SYSTEM usando a seguinte gramática:
O exemplo a seguir é um exemplo da sintaxe:
|
| tpath | Indica o status do caminho confiável do usuário. Os valores a seguir são os possíveis:
|
| ttys | Lista os terminais que podem acessar a conta especificada pelo parâmetro Name (Nome ). O parâmetro Valor é uma lista separada por vírgula de nomes de caminhos completos, ou um valor de ALL para indicar todos os terminais. Os valores de RSH e REXEC também podem ser usados como nomes de terminais. Um ' ! (ponto de exclamação) na frente do nome de um terminal exclui esse terminal. Se esse atributo não for especificado, todos os terminais podem acessar a conta do usuário. Se o parâmetro Value não for ' ALL, então ' /dev/pts deve ser especificado para que os logins de rede funcionem. |
| umask | Determina as permissões do arquivo. Esse valor, juntamente com as permissões do processo de criação, determina as permissões de um arquivo quando ele é criado. O padrão é 022. |
Alterar o arquivo do usuário
Acesse esse arquivo por meio dos comandos e subrotinas definidos para essa finalidade. Você pode usar os seguintes comandos para alterar o arquivo " user:
- chuser Comando
- lsuser Comando
- mkuser Comando
- rmuser Comando
O comando ' mkuser cria uma entrada para cada novo usuário no arquivo ' /etc/security/user e inicializa seus atributos com os atributos definidos no arquivo ' /usr/lib/security/mkuser.default. Para alterar os valores dos atributos, use o comando ' chuser. Para exibir os atributos e seus valores, use o comando lsuser. Para remover um usuário, use o comando rmuser.
Para escrever programas que afetam os atributos no arquivo ' /etc/security/user, use as sub-rotinas listadas na seção de informações relacionadas.
Segurança
- Controle de acesso
O arquivo " user deve conceder acesso de leitura (r) somente ao usuário root e aos membros do grupo de segurança. O acesso para outros usuários e grupos depende da política de segurança para o sistema. Somente o usuário root deve ter acesso de gravação (w).
Eventos de auditoria
| Evento | Informações |
|---|---|
| S_USER_WRITE | Nome do arquivo |
Exemplos
- Uma estrofe típica se parece com o exemplo a seguir para o usuário "
dhs:dhs: login = true rlogin = false ttys = /dev/console sugroups = security,!staff expires = 0531010090 tpath = on admin = true auth1 = SYSTEM,METH2;dhs - Para permitir que todos os ttys, exceto ' /dev/tty0, acessem a conta de usuário, altere a entrada ttys para que ela seja lida como a entrada a seguir:
ttys = !/dev/tty0,ALL
Arquivos
| Item | Descrição |
|---|---|
| /etc/group | Contém os atributos básicos do grupo. |
| /etc/passwd | Contém os atributos básicos do usuário. |
| /etc/security/audit/config | Contém informações sobre a configuração do sistema de auditoria. |
| /etc/security/environ | Contém os atributos de ambiente dos usuários. |
| /etc/security/group | Contém os atributos estendidos de grupos. |
| /etc/security/limits | Contém os limites de recursos do processo dos usuários. |
| /etc/security/login.cfg | Contém informações de configuração para login e autenticação de usuários. |
| /etc/security/passwd | Contém informações de senha. |
| /usr/lib/security/mkuser.default | Contém configurações de usuário padrão. |
| /etc/security/user | Contém atributos de usuário estendidos. |
| /etc/security/lastlog | Contém últimas informações de login. |