Es ssh abc@servername
diferente de ssh Abc@servername
? ¿Importa el caso del nombre de usuario en Unix?
Mi usuario se autentica a través de LDAP.
Es ssh abc@servername
diferente de ssh Abc@servername
? ¿Importa el caso del nombre de usuario en Unix?
Mi usuario se autentica a través de LDAP.
Respuestas:
Al igual que los nombres de host y los nombres de dominio, el nombre de usuario no es estrictamente un tema de Unix, pero puede abarcar una amplia gama de tipos de sistemas operativos.
Si se considerarán sensibles a mayúsculas y minúsculas depende del estándar utilizado para especificarlas.
Los nombres de host y los nombres de dominio no distinguen entre mayúsculas y minúsculas según el estándar DNS (consulte RFC4343 ).
Los nombres de usuario almacenados en un backend local (/ etc / passwd) o uno de estilo Unix (NIS) no distinguen entre mayúsculas y minúsculas según el estándar POSIX .
Los nombres de usuario almacenados en un servidor LDAP o en un servidor de Active Directory seguirán la definición del esquema de atributo utilizado, uid
y cn
que a menudo almacenan el nombre de usuario tienen atributos de esquema diferentes, sin distinción entre mayúsculas y minúsculas para el primero pero sensibles a mayúsculas y minúsculas para el segundo. Eso significa ambos Abc
y abc
puede coincidir o no con abc
la entrada, dependiendo de la configuración del servidor ldap.
Debido a esta inconsistencia, recomendaría usar solo minúsculas tanto para los nombres de usuario como para el nombre de host / dominio y luego evitar ssh ABC@SERVERNAME.DOMAIN.COM
que sea grosero de todos modos.
Sí, distingue mayúsculas de minúsculas. No puedo aportar información técnica, lo acabo de probar y me pregunto por qué no lo hiciste (?)
mi máquina local es linux mint como puedes 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 intenté conectarme al servidor CentOS de esta manera:
· Uso de un nombre de usuario en mayúscula (incorrecto):
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 del nombre de usuario correcto:
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 ~]#
En el caso de cuentas locales, el nombre de usuario distingue entre mayúsculas y minúsculas. Cuando usa LDAP, depende. He visto casos en los que el nombre de usuario distingue entre mayúsculas y minúsculas (en un dispositivo ZFS conectado a LDAP) y casos en los que no importa, como el cliente LDAP de Solaris conectado a Windows AD.
Lo que debería / podría intentar es ver si su sistema está utilizando LDAP correctamente emitiendo getent passwd <username>
. El uso de este comando debería proporcionarle un registro con el nombre de usuario, el directorio de inicio y el shell del usuario especificado. Si no ve dicho registro, LDAP no está configurado correctamente.
Hay varios lugares donde debe configurar LDAP y uno de los lugares es:
/etc/nsswitch.conf
passwd: files ldap
group: files ldap
También debe verificar si PAM está configurado correctamente y tal vez el paso más importante es verificar si el cliente LDAP está configurado y funcionando. Pruebe una herramienta como ldapsearch
para verificar si se puede consultar LDAP.
Hay varios libros de cocina LDAP disponibles y la mayoría de ellos dependen de la versión Unix y la versión LDAP que esté utilizando. Actualice su pregunta con esos detalles si necesita más ayuda. También incluya su configuración de configuración (sin contraseñas, por supuesto) que puede ayudar a los miembros del foro a analizar su problema particular.
Los nombres de usuario de Unix definitivamente distinguen entre mayúsculas y minúsculas, y lo que es más, el uso de nombres de usuario con caracteres en mayúscula en los sistemas Unix puede producir resultados no deseados, por lo que generalmente se debe evitar.
Algunos ejemplos son:
Puede romper el correo electrónico para el usuario. Los estándares para SMTP permiten que las direcciones de correo electrónico no distingan entre mayúsculas y minúsculas, y de manera predeterminada, el MTA que recibe el mensaje doblará la dirección de correo electrónico a minúsculas para encontrar al usuario a quien entregar. Si el nombre de usuario tiene caracteres en mayúscula, no se resolverá sin anulaciones especiales de configuración para atender esto. (esto afecta a los MTA como sendmail, postfix, etc. y también a los agentes de procesamiento de entrega como procmail)
Muchos de los primeros terminales de hardware no eran sensibles a mayúsculas y minúsculas. Era común que solo usaran mayúsculas. Al iniciar sesión en algunas versiones de Unix, al iniciar un nombre de inicio de sesión con un carácter en mayúscula, el sistema asumirá que está utilizando un terminal antiguo solo en mayúscula y habilitará el plegado de mayúsculas y minúsculas, lo que convierte todas las mayúsculas ingresadas en minúsculas ( luego debe escapar los caracteres en mayúscula para decir que están en mayúscula) para ayudarlo a ingresar su nombre de usuario, que se espera que esté en minúsculas. No creo que esto sea algo en Linux, pero lo he visto demostrado en HP-UX.
Como ha sido durante mucho tiempo la convención de usar solo caracteres en minúscula en los nombres de usuario, es razonable esperar que otras herramientas (algunas que no hayamos pensado) en el sistema también puedan suponer que el nombre de usuario debe estar en minúsculas y hacer comprobaciones, conversiones, etc. en consecuencia, rompiendo cosas para ese usuario.
Los nombres de usuario son definitivamente sensibles a mayúsculas y minúsculas. Puede probar esto fácilmente agregando dos usuarios con nombres similares:
~ # 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 pregunta / respuesta muestra cómo compensar a alguien que intenta iniciar sesión con un nombre de usuario que tiene el caso "incorrecto" de acuerdo con los servidores LDAP. Pero tenga en cuenta que esto solo funcionará si todos los nombres de usuario aparecen en minúscula (o puede ponerlos en mayúscula si lo desea).
cd
no es lo mismo queCD
... La única forma de hacer que realmente signifiquen lo mismo es establecer alias en su.bashrc
archivo ..