gcc-5: внутренняя ошибка компилятора: ошибка шины (программа как)

В большинстве нормальных ситуаций это должно быть нормально (не системные, не странные и т. д.) пользователи:

awk -F'[/:]' '{if ($3 >= 1000 && $3 != 65534) print $1}' /etc/passwd

Это работает:

/etc/passwd, используя : в качестве разделителя, если третье поле (идентификационный номер пользователя) больше 1000, а не 65534, будет напечатано первое поле (имя пользователя пользователя).

Это связано с тем, что во многих Linux-системах имена пользователей более 1000 зарезервированы для непривилегированных (вы можете сказать, обычных) пользователей. Некоторая информация об этом здесь:

Идентификатор пользователя (UID) - это уникальное положительное целое число, назначенное Unix-подобной операционной системой для каждого пользователя. Каждый пользователь идентифицируется системой по его UID, а имена пользователей обычно используются только как интерфейс для людей. UID хранятся вместе с их соответствующими именами пользователей и другой пользовательской информацией в файле / etc / passwd ... Третье поле содержит UID, а четвертое поле содержит идентификатор группы (GID), который по умолчанию равен равный UID для всех обычных пользователей. В ядрах Linux 2.4 и выше UID представляют собой неподписанные 32-битные целые числа, которые могут представлять значения от нуля до 4 294 967 296. Однако для поддержания совместимости с системами с использованием старых ядер или файловых систем, которые могут вмещать только 16-битные UID, рекомендуется использовать значения до 65534. Особую роль играет UID 0: это всегда учетная запись root (т. Е. Всемогущий административный пользователь). Хотя имя пользователя может быть изменено в этой учетной записи, а дополнительные учетные записи могут быть созданы с одинаковым UID, ни одно действие не является разумным с точки зрения безопасности. UID 65534 обычно зарезервирован для никого, пользователь без системных привилегий, в отличие от обычного (то есть, не привилегированного) пользователя. Этот UID часто используется для удаленного доступа пользователей к системе через FTP (протокол передачи файлов) или HTTP (протокол передачи гипертекста). UID с 1 по 99 традиционно зарезервированы для специальных пользователей системы (иногда называемых псевдопользователями), таких как колесо, демон, lp, оператор, новости, почта и т. Д. Эти пользователи - это администраторы, которым не нужны полные полномочия root, но которые выполняют некоторые административные задачи и, следовательно, нуждаются в большем количестве привилегий, чем обычные пользователи. Некоторые дистрибутивы Linux (т.е. версии) запускают UID для не-привилегированных пользователей на уровне 100. Другие, такие как Red Hat, начинают их на 500, а третьи, такие как Debian, начинают их на 1000. Из-за различий между дистрибутивами руководство вмешательство может потребоваться, если в сети в организации используются несколько распределений. Кроме того, может быть удобно зарезервировать блок UID для локальных пользователей, например от 1000 до 9999, и еще один блок для удаленных пользователей (т. Е. Пользователей в другом месте в сети), например от 10000 до 65534. Важно решить по схеме и придерживаться ее. Среди преимуществ этой практики резервирования блоков чисел для конкретных типов пользователей заключается в том, что это делает более удобным поиск в системных журналах для подозрительной активности пользователя. Вопреки распространенному мнению, нет необходимости, чтобы каждая запись в поле UID была уникальной. Однако неуникальные UID могут вызывать проблемы безопасности, и поэтому UID следует сохранять уникальными во всей организации. Аналогично, следует избегать повторного использования UID от бывших пользователей как можно дольше.
1
задан 5 June 2016 в 19:57

0 ответов

Другие вопросы по тегам:

Похожие вопросы: