Поиск по сайту:

Как заблокировать или отключить вход обычных пользователей в Linux


Как системный администратор, вы неизбежно в тот или иной момент будете проводить плановое обслуживание системы. Несколько раз ваша система также может столкнуться с некоторыми проблемами, и вам придется отключить ее, чтобы устранить проблему (проблемы). В какой бы ситуации ни возникали ситуации, рекомендуется запретить пользователям без полномочий root (обычным) подключаться к системе.

Читайте также: отключение или включение корневого входа по SSH и ограничение доступа по SSH в Linux

В этой статье мы опишем, как заблокировать вход пользователей без полномочий root с помощью файла /etc/nologin, а также оболочки nologin в Linux. Мы рассмотрим, как установить сообщение, объясняющее пользователям, что на самом деле происходит.

Как заблокировать вход пользователей с помощью файла /etc/nologin

Основная функция файла /etc/nologin — отображать сообщение (хранящееся в файле) пользователям, пытающимся войти в систему во время процесса завершения работы.

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

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

vi /etc/nologin

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

The Server is down for a routine maintenance. We apologize for any inconvenience caused, the system will be up and running in 1 hours time. For more information, contact the system admin [email . 

Теперь вы можете проверить, работает ли все это; как вы можете видеть на снимке экрана ниже, обычный пользователь tecmint не может войти в систему.

Как заблокировать вход пользователей с помощью оболочки nologin

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

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

На RHEL/CentOS/Fedora

Просто используйте команду chsh (change Shell), чтобы изменить оболочку пользователя в файле /etc/passwd на что-то вроде /bin/bash. или /bin/sh на /sbin/nologin, что означает отказ от входа в систему.

chsh -s /bin/nologin tecmint

В Дебиан/Убунту

Здесь вам нужно использовать файл /bin/false. Приведенная ниже команда изменяет оболочку пользователя tecmint на /bin/false, что означает ничего не делать (после того, как пользователь вводит учетные данные для входа):

sudo chsh -s /bin/false tecmint

Вам также может быть интересно прочитать следующие статьи по теме.

  1. Как включить и отключить root-вход в Ubuntu
  2. Сброс/восстановление забытого пароля учетной записи пользователя root в RHEL/CentOS 7
  3. Как ограничить пользователей SFTP домашними каталогами с помощью chroot Jail
  4. Как установить и отключить локальные, пользовательские и общесистемные переменные среды в Linux

На данный момент это все! Если у вас есть какие-либо вопросы или дополнительные идеи по этой теме, воспользуйтесь формой комментариев ниже.