LINUX.ORG.RU
ФорумTalks

Регистр логинов

 


0

1

Всю жизнь был уверен, что в логинах разрешен только нижний регистр, а тут совершенно случайно узнал, что оказывается кое-где и в верхнем регистре можно. Собственно, почему так и есть ли какие стандарты на сей счет?

Если я не ошибаюсь, в стародавние времена регистри символов при вводе использовался для определения типа терминала. Если введено заглавными, значит терминал умеет только заглавные.

Поэтому было ограничение.

geekless ★★
()
Ответ на: комментарий от sdio

Телепаты подсказывают, что ТС имел ввиду те, которые в /etc/passwd

geekless ★★
()
Ответ на: комментарий от geekless

Ну вот какая фигня выходит:

Debian

#adduser TEST
adduser: Вводите имя пользователя в соответствии с регулярным выражением, заданным
в конфигурационной переменной NAME_REGEX. Используйте
параметр --force-badname, чтобы выключить эту проверку или
настройте NAME_REGEX под свои правила.

Arch:

$ adduser TEST

- User 'TEST' contains illegal characters (uppercase); please choose another
Login name for new user []: ^C

$ useradd TEST
useradd: invalid user name 'TEST'

CentOS:

# useradd TEST
# id TEST
uid=501(TEST) gid=501(TEST) groups=501(TEST)

Что-то мне подсказывает, что такого разброда быть не должно.

kernelpanic ★★★★★
() автор топика
Ответ на: комментарий от kernelpanic

Ъ по ссылкам не ходят, но по ссылкам на ЛОР ходить не зазорно.

Твои ссылки ведут на заигноренную ветку треда. К тому же написать здесь два слова о каком логине идет речь не трудно, но тебе лень, а мне читать по ссылкам должно быть в кайф, да?

sdio ★★★★★
()

Ну в POSIX верхний регистр разрешен, но там и имена из цифр разрешены

Gary ★★★★★
()
Ответ на: комментарий от kernelpanic

$ grep NAME_REGEX /etc/adduser.conf
#NAME_REGEX=«^[a-z][-a-z0-9_]*\$»

Просто проверка, ограничение утилиты, но не системы.

sdio ★★★★★
()
Ответ на: комментарий от sdio

А ты разницу между adduser и useradd тоже не видишь? Или от перемены символов результат не меняется?

Вижу. Не меняется.

CentOS:

# file /usr/sbin/useradd 
/usr/sbin/useradd: ELF 32-bit LSB executable, Intel 80386, version 1 (SYSV), for GNU/Linux 2.6.9, dynamically linked (uses shared libs), stripped
# file /usr/sbin/adduser
/usr/sbin/adduser: symbolic link to `useradd'

Arch:

$ file /usr/sbin/useradd
/usr/sbin/useradd: ELF 64-bit LSB executable, x86-64, version 1 (SYSV), dynamically linked (uses shared libs), for GNU/Linux 2.6.32, BuildID[sha1]=0xdf525d5d044543486bd6f7fd8c58c12e8c47d473, stripped

$ file /usr/sbin/adduser
/usr/sbin/adduser: Bourne-Again shell script, ASCII text executable

kernelpanic ★★★★★
() автор топика
Ответ на: комментарий от kernelpanic

Разные дистрибутивы. Разные политики. Настраиваемые, кстати. Arch немногословен, но и там, наверняка, подкрутить можно.

vahtu
()
Ответ на: комментарий от sdio

Debian, я так понимаю? Судя по всему это конфиг для интерактивной утилиты (shell-скрипт) adduser, которая использует useradd. Вопрос в следующем: почему в одних дистрибутивах uppercase в useradd разрешен, в других запрещен, а в третьих - можно настроить?

kernelpanic ★★★★★
() автор топика
Ответ на: комментарий от kernelpanic

Вопрос в следующем: почему в одних дистрибутивах uppercase в useradd разрешен, в других запрещен, а в третьих - можно настроить?

По желанию дистрибутивостроителей. И там нет запрещения в основе.

sdio ★★★★★
()
Ответ на: комментарий от kernelpanic

почему в одних дистрибутивах uppercase в useradd разрешен, в других запрещен, а в третьих - можно настроить?

именно в усерадд условия одни и те же

xsektorx ★★★
()
Ответ на: комментарий от xsektorx

Попробуй в следующий раз тред до конца читать, а потом уже писать комментарии.

kernelpanic ★★★★★
() автор топика

В моей ooboontoo

use4k ~ $ sudo useradd USER
[sudo] password for use4k: 

use4k ~ $ sudo su user
Unknown id: user

use4k ~ $ sudo su USER

$ whoami
USER

$ 

P.S. Все имена вымышлены, а совпадения случайны

KennyMinigun ★★★★★
()
Ответ на: комментарий от kernelpanic

Судя по всему логин пользователя для adduser искусственно ограничен NAME_REGEX. Интересно каковы реальные ограничения (логины на кириллице и иероглифах можно? :) )

KennyMinigun ★★★★★
()

Кубунтушный установщик не позволяет создавать логин, содержащий заглавные буквы. А вот после установки такого пользователя можно создать.

firestarter ★★★☆
()

Если очень хочется, то можно сделать абсолютно любое имя. PAM же. Только у определённого системного софта может снести крышу от слишком сильных извращений.

x3al ★★★★★
()
Ответ на: комментарий от Xenesz

Хм, локаль по умолчанию и так UTF-8

root ~ # echo $LANG
ru_UA.UTF-8

root ~ # adduser ἱερογλύφος
adduser: Чтобы не было проблем, имя пользователя должно состоять только из
букв, цифр, подчёркиваний, точек, тире, знака @ и не начинаться
с тире (так определено в IEEE Std 1003.1-2001). Для совместимости с Samba
также можно указывать $ в конце имени пользователя

Не прокатило :)

KennyMinigun ★★★★★
()
Ответ на: комментарий от Xenesz

NAME_REGEX=«^[a-z][α-ω][-a-z0-9_]*\$»

оно только для adduser, написано же выше.

KennyMinigun ★★★★★
()
Ответ на: комментарий от Xenesz

Интересно, чем именно обрабатываются эти регэкспы. Потому, что [a-z] — уже повод оторвать руки в юникодной системе. Хотя если логины должны быть в ascii, то сойдёт.

x3al ★★★★★
()
Слака:
╭─cdshines@Vostro3700  ~  
╰─$ sudo useradd USRNM                                                    
useradd: invalid user name 'USRNM'
╭─cdshines@Vostro3700  ~  
╰─$ sudo adduser USRNM                                                    
- User 'USRNM' contains illegal characters (uppercase); please choose another
Login name for new user []: ^C
cdshines ★★★★★
()
Ответ на: комментарий от Xenesz

Прошу прощения, я там на ноль поделил :)

use4k ~ $ sudo useradd ἱερογλύφος
[sudo] password for use4k: 

use4k ~ $ sudo su ἱερογλύφος

$ whoami
ἱερογλύφος

$ 

Таки работает :)

KennyMinigun ★★★★★
()
Вы не можете добавлять комментарии в эту тему. Тема перемещена в архив.