Home » Как управлять пользователями в Linux?
Как управлять пользователями в Linux?

Как управлять пользователями в Linux?

Если ты хоть раз ставил себе VPS или просто разворачивал Linux на сервере под сайт, дорвей или даже личный проект — ты сразу сталкиваешься с вопросом: “А кто вообще может зайти на мой сервер? Как ограничить доступ? Где хранится инфа о пользователях? И что делать, если мне надо дать доступ кому-то ещё, но не хочется, чтобы он был root?”
Вот тут и начинается вся магия управления пользователями в Linux. Это не только про безопасность, но и про удобство, автоматизацию и даже SEO-шные штуки (например, если у тебя несколько дорвеев на одном сервере и надо отделить процессы друг от друга).

Основы: Как устроена система пользователей в Linux?

В Linux всё просто и сложно одновременно. Каждый пользователь — это отдельная сущность с уникальным идентификатором (UID). Есть группы (GID), есть файлы /etc/passwd и /etc/shadow, где всё хранится. И есть root — бог и царь системы.

  • Пользователь — это кто-то, кто может залогиниться и что-то делать.
  • Группа — набор пользователей, которым можно скопом выдавать права.
  • root — суперпользователь, у которого есть право на всё (и на самоуничтожение системы тоже).

Где хранятся данные о пользователях?

  • /etc/passwd — основной файл с инфой о пользователях (имя, UID, GID, домашняя папка, shell и т.д.).
  • /etc/shadow — тут пароли (захешированные, не пугайся).
  • /etc/group — инфа о группах.

Практика: Базовые команды для управления пользователями

Давай сразу к делу. Вот тебе must-have набор команд для управления пользователями, без которых не обойтись:

  • Создать нового пользователя:
    sudo adduser username

    ИЛИ

    sudo useradd -m username

    adduser — более “человечная” команда, useradd — низкоуровневая, чаще используется в скриптах.

  • Задать/сменить пароль:
    sudo passwd username
  • Удалить пользователя:
    sudo deluser username

    ИЛИ

    sudo userdel username
  • Добавить пользователя в группу:
    sudo usermod -aG groupname username
  • Посмотреть всех пользователей:
    cat /etc/passwd
  • Посмотреть все группы:
    cat /etc/group

Кратко о группах

Группы — это твой способ гибко управлять доступом. Например, ты хочешь, чтобы несколько юзеров могли менять файлы сайта, но не трогали остальное. Создаёшь группу webmasters, добавляешь туда нужных пользователей, на папку сайта ставишь владельца-группу и даёшь права только группе.

Кейсы: Плюсы, минусы и жизненные ситуации

Позитивный кейс: SEO-команда на одном сервере

У тебя команда из 5 человек, каждый заливает свои дорвеи. Ты не хочешь, чтобы кто-то случайно (или специально) снёс чужие файлы. Создаёшь для каждого отдельного пользователя, домашние папки, права только на свои каталоги. Всё, безопасность плюс удобство.

Негативный кейс: Один root на всех

Классика жанра: “Дайте всем root, чтобы не париться”. Итог — кто-то случайно удаляет /etc, кто-то запускает скрипт-майнер, а найти виноватого невозможно. Плюс, если кто-то спалит пароль — у тебя компрометация всего сервера.

Плюсы подхода с раздельными пользователями:

  • Безопасность (минимизация ущерба при взломе одного пользователя)
  • Удобство (логирование, кто что сделал, автоматизация бэкапов, раздельные SSH-ключи)
  • Гибкость (можно дать доступ только к нужным папкам или сервисам)

Минусы:

  • Надо следить за пользователями (удалять неактуальных, менять пароли и т.д.)
  • Поначалу кажется, что сложно (но на деле — 5 минут разберёшься)

Практические советы и лайфхаки

  • Заведите отдельного пользователя для каждого сайта или проекта — потом спасибо скажешь, когда один сайт взломают, а остальные останутся целы.
  • Не давайте sudo всем подряд — только тем, кому реально надо.
  • Используйте SSH-ключи вместо паролей — это и безопаснее, и удобнее.
  • Автоматизируйте создание пользователей через скрипты — если у вас потоковая генерация дорвеев, это must-have.
  • Регулярно проверяйте, кто есть в системе:
    getent passwd
    getent group
  • Блокируйте пользователей, если не хотите удалять:
    sudo usermod -L username
  • Меняйте shell на /usr/sbin/nologin, если нужен “технический” пользователь без доступа к консоли:
    sudo usermod -s /usr/sbin/nologin username

Ошибки новичков

  • Работают под root по SSH — нельзя! Всегда используйте отдельного пользователя + sudo.
  • Оставляют пользователей после увольнения или смены команды — это дыра в безопасности.
  • Не ставят пароли или ставят простые пароли — используйте генераторы и менеджеры паролей.
  • Не делают бэкапы /etc/passwd и /etc/shadow — а зря, восстановить потом будет больно.

Частые мифы

  • “Один пользователь — проще, чем много”. На самом деле, это путь к хаосу и уязвимостям.
  • “Если удалить пользователя, его файлы исчезают”. Нет! Файлы остаются, просто меняется их владелец на UID.
  • “root всегда нужен”. Нет, root — только для задач администрирования. Всё остальное — через обычных пользователей.

Похожие решения и расширения

  • LDAP и Active Directory — если у вас реально большая инфраструктура, можно централизовать управление пользователями (но это уже за гранью для обычного дорвейщика или вебмастера).
  • Webmin, Cockpit — графические панели для управления пользователями (https://www.webmin.com/, https://cockpit-project.org/). Для тех, кто не любит консоль.
  • fail2ban, sshguard — для автоматической блокировки брутфорса по SSH.

Заключение: Итоги и рекомендации

Управление пользователями в Linux — это не только про “создать/удалить юзера”. Это про безопасность, масштабируемость, удобство и даже SEO-проекты. Не ленись, потрать 10 минут на изучение базовых команд, автоматизируй рутину и не давай всем подряд root-доступ.
Если хочешь больше инфы — читай официальную доку Arch Linux (на английском, но очень подробно), или гайд от Ubuntu.
Ну и помни: правильное управление пользователями — это твоя страховка от головной боли, потери данных и взломов. Удачи!


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

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

Leave a reply

Your email address will not be published. Required fields are marked