Отключить пользователей 1с linux

Обновлено: 08.07.2024

Иногда нужно выбросить определенного пользователя из ssh, допустим, на время выполнения тех работ. Есть ряд нестандартных решений (ps aux + kill -9), но оказывается есть вполне стандартное решение задачи.

Итак, имеем двух пользователей root одновременно работающих на сервере (это разные люди):

w
18:08:13 up 17:03, 2 users, load average: 0.00, 0.00, 0.00
USER TTY FROM LOGIN@ IDLE JCPU PCPU WHAT
root pts/0 xx.xx.xx.xx 18:07 0.00s 0.00s 0.00s w
root pts/1 yy.yy.yy.yy 18:08 9.00s 0.00s 0.00s -bash

Нам нужно выкинуть пользователя с IP yy.yy.yy.yy, смотрим, какой tty (терминал) ему соответствует, это pts/1 и отключаем его:
w
18:08:36 up 17:03, 1 user, load average: 0.00, 0.00, 0.00
USER TTY FROM LOGIN@ IDLE JCPU PCPU WHAT
root pts/0 xx.xx.xx.xx 18:07 0.00s 0.00s 0.00s w

А выброшенный пользователь увидел примерно следующее:

Далее возникает вопрос - как избежать того, чтобы пользователь вошел снова. Можно сделать это вот так, просто сгенерировав новый пароль для пользователя и установив его:

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

После этого можно смело продолжать работать с машиной не беспокоясь, что кто-либо помешает.

7 comments :

Как вариант можно для yy.yy.yy.yy запретить через iptables коннект на 22-й порт, а потом дропнуть правило.


Но вышибить подключенного все равно будет нужно :)

ещё стоит заметить что обычно не бывает 2х пользователей с логином рут
нечего им там с таким логином делать
пусть пользуются su


Это один пользователь, но вошло под ним два разных человека.

угу, я именно про это
зачем эти 2 человек оба вошли как рут ?
это как минимум затрудняет их дальнейшую идентификацию
не говоря уже о усложнении управления пользователями и их доступом


Это такая вот особенность работы при поддержке клиентов :)

мда, протупил
это всё объясняет :)

Note: only a member of this blog may post a comment.

Search

Please do not contact me directly regarding any Linux related issues. View my complete profile

Завершение сеанса пользователя в 1С может потребоваться в следующих случаях:

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

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

Эти и другие работы мы выполняем в рамках ИТ-аутсорсинга.

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

Закрытие сеансов из конфигуратора

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

Ошибка активных сеансов

Рисунок 1 - Ошибка активных сеансов

Для завершения сеанса требуется:

  1. Нажать кнопку Завершить сеансы и повторить.
  2. Дождаться окна реструктуризации базы.
  3. Нажать Принять.

Завершение сеансов пользователя из программы 1С

В основном все продукты фирмы 1С 8 версии имеют механизм, позволяющий удаленно завершить работу пользователя и обеспечить администратору монопольный доступ к базе. Это обработка Блокировка соединений с информационной базой. Найти её можно по следующему адресу: Администрирование => обслуживание => блокировка работы пользователей.

Блокировка работы пользователей

Рисунок 2 - Блокировка работы пользователей

Подтверждение блокировки сеанса

Рисунок 3 - Подтверждение блокировки сеанса

Удаление пользователей из RDP

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

Для сервера 1С и обладая правами Администратора для кластера серверов 1С, необходимо:

  1. Запустить консоль администрирования сервера 1С.
  2. В ветке Информационные базы, найти базу, в которой будем завершать работу пользователя.
  3. Открыв её, зайти в ветку Сеансы.
  4. Щелкнув правой кнопкой мыши по имени пользователя, выбрать пункт Удалить.

Удаление в консоли администрирования

Рисунок 4 - Удаление в консоли администрирования

Часто бывает, что при работе в серверном режиме зависшие сеансы пользователей не видны средствами платформы, их можно удалить только через консоль.

Перезагрузка сервера

Нельзя и упустить такой момент, что одним из способов завершения сеанса пользователей является банальная перезагрузка сервера, выполнить её можно, если все вышеуказанные способы не сработали, но такое случается редко. Безусловно, требуется пользователей предупредить, чтобы они успели сохранить файлы и завершить работу с программами.

Выгоняем пользователей из серверной информационной базы

Для проведения регламентных работ в информационной базе 1С:Предприятия 8 часто необходимо получить монополный доступ к базе. Например, для выполнения бэкапа базы или выполнения регламентных работ на сервере СУБД (реиндексация и т.д.), необходимо отключить все активные сеансы.

Изображение

Рассмотрим простой способ отключения пользователей от информационной базы с помощью стандартного функционала сервера 1С:Предприятия.

Стандартный функционал

Сразу оговорюсь, что речь будет идти о клиент-серверном варианте работы 1С:Предприятия 8. Для отключения сеансов зайдем в консоль администрирования сервера. Там найдем нужную информационную базы в списке:

Изображение

Зайдя в свойства ИБ установим опцию "Блокировка начала сеансов включена". При этом может быть необходимо ввсетси логин/пароль учетной записи администратора информационной базы.

Изображение

Не забывайте установить период блокировки сеанса. Также следует предусмотреть, что на время блокировки сеансов нужно остановить все фоновые задания. Делается это опицей "Блокировка регламентных заданий включена".

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

Изображение

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

Изображение

По началу периода блокировки сеансов сначала появляется уведомление:

После сеанс завершается.

Изображение

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

Изображение

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

Favorite

Добавить в избранное

Главное меню » Операционная система Linux » Как заблокировать и разблокировать пользователя в Linux

(1 оценок, среднее: 5,00 из 5)
К ак вы блокируете учетную запись пользователя в Linux? Еще важнее, как разблокировать пользователя в Linux? В этой статье показано несколько способов блокировки и разблокировки пользователей в Linux.

3 способа блокировки и разблокировки учетных записей пользователей в Linux

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

В этой статье мы покажем вам три способа блокировки пользователя в командной строке Linux. Мы также расскажем, как разблокировать пользователя.

Обратите внимание, что для внесения этих изменений вам необходимо либо получить root-права, либо иметь root-доступ через sudo.

Способ 1: блокировка и разблокировка пользователей с помощью команды passwd

Команда passwd в Linux работает с паролями учетной записи пользователя. Вы также можете использовать эту команду для блокировки учетной записи пользователя.

Команда в основном работает с файлом /etc/passwd. Вы можете вручную изменить этот файл, но мы не советуем этого делать.

Чтобы заблокировать пользователя с помощью команды passwd, вы можете использовать опцию -l или –lock следующим образом:

Проверьте статус пользователя с помощью команды passwd

Вы можете узнать, заблокирован или разблокирован пользователь, используя опцию -S или –status команды passwd.

passwd -S user_name

Посмотрите на второе поле в выводе. Вот что это значит:

Вот пример вывода команды passwd:

standard P 10/14/2019 0 99999 7 -1

Чтобы разблокировать пользователя с помощью команды passwd, вы можете использовать опцию -u или –unlock:

В Ubuntu вы увидите такой вывод как для блокировки, так и для разблокировки пользователя:

А как насчет входа через SSH?

Существует серьезная проблема с блокировкой пользователей таким способом. Поскольку он работает только с файлом /etc/passwd, заблокированный пользователь все равно сможет войти через ключи SSH (если установлен вход через ключ SSH). Мы покажем вам, как с этим бороться в следующем разделе.

Способ 2: блокировка и разблокировка пользователей с помощью команды usermod

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

Чтобы заблокировать пользователя, вы можете использовать опцию -L следующим образом:

Чтобы разблокировать пользователя, вы можете использовать опцию -U:

Как проверить, заблокирован ли пользователь или нет? Команда usermod также работает с файлом /etc/passwd, поэтому вы можете использовать команду passwd -S user_name для проверки статуса пользователя.

Но usermod также работает с файлом /etc/passwd, так что заблокированный пользователь все еще может войти в систему через ключи SSH, верно? Верно. Но есть способы преодоления этой проблемы.

Например, вы можете изменить оболочку пользователя на nologin, и это не позволит пользователю войти в оболочку.

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

Убедитесь, что прошедшая дата находится между 1970-01-02 и текущей датой.

Вы можете отменить это с помощью этой команды:

Существует аналогичный способ блокировки пользователя в Linux с помощью команды chage. Давайте посмотрим на это в следующем разделе.

Способ 3: блокировка и разблокировка пользователей с помощью команды chage

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

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

По сути, вы установили дату истечения срока действия 1970-01-02. Вы можете увидеть детали, как это:

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

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

Если вы нашли ошибку, пожалуйста, выделите фрагмент текста и нажмите Ctrl+Enter.

Читайте также: