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

Опубликовано: 2022-01-29
Сообщение «неверный пароль» от sshd.
Илья Титчев/Shutterstock

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

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

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

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

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

Реклама

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

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

СВЯЗАННЫЕ С: Как создать и установить ключи SSH из оболочки Linux

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

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

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

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

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

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

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

Реклама

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

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

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

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

СВЯЗАННЫЕ: Почему вы должны использовать менеджер паролей и как начать

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

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

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

 sudo passwd -S Мэри 

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

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

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

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

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

 sudo passwd -x45 мэри 

Реклама

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

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

 sudo passwd -S Мэри 

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

Принуждение к немедленной смене пароля

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

 sudo passwd -e мэри 

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

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

 sudo passwd -S Мэри 

Реклама

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

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

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

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

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

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

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

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

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

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

СВЯЗАННЫЙ: Следует ли вам регулярно менять свои пароли?

Команда смены

Вы можете использовать команду chage , чтобы изменить настройки, касающиеся устаревания пароля. Эта команда получила свое название от «change aging». Это похоже на команду passwd с удаленными элементами создания пароля.

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

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

 sudo chage -l eric 

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

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

 Судо Чаге Эрик -E 2020-11-30 

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

 sudo chage -l eric 

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

Реклама

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

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

 sudo chage -M 45 мэри 

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

 sudo chage -l мэри 

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

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

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

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

 sudo gedit /etc/login.defs 

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

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

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

Реклама

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

 sudo gedit пароль-date.sh 

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

 #!/бин/баш

сброс_дней=28

для имени пользователя в $(ls/home)
делать
  sudo chage $username -M $reset_days
  echo Срок действия пароля $username изменен на $reset_days
Выполнено

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

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

 chmod +x пароль-date.sh 

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

 судо ./пароль-дата.ш 

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

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

 sudo изменить -l мэри 

Реклама

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


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