Czy ssh abc@servername
różni się od ssh Abc@servername
? Czy przypadek nazwy użytkownika ma znaczenie w Uniksie?
Mój użytkownik uwierzytelnia się przez LDAP.
Czy ssh abc@servername
różni się od ssh Abc@servername
? Czy przypadek nazwy użytkownika ma znaczenie w Uniksie?
Mój użytkownik uwierzytelnia się przez LDAP.
Odpowiedzi:
Podobnie jak nazwy hostów i domen, nazwa użytkownika nie jest ściśle uniksowa, ale może i często obejmuje szerszy zakres typów systemów operacyjnych.
To, czy zostaną uwzględnione rozróżnianie wielkości liter, zależy od standardu użytego do ich określenia.
W nazwach hostów i nazw domen standard DNS wyraźnie nie rozróżnia wielkości liter (patrz RFC4343 ).
Nazwy użytkowników przechowywane w lokalnym backendie (/ etc / passwd) lub w stylu uniksowym (NIS) nie uwzględniają wielkości liter w standardzie POSIX .
Nazwy użytkowników przechowywane w serwerze LDAP lub wewnętrznej bazie danych usługi Active Directory będą zgodne z definicją użytego schematu atrybutu, uid
i cn
które często przechowują nazwę użytkownika, mają różne atrybuty schematu, w przypadku tych pierwszych rozróżniana jest wielkość liter, a w przypadku drugiej rozróżniana jest wielkość liter. Oznacza to oba Abc
i abc
może pasować do abc
wpisu lub nie , w zależności od konfiguracji serwera ldap.
Z powodu tej niespójności zalecałbym używanie małych liter zarówno dla nazw użytkowników, jak i nazw hosta / domeny, a następnie unikanie tego, ssh ABC@SERVERNAME.DOMAIN.COM
co jest niegrzeczne.
Tak, wielkość liter ma znaczenie. Nie jestem w stanie dostarczyć informacji technicznych, właśnie to przetestowałem i zastanawiam się, dlaczego nie (?)
moją maszyną lokalną jest Linux, jak widać:
# 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
i próbowałem połączyć się z serwerem CentOS w następujący sposób:
· Używanie (złej) nazwy użytkownika pisanej wielkimi literami:
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:
· Używanie poprawnej nazwy użytkownika:
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 ~]#
W przypadku kont lokalnych w nazwie użytkownika rozróżniana jest wielkość liter. Gdy używasz LDAP, to zależy. Widziałem przypadki, w których nazwa użytkownika rozróżnia małe i wielkie litery (na urządzeniu ZFS podłączonym do LDAP) i przypadki, w których nie ma to znaczenia, jak klient Solaris LDAP podłączony do Windows AD.
To, co powinieneś / możesz spróbować, to sprawdzić, czy Twój system prawidłowo używa LDAP, wydając getent passwd <username>
. Użycie tego polecenia powinno dać ci rekord z nazwą użytkownika, katalogiem domowym i powłoką dla określonego użytkownika. Jeśli nie widzisz takiego rekordu, LDAP nie jest poprawnie skonfigurowany.
Istnieje kilka miejsc, w których należy skonfigurować LDAP, a jednym z nich jest:
/etc/nsswitch.conf
passwd: files ldap
group: files ldap
Musisz także sprawdzić, czy PAM jest poprawnie skonfigurowany i być może najważniejszym krokiem jest sprawdzenie, czy klient LDAP jest skonfigurowany i działa. Wypróbuj narzędzie takie jak ldapsearch
sprawdzenie, czy można zapytać o LDAP.
Dostępnych jest kilka książek kucharskich LDAP, a większość z nich zależy od wersji Unix i używanej wersji LDAP. Zaktualizuj swoje pytanie o te szczegóły, jeśli potrzebujesz dalszej pomocy. Dołącz również konfigurację (oczywiście bez hasła), która może pomóc członkom forum w analizie konkretnego problemu.
W nazwach użytkowników uniksowych zdecydowanie rozróżniana jest wielkość liter, a ponadto używanie nazw z wielkimi literami w systemach uniksowych może dawać niepożądane wyniki, więc ogólnie należy tego unikać.
Oto niektóre przykłady:
Może złamać e-mail dla użytkownika. Standardy SMTP zezwalają na to, aby adresy e-mail nie rozróżniały wielkości liter, a domyślnie MTA odbierający wiadomość składa adres e-mail małymi literami, aby znaleźć użytkownika, do którego ma zostać dostarczony. Jeśli nazwa użytkownika ma wielkie litery, nie zostanie ona rozwiązana bez specjalnych zastąpień konfiguracji, aby to uwzględnić. (wpływa to na MTA, takie jak sendmail, postfix itp., a także agentów przetwarzania dostaw, takich jak procmail)
Wiele wczesnych terminali sprzętowych nie rozróżniało wielkości liter. Często używano tylko wielkich liter. Podczas logowania do niektórych wersji Uniksa rozpoczęcie nazwy logowania od wielkich liter spowoduje, że system przyjmie, że używasz starożytnego terminala składającego się wyłącznie z wielkich liter i umożliwi składanie wielkich liter - co spowoduje konwersję wszystkich wprowadzonych wielkich liter na małe litery ( następnie musisz uciec dużymi literami, aby powiedzieć, że są wielkie), aby pomóc Ci wprowadzić nazwę użytkownika, która według niej będzie pisana małymi literami. Nie sądzę, że jest to coś w Linuksie, ale widziałem to na HP-UX.
Ponieważ od dawna w konwencji używa się tylko małych liter w nazwach użytkowników, uzasadnione jest oczekiwanie, że inne narzędzia (niektóre, o których nie pomyśleliśmy) w systemie, mogą również zakładać, że nazwa użytkownika powinna być pisana małymi literami, a także sprawdzania, konwersji itp. odpowiednio, w ten sposób niszcząc rzeczy dla tego użytkownika.
W nazwach użytkowników zdecydowanie rozróżniana jest wielkość liter. Możesz to łatwo przetestować, dodając dwóch użytkowników o podobnych nazwach:
~ # useradd foobar
~ # useradd fooBar
~ # grep ^foo /etc/passwd
foobar:x:1001:1001::/home/foobar:/bin/sh
fooBar:x:1002:1002::/home/fooBar:/bin/sh
To pytanie / odpowiedź pokazuje, jak zrekompensować osobę próbującą zalogować się przy użyciu nazwy użytkownika, która ma „niewłaściwą” wielkość liter, zgodnie z serwerami LDAP. Pamiętaj jednak, że zadziała to tylko wtedy, gdy nazwy użytkowników będą wymienione małymi literami (lub jeśli chcesz, możesz wpisać je wielkimi literami).
cd
nie jest taki sam jakCD
... Jedynym sposobem, aby uczynić je naprawdę znaczy to samo, aby ustawić aliasy w.bashrc
pliku ..