По вашему запросу ничего не найдено :(
Убедитесь, что запрос написан правильно, или посмотрите другие
наши статьи:
В этой статье рассмотрим, как управлять учетными записями пользователей и групп в Linux. Также посмотрим различные базы данных, в которых хранится информация о пользователях и группах и что такое теневые пароли.
Изначально в Linux было 2 файла /etc/password и /etc/group. В первом файле хранилось:
Имя_пользователя : пароль : uid : gid : сведения (поле предназначено для персональных данных) : домашняя_папка : командная оболочк(которая запускается при входе пользователя в систему)
Во втором файле хранилось:
имя_группы : пароль : gid : члены_группы
У группы может быть пароль, но данную функцию очень редко, кто использует, в таком случае пароль будет запрашиваться при смене членства в группе. Данные файлы плохи тем, что у всех пользователей системы, по умолчанию, есть права на чтение. Такие права необходимы потому, что разные пользователи, разные демоны и сервисы обращаются к данным файлам, чтобы брать оттуда информацию. Соответственно в этих файлах хранился пароль пользователя, хотя и в зашифрованном виде, но с помощью различных методов криптографии подбора можно было воспользоваться данным паролем, потому что у всех пользователей был на эти файлы доступ.
Поэтому был создан механизм теневых паролей. Были созданы вот такие 2 файла: /etc/shadow и /etc/gshadow. И к этим двум файлам имеет полный доступ только пользователь root. Следовательно, теперь в файлах passwd и group указываются не пароли, а специальные символы, говорящие что пароли были перенесены в файлы shadow и gshadow.
В новом файле shadow хранится побольше информации о пароле пользователя. Это:
Логин
Пароль
Время после смены пароля – это если пароль сбрасывался после времени установки системы
Минимальный срок действия пароля - как часто можно менять пароль, если, например, стоит 5 дней, то пароль можно менять не чаще, чем раз в 5 дней.
Максимальный срок действия пароля – максимальное количество дней, по прошествии которых обязательно необходимо сменить пароль.
Срок предупреждения – за сколько дней до истечения пароля система предупредит о том, что необходимо сменить пароль.
Время работы с истекшим паролем – это параметр позволяет указанное число дней работать с истекшим паролем.
Срок для блокировки пароля – данный параметр отвечает за время жизни самого пароля, например, пароль будет работать 100 дней, после этого заблокируется.
Соответственно данные параметры можно при необходимости задавать при создании учетной записи пользователя и паролей. Если провести аналогию с операционной системой Windows, то подобные параметры в Windows мы можем задавать через GPO (Group Policy Object - набор правил или настроек, в соответствии с которыми производится настройка рабочей среды в операционных системах Windows). Отличие заключается в том, что в Windows эти параметры выставляются в абсолютных величинах числом, а в операционной системе Linux, относительно даты 1 января 1970 года.
Ну и соответственно gshadow имеет следующую структуру, разделенную символом :.
Имя группы
Пароль зашифрованный
Администраторы, те учетные записи, которые могут менять пароль группы или добавлять другие аккаунты
Члены групп
Следовательно, пароли могут хранится и в тех, и в тех файлах, отличие в том, что у пользователей есть доступ на чтение к файлам passwd и group, а к shadow и gshadow только у пользователя root. Данный механизм называется механизмом теневых паролей, и он присутствует во всех современных Linux системах.
Теперь, посмотрим, как это выглядит в операционной системе.
Заходим в файл passwd любым текстовым редактором, например, nano, без повышения привилегий.
Возьмем пользователя:
list:x:38:38:Mailing List Manager:/var/list:/usr/sbin/nologin
Логин - list, значок X говорит о том, что пароль хранится в теневом файле. Далее 38 – id пользователя, 38 - gid, прочая информация - Mailing List Manager, домашняя папка пользователя - /var/list и оболочка которая используется при входе - /usr/sbin/nologin.
Можно увидеть, что вместо оболочки у пользователя указан nologin – это означает, что пользователь не может войти, используя стандартный экран входа, используя стандартные средства. На картинке можно найти пользователя siadmin. Можно также увидеть все остальные параметры этого пользователя. У него совпадает uid и gid, это связанно с тем , что при создании пользователя создается одноименная группа. Можно, конечно, при создании указать, что пользователь будет входить в другую группу и не создавать одноименную, но по умолчанию она создается. В конце строчки мы можем увидеть /bin/bash, которая запускается при входе в систему. Можно обратить внимания на uid и gid все реальные пользователи их имеют числом выше 1000. Все пользователи, у которых число ниже – это служебные пользователи или созданные автоматически. В некоторых дистрибутивах Linux нумерация реальных пользователей начинается с 500.
Посмотрим файл с группами, вводим команду nano /etc/group
Данная база очень простая. Указано наименование группы, знак X говорит, о том, что пароль хранится в теневой базе, идентификатор группы и список пользователей в данной группе. Единственный нюанс - если пользователь входит в свою же группу, то после знака двоеточие пользователь не отображается.
Далее файлы /etc/shadow и /etc/gshadow, данные файлы не редактируются с помощью текстовых редакторов, а через специальные команды. Данные файлы — это просто хранилище информации. Эти утилиты будут рассмотрены в следующем уроке.
Зайти в эти файлы могут только пользователи имеющие права root или с помощью команды повышающей привилегии sudo.
sudo nano /etc/shadow
Теперь мы видим в данном файле через двоеточие:
Имя пользователя
* или зашифрованный пароль
Срок с последнего изменения пароля в днях
Минимальный срок изменения пароля, если 0, то сменить пароль можно сразу
99999 - срок действия пароля, 7 - количество дней за которое до истечения пароля придет предупреждение
Символ * говорит о том, что под данным пользователем нельзя зайти стандартным способом, обычно это применяется для служебных аккаунтов, т.е вход вообще заблокирован под данным аккаунтом.
Вот так вот реализуется механизм теневых паролей.
Частый сценарий: новый сервер, на котором проводятся отладочные работы и требуется быстро подключиться по SSH. Обычно, сначала необходимо авторизоваться под админом, и только затем переключиться на root пользователя. В это статье мы расскажем, как сделать так, чтобы можно было подключаться под root сразу, минуя аутентификацию под admin.
Важно! Мы рекомендуем выставлять данную настройку только на время пуско – наладочных работ. После вывода сервера в продакшн, рекомендуем вернуть 2х ступенчатую авторизацию в целях безопасности.
Настройка
Итак, подключитесь к серверу под root и откройте для редактирования файл /etc/ssh/sshd_config:
vim /etc/ssh/sshd_config
Далее, найдите существующий параметр PermitRootLogin, либо, если его нет, создайте его вручную. Данный параметр также может быть закомментирован символом решетки # - если это так, то нужно будет раскомментировать эту строку удалив символ #.
В итоге, в настройках файла /etc/ssh/sshd_config и у вас должна быть строка PermitRootLogin yes - то есть должно быть отмечено значение yes (разрешено подключение под root):
# Authentication:
#LoginGraceTime 2m
PermitRootLogin yes
Сохраняем изменения в файле /etc/ssh/sshd_config. Если вы открыли файл через vim (как показано в нашем примере), то укажите комбинацию ниже с клавиатуры и нажмите Enter:
:x!
Теперь осталось только перезагрузить SSH сервер:
service sshd restart
Готово!
В Linux скрытые файлы - это файлы, которые не отображаются напрямую при выполнении стандартного списка каталогов ls.
Скрытые файлы, также называемые dotfiles в операционных системах Unix, - это файлы, используемые для выполнения некоторых сценариев или для хранения конфигурации некоторых служб на вашем хосте.Некоторым популярным примером скрытых файлов являются файлы, содержащиеся в домашнем каталоге пользователя: .bashrc, в котором хранятся сценарии инициализации пользователя, или .bash_logout, который выполняется всякий раз, когда вы выходите из сеанса bash.
В некоторых случаях вам необходимо иметь возможность легко находить скрытые файлы для настройки параметров конфигурации по умолчанию. Мы рассмотрим все методы, используемые для отображения скрытых файлов в Linux.
Показать скрытые файлы в Linux с помощью ls
Самый простой способ показать скрытые файлы в Linux - это использовать команду ls с опцией -a, что значит all.
$ ls -a [path]
Например, чтобы показать скрытые файлы в домашнем каталоге пользователя, вы должны выполнить эту команду. Кроме того, вы можете использовать флаг -A для отображения скрытых файлов в Linux. При использовании A подразумеваемые файлы не будут отображаться (например, предыдущая папка также называется .)
$ ls -al ~
total 356
drwxr-xr-x 14 schkn schkn 4096 Oct 26 06:08 . --- Не показано с -A
drwxr-xr-x 3 root root 4096 Jan 5 2019 .. --- Не показано с -A
-rw------- 1 schkn schkn 43436 Oct 26 06:08 .bash_history
-rw-r--r-- 1 schkn schkn 220 Apr 4 2018 .bash_logout
-rw-r--r-- 1 schkn schkn 3771 Apr 4 2018 .bashrc
drwx------ 2 schkn schkn 4096 Jan 5 2019 .cache
$ ls -A ~
total 348
-rw------- 1 schkn schkn 43436 Oct 26 06:08 .bash_history
-rw-r--r-- 1 schkn schkn 220 Apr 4 2018 .bash_logout
-rw-r--r-- 1 schkn schkn 3771 Apr 4 2018 .bashrc
drwx------ 2 schkn schkn 4096 Jan 5 2019 .cache
В этом случае скрытыми файлами являются файлы bash_history, bash_logout, bashrc и файлы кэша.
Показать исключительно скрытые файлы с помощью ls
В некоторых случаях вас могут не интересовать другие файлы, кроме тех которые скрыты. Чтобы показать исключительно скрытые файлы в Linux, используйте команду ls со специальным регулярным выражением.
$ ls -dl .[^.]* [path]
Например, используя пример, который мы описали ранее, мы получили бы следующий результат.
$ ls -dl .[^.]* ~
-rw------- 1 schkn schkn 43436 Oct 26 06:08 .bash_history
-rw-r--r-- 1 schkn schkn 220 Apr 4 2018 .bash_logout
-rw-r--r-- 1 schkn schkn 3771 Apr 4 2018 .bashrc
drwx------ 2 schkn schkn 4096 Jan 5 2019 .cache
drwx------ 5 schkn schkn 4096 Jan 5 2019 .config
Показать скрытые файлы в Linux, используя find
Еще один эффективный способ найти скрытые файлы во всей вашей системе - использовать команду find.
Чтобы показать все скрытые файлы в вашей системе, запустите find с опцией name.
$ find / -name ".*" 2> /dev/null
Обратите внимание, что выходные данные команды перенаправляются в /dev/null, чтобы не отображаться в каталогах, к которым у вас нет доступа.
/dev/null - специальный файл в системах UNIX, представляющий собой так называемое "пустое устройство", в которое всегда успешно происходит запись. Обычно используется для того чтобы туда отправлять ненужный вывод программы.
Чтобы показать скрытые файлы в текущем рабочем каталоге, запустите find с параметром maxdepth.
$ find . -name ".*" -maxdepth 1 2> /dev/null
Показать скрытые каталоги используя find
Чтобы показать скрытые каталоги в текущем рабочем каталоге, без рекурсивного поиска, используйте команду find и укажите тип d.
$ find . -name ".*" -maxdepth 1 -type d 2> /dev/null
Показать скрытые файлы в Linux, используя dir
Команда dir - это команда, близкая к команде ls в Linux: она отображает содержимое каталога в вашей системе.
Подобно команде ls, ее можно использовать для отображения скрытых файлов в каталоге.
Чтобы показать скрытые файлы, выполните команду dir с опцией -a или -A.
$ dir -a [path]
$ dir -A [path]
Например, чтобы показать скрытые файлы в вашем домашнем каталоге, вы должны выполнить:
$ dir -A ~
.bash_history .dbshell .mongorc.js .viminfo scripts
Обратите внимание, что команда dir также показывает скрытые каталоги, которые могут находиться в пути, который вы ищете.
Подобно команде ls, вы можете выбрать отображение скрытых файлов исключительно в папке, чтобы не беспокоиться обо всех остальных файлах.
$ dir -dl .[^.]* [path]
Например, в домашнем каталоге это даст такой вывод:
$ dir -dl .[^.]* ~
-rw------- 1 schkn schkn 43436 Oct 26 06:08 .bash_history
-rw-r--r-- 1 schkn schkn 220 Apr 4 2018 .bash_logout
-rw-r--r-- 1 schkn schkn 3771 Apr 4 2018 .bashrc
drwx------ 2 schkn schkn 4096 Jan 5 2019 .cache
Отображение скрытых файлов в среде рабочего стола GNOME
Наконец, для тех, кто работает в среде рабочего стола GNOME, вы также можете показывать скрытые файлы, когда просматриваете систему с помощью проводника.
Чтобы отобразить скрытые файлы через интерфейс GNOME, нажмите небольшую стрелку вниз, расположенную в верхнем правом углу экрана.
При появлении небольшого выпадающего меню обязательно установите флажок «Показать скрытые файлы» (Show Hidden Files).
Как следствие, скрытые файлы и папки будут видны в проводнике.
Вывод
В этом руководстве вы увидели все способы отображения скрытых файлов в Linux: с помощью команды ls, но у вас также есть команда find и dir. Если вы используете среду рабочего стола GNOME, есть возможность легко их отобразить с помощью небольшой опции.