O nome de usuário no Unix é sensível a maiúsculas e minúsculas?

16

ssh abc@servername é diferente de ssh Abc@servername ? O caso do nome de usuário é importante no Unix?

Meu usuário autentica via LDAP.

    
por saga saga 09.10.2015 / 17:40

5 respostas

11

Assim como nomes de host e nomes de domínio, o nome de usuário não é estritamente uma coisa do Unix, mas pode e geralmente abrange uma gama maior de tipos de sistemas operacionais.

Se eles serão considerados sensíveis a maiúsculas e minúsculas, depende do padrão usado para especificá-los.

Nomes de host e nomes de domínio são claramente insensíveis ao padrão DNS (consulte RFC4343 ).

Nomes de usuários armazenados em um back-end local (/ etc / passwd) ou em um estilo Unix (NIS) não fazem distinção entre maiúsculas e minúsculas o padrão POSIX .

Os nomes de usuário armazenados em um LDAP ou em um back-end do Active Directory seguirão a definição de esquema de atributos usada, uid e cn que geralmente armazenam o nome de usuário possuem atributos de esquema diferentes, não diferenciam maiúsculas de minúsculas o primeiro, mas caso sensível para o último. Isso significa que Abc e abc podem corresponder ou não à entrada de abc , dependendo da configuração do servidor ldap.

Devido a essa inconsistência, recomendo usar apenas minúsculas para os nomes de usuário e nome de host / domínio e, em seguida, evitar ssh [email protected] , que é rude mesmo assim.

    
por 09.10.2015 / 21:36
4

Sim, diferencia maiúsculas de minúsculas. Não consigo trazer informações técnicas, apenas testei e me perguntei por que você não (?)

minha máquina local é o linux mint, como você pode ver:

# cat /etc/*release
DISTRIB_ID=LinuxMint
DISTRIB_RELEASE=17.2
DISTRIB_CODENAME=rafaela
DISTRIB_DESCRIPTION="Linux Mint 17.2 Rafaela"
NAME="Ubuntu"
VERSION="14.04.3 LTS, Trusty Tahr"
ID=ubuntu
ID_LIKE=debian
PRETTY_NAME="Ubuntu 14.04.3 LTS"
VERSION_ID="14.04"
HOME_URL="http://www.ubuntu.com/"
SUPPORT_URL="http://help.ubuntu.com/"
BUG_REPORT_URL="http://bugs.launchpad.net/ubuntu/"
cat: /etc/upstream-release: Is a directory

e eu tentei me conectar ao servidor do CentOS assim:

· Usando (errado) Nome de usuário em maiúsculas:

8D prova # ssh Root@agora-server
Root@agora-server's password: 
Permission denied, please try again.
Root@agora-server's password: 
Permission denied, please try again.
Root@agora-server's password: 

· Uso do nome de usuário correto:

8D prova # ssh root@agora-server
root@agora-server's password: 
Last login: Fri Oct  2 01:50:13 2015 from 192.168.0.31
[root@agora-server ~]# 
    
por 09.10.2015 / 17:48
2

No caso de contas locais, o nome de usuário faz distinção entre maiúsculas e minúsculas. Quando você usa o LDAP, isso depende. Já vi casos em que o nome de usuário faz distinção entre maiúsculas e minúsculas (em um dispositivo ZFS conectado ao LDAP) e casos em que não importa como o cliente LDAP do Solaris conectado ao Windows AD.

O que você deve / pode tentar é ver se o seu sistema está usando o LDAP corretamente emitindo getent passwd <username> . Usar este comando deve fornecer um registro com o nome de usuário, diretório inicial e shell para o usuário especificado. Se você não vir esse registro, o LDAP não está configurado corretamente.

Existem vários lugares onde você deve configurar o LDAP e um dos lugares é:

/etc/nsswitch.conf

passwd: files ldap
group:  files ldap

Você também precisa verificar se o PAM está configurado corretamente e, talvez, a etapa mais importante seja verificar se o cliente LDAP está configurado e funcionando. Experimente uma ferramenta como ldapsearch para verificar se o LDAP pode ser consultado.

Existem vários livros de receitas LDAP disponíveis e a maioria deles depende da versão do Unix e da versão do LDAP que você está usando. Atualize sua pergunta com esses detalhes, se precisar de mais ajuda. Inclua também sua configuração (sem as senhas, é claro), que pode ajudar os membros do fórum a analisar seu problema específico.

    
por 09.10.2015 / 20:36
0

Os nomes de usuários são definitivamente diferenciam maiúsculas de minúsculas. Você pode testar isso facilmente adicionando dois usuários com nomes semelhantes:

~ # useradd foobar
~ # useradd fooBar
~ # grep ^foo /etc/passwd
foobar:x:1001:1001::/home/foobar:/bin/sh
fooBar:x:1002:1002::/home/fooBar:/bin/sh

Esta pergunta / resposta mostra como compensar alguém tentando registrar com o nome de usuário que tem o caso "errado" de acordo com os servidores LDAP. Mas observe que isso só funcionará se os nomes de usuários estiverem todos em letras minúsculas (ou você pode torná-los todos em maiúsculas, se quiser).

    
por 10.10.2015 / 01:58
0

Os nomes de usuário Unix são, definitivamente, sensíveis a maiúsculas e minúsculas, e o uso de nomes de usuário com caracteres maiúsculos em sistemas Unix pode produzir resultados indesejados, portanto geralmente deve ser evitado.

Alguns exemplos são:

Ele pode interromper o e-mail do usuário. Os padrões para SMTP permitem que os endereços de e-mail sejam insensíveis a maiúsculas e minúsculas e, por padrão, o MTA que recebe a mensagem irá dobrar o endereço de e-mail para minúsculas para encontrar o usuário para entrega. Se o nome de usuário tiver caracteres maiúsculos, ele não será resolvido sem substituições de configuração especiais para atender a isso. (isso afeta MTAs como sendmail, postfix etc e também agentes de processamento de entrega como o procmail)

Muitos terminais de hardware iniciais não faz distinção entre maiúsculas e minúsculas. Era comum que eles usassem apenas letras maiúsculas. Ao fazer login em algumas versões do Unix, iniciar um nome de login com um caractere maiúsculo acionará o sistema para assumir que você está usando um antigo terminal de letras maiúsculas e habilitará a dobra de maiúsculas e minúsculas - que converte todas as maiúsculas digitadas em minúsculas ( você então tem que escapar de caracteres maiúsculos para dizer que eles estão em letras maiúsculas) para ajudá-lo a digitar seu nome de usuário, que ele espera que esteja em letras minúsculas. Eu não acredito que isso seja uma coisa no Linux, mas eu já vi isso demonstrado no HP-UX.

Como há muito tempo a convenção usa apenas caracteres minúsculos em nomes de usuário, é razoável esperar que outras ferramentas (algumas que talvez não tenhamos imaginado) no sistema também possam assumir que o nome de usuário deve ser minúsculo e fazer verificações. , conversões etc, de acordo, quebrando as coisas para esse usuário.

    
por 20.06.2018 / 09:57