Как заставить пользователей изменить свои пароли в Linux

Пароли — залог безопасности учетной записи. Мы покажем вам, как сбросить пароли, установить срок действия пароля и принудительно изменить пароль в вашей сети Linux.

Пароль известен уже почти 60 лет

Мы доказываем компьютерам, что являемся тем, кем себя называем, с середины 1960-х годов, когда впервые был введен пароль. Необходимость быть матерью изобретения, Совместимая система разделения времени разработан в Массачусетский Институт Технологий нужен был способ идентифицировать разных людей в системе. Это также необходимо, чтобы люди не видели файлы друг друга.

Фернандо Х. Корбато предложили схему, по которой каждому человеку назначается уникальный логин. Чтобы доказать, что кто-то был тем, кем они себя называли, они должны были использовать личный пароль для доступа к своей учетной записи.

Проблема с паролями в том, что они действуют как ключ. Его может использовать любой, у кого есть ключ. Если кто-то найдет, угадает или узнает ваш пароль, этот человек сможет получить доступ к вашей учетной записи. До тех пор многофакторная аутентификация доступен повсеместно, пароль — единственное, что удерживает посторонних (субъекты угрозы, говоря языком кибербезопасности) вне вашей системы.

Удаленные подключения с помощью Secure Shell (SSH) можно настроить на использование ключей SSH вместо паролей, и это здорово. Однако это только один метод подключения, и он не распространяется на локальный вход.

Очевидно, что управление паролями жизненно важно, как и управление людьми, которые используют эти пароли.

Анатомия пароля

Что вообще делает пароль хорошим? Что ж, хороший пароль должен иметь все следующие атрибуты:

Невозможно угадать или догадаться.
Вы его больше нигде не использовали.
Он не участвовал в данные нарушения.

В Меня уговорили (HIBP) содержит более 10 миллиардов наборов взломанных учетных данных. С такими высокими цифрами есть вероятность, что кто-то другой использовал тот же пароль, что и вы. Это означает, что ваш пароль может быть в базе данных, даже если взломана была не ваша учетная запись.

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

По-настоящему случайный пароль (например, 4HW @ HpJDBr% * Wt @ # b ~ aP) практически неуязвим, но, конечно, вы никогда его не вспомните. Мы настоятельно рекомендуем вам использовать менеджер паролей для онлайн-аккаунтов. Они генерируют сложные случайные пароли для всех ваших учетных записей в Интернете, и вам не нужно их запоминать — менеджер паролей предоставит вам правильный пароль.

Для локальных учетных записей каждый человек должен создать свой собственный пароль. Им также нужно будет знать, какой пароль приемлемый, а какой нет. Им нужно будет сказать, чтобы они не использовали пароли для других учетных записей и так далее.

  Как убить процессы из терминала Linux

Эта информация обычно содержится в политике паролей организации. Он инструктирует людей использовать минимальное количество символов, смешивать прописные и строчные буквы, включать символы и знаки препинания и так далее.

Однако, по мнению совершенно новая бумагаг из команды в Университет Карнеги Меллон, все эти приемы мало или ничего не добавляют к надежности пароля. Исследователи обнаружили, что двумя ключевыми факторами надежности пароля являются то, что он должен содержать не менее 12 символов и достаточно надежен. Они измерили надежность пароля с помощью ряда программ-взломщиков, статистических методов и нейронных сетей.

Минимум 12 символов сначала может показаться устрашающим. Однако не думайте о пароле, а скорее о парольной фразе из трех или четырех не связанных друг с другом слов, разделенных знаками препинания.

Например, Программа проверки паролей Experte сказал, что потребуется 42 минуты, чтобы взломать «chicago99», но 400 миллиардов лет, чтобы взломать «chimney.purple.bag». Его также легко запомнить и набрать, и он содержит всего 18 символов.

Просмотр текущих настроек

Прежде чем вы начнете менять что-либо, связанное с паролем человека, разумно взглянуть на его текущие настройки. С помощью команды passwd вы можете просмотреть их текущие настройки с параметром -S (статус). Обратите внимание, что вам также придется использовать sudo с passwd, если вы работаете с настройками чужого пароля.

Набираем следующее:

sudo passwd -S mary

sudo passwd -S mary в окне терминала.

Одна строка информации выводится в окно терминала, как показано ниже.

Вывод sudo passwd -S mary в окне терминала.

В этом кратком ответе вы видите следующую информацию (слева направо):

Логин человека.
Здесь появляется один из трех возможных индикаторов:
P: указывает, что у учетной записи есть действующий рабочий пароль.
L: означает, что учетная запись была заблокирована владельцем учетной записи root.
Н.П .: Пароль не был установлен.

Дата последнего изменения пароля.
Минимальный срок действия пароля: минимальный период времени (в днях), который должен пройти между сбросами пароля, выполненными владельцем учетной записи. Однако владелец учетной записи root всегда может изменить любой пароль. Если это значение равно 0 (нулю), нет ограничения на частоту смены пароля.
Максимальный срок действия пароля: владельцу учетной записи предлагается сменить пароль по достижении этого возраста. Это значение указывается в днях, поэтому значение 99 999 означает, что срок действия пароля никогда не истекает.
Период предупреждения о смене пароля: если установлен максимальный срок действия пароля, владелец учетной записи будет получать напоминания об изменении своего пароля. Первому из них будет отправлено количество дней, указанное здесь до даты сброса.
Период бездействия пароля: если кто-то не имеет доступа к системе в течение периода времени, который перекрывает крайний срок сброса пароля, пароль этого человека не будет изменен. Это значение указывает, сколько дней после истечения срока действия пароля следует льготный период. Если учетная запись остается неактивной в течение этого количества дней после истечения срока действия пароля, учетная запись блокируется. Значение -1 отключает льготный период.

Установка максимального возраста пароля

Чтобы установить период сброса пароля, вы можете использовать параметр -x (максимальное количество дней) с количеством дней. Вы не оставляете пробел между -x и цифрами, поэтому введите его следующим образом:

sudo passwd -x45 mary

sudo passwd -x45 mary в окне терминала.

Нам сказали, что срок действия был изменен, как показано ниже.

  Как установить приложение быстрого запуска ULauncher в Linux

Уведомление об изменении срока действия пароля в окне терминала.

Используйте параметр -S (статус), чтобы проверить, что теперь значение равно 45:

sudo passwd -S mary

sudo passwd -S mary в окне терминала.

Теперь, через 45 дней, для этой учетной записи должен быть установлен новый пароль. Напоминания начнутся за семь дней до этого. Если новый пароль не будет установлен вовремя, эта учетная запись будет немедленно заблокирована.

Принудительное немедленное изменение пароля

Вы также можете использовать команду, чтобы другим пользователям в вашей сети пришлось изменить свои пароли при следующем входе в систему. Для этого вы должны использовать параметр -e (срок действия) следующим образом:

sudo passwd -e mary

sudo passwd -e mary в окне терминала.

Затем нам говорят, что информация об истечении срока действия пароля изменилась.

Вывод команды sudo passwd -e mary в окне терминала.

Давайте проверим с параметром -S и посмотрим, что произошло:

sudo passwd -S mary

sudo passwd -S mary в окне терминала.

Дата последней смены пароля установлена ​​на первый день 1970 года. В следующий раз, когда этот человек попытается войти в систему, ему или ей придется изменить свой пароль. Они также должны предоставить свой текущий пароль, прежде чем они смогут ввести новый.

Экран сброса пароля.

Следует ли принудительно менять пароль?

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

Сейчас мышление прямо противоположное. В Великобритании Национальный центр кибербезопасности настоятельно советует против принуждения к регулярному обновлению паролей, а Национальный институт стандартов и технологий в США согласен. Обе организации рекомендуют принудительно изменить пароль, только если вы знаете или подозреваете, что существующий пароль известен другим.

Принуждение людей к смене паролей становится однообразным и поощряет использование слабых паролей. Обычно люди начинают повторно использовать базовый пароль с пометкой даты или другого числа. Или они запишут их, потому что им нужно их так часто менять, что они не могут их вспомнить.

Две упомянутые выше организации рекомендуют следующие рекомендации по безопасности паролей:

Используйте менеджер паролей: как для сетевых, так и для локальных учетных записей.
Включите двухфакторную аутентификацию: используйте ее везде, где это возможно.
Используйте надежную парольную фразу: отличная альтернатива для тех учетных записей, которые не работают с менеджером паролей. Три или более слов, разделенных знаками препинания или символами, — хороший образец для подражания.
Никогда не используйте пароль повторно: избегайте использования того же пароля, который вы используете для другой учетной записи, и определенно не используйте тот, который указан на Меня уговорили.

Приведенные выше советы позволят вам установить безопасные средства доступа к вашим счетам. Когда у вас есть эти рекомендации, придерживайтесь их. Зачем менять пароль, если он надежный и надежный? Если он попадет в чужие руки — или вы подозреваете, что попал — вы можете его поменять.

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

  Как настроить панель управления Linux-сервера с помощью Linux Dash

Команда Chage

Ты можешь использовать команда смены для изменения настроек устаревания пароля. Эта команда получила свое название от «изменить старение». Это похоже на команду passwd с удаленными элементами создания пароля.

Параметр -l (список) представляет ту же информацию, что и команда passwd -S, но в более удобной форме.

Набираем следующее:

sudo chage -l eric

sudo chage -l eric в окне терминала.

Еще одна интересная особенность — вы можете установить дату истечения срока действия учетной записи, используя параметр -E (истечение срока). Мы передадим дату (в формате год-месяц-дата), чтобы установить срок действия 30 ноября 2020 г. В этот день учетная запись будет заблокирована.

Набираем следующее:

sudo chage eric -E 2020-11-30

sudo chage eric -E 2020-11-30 в окне терминала.

Затем мы вводим следующее, чтобы убедиться, что это изменение было выполнено:

sudo chage -l eric

sudo change -l eric в окне терминала.

Мы видим, что срок действия учетной записи изменился с «никогда» на 30 ноября 2020 г.

Чтобы установить срок действия пароля, вы можете использовать параметр -M (максимальное количество дней), а также максимальное количество дней, в течение которых пароль может использоваться до его изменения.

Набираем следующее:

sudo chage -M 45 mary

sudo change -M 45 mary в окне терминала.

Мы вводим следующее, используя параметр -l (список), чтобы увидеть эффект нашей команды:

sudo chage -l mary

sudo change -l mary в окне терминала.

Дата истечения срока действия пароля теперь установлена ​​на 45 дней с даты, которую мы установили, что, как мы видим, будет 8 декабря 2020 года.

Изменение пароля для всех в сети

При создании учетных записей для паролей используется набор значений по умолчанию. Вы можете определить значения по умолчанию для минимального, максимального и предупреждающего дней. Затем они хранятся в файле с именем «/etc/login.defs».

Вы можете ввести следующее, чтобы открыть этот файл в gedit:

sudo gedit /etc/login.defs

  в окне терминала в окне терминала

Прокрутите до элемента управления устареванием пароля.

Контроль устаревания пароля в редакторе gedit.

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

Если вы хотите изменить все даты истечения срока действия пароля для существующих учетных записей пользователей, вы можете легко сделать это с помощью сценария. Просто введите следующее, чтобы открыть редактор gedit и создать файл с именем «password-date.sh»:

sudo gedit password-date.sh

sudo gedit password-date.sh в окне терминала.

Затем скопируйте следующий текст в свой редактор, сохраните файл и закройте gedit:

#!/bin/bash

reset_days=28

for username in $(ls /home)
do
  sudo chage $username -M $reset_days
  echo $username password expiry changed to $reset_days
done

Это изменит максимальное количество дней для каждой учетной записи пользователя на 28 и, следовательно, частоту сброса пароля. Вы можете настроить значение переменной reset_days по своему усмотрению.

Сначала мы вводим следующее, чтобы сделать наш скрипт исполняемым:

chmod +x password-date.sh

chmod + x password-date.sh в окне терминала.

Теперь мы можем ввести следующее, чтобы запустить наш скрипт:

sudo ./password-date.sh

sudo ./password-date.sh в окне терминала.

Затем каждая учетная запись обрабатывается, как показано ниже.

Четыре учетные записи пользователей со сроком действия пароля изменены на 28 в окне терминала.

Мы вводим следующее, чтобы проверить аккаунт на «Мэри»:

sudo change -l mary

sudo chage -l mary в окне терминала.

Максимальное значение дней установлено на 28, и нам сказали, что это выпадет на 21 ноября 2020 года. Вы также можете легко изменить скрипт и добавить больше команд chage или passwd.

К управлению паролями следует отнестись серьезно. Теперь у вас есть инструменты, необходимые для управления.