Создание нового пользователя с правами sudo
Дата публикации: 18.05.2026

Создание нового пользователя с правами sudo

Хочу себе такие же кнопки
ccb9a536

Что вы получите сразу же

  • Понимание, зачем на сервере нужен отдельный пользователь с правами sudo.
  • Навык создания нового пользователя, установки пароля и добавления его в группу sudo (или wheel).
  • Умение проверять, что всё работает, без риска повредить систему.

«Лучший способ научиться – сразу же выполнить команду» – поэтому каждый блок снабжён примерами, которые вы сможете скопировать в терминал.


1️⃣ Почему не стоит работать под root

Термин Значение Аналогия
root (根) gēn Пользователь с полными правами системы. Как владелец дома, который может открывать любые двери.
sudo (超级用户) chāojí yònghù Позволяет обычному пользователю временно выполнять команды от имени root. Как ключ от главного входа, который вы даёте гостю только на время.

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


2️⃣ Подготовка к работе

  1. Подключитесь к вашему VDS по SSH.

    ssh root@<IP-адрес>

    Если у вас уже есть пользователь с sudo, замените root на его имя.

  2. Обновите пакетный индекс (это не обязательный шаг, но хорошая привычка).

    apt update && apt upgrade -y

3️⃣ Создание нового пользователя

3.1 Команда adduser

adduser alice
  • alice – пример имени нового пользователя.
  • Команда интерактивно запросит пароль и несколько полей (Full Name, Room Number и т.д.). Вы можете просто нажать Enter, если информация не нужна.

Что происходит внутри?

Шаг Описание
1 Создаётся запись в /etc/passwd.
2 Создаётся домашний каталог /home/alice.
3 Генерируется зашифрованный пароль в /etc/shadow.
4 Добавляется пользователь в группу alice (по умолчанию).

3.2 Быстрое создание без интерактивных вопросов

Если вы хотите задать пароль сразу (например, в скрипте), используйте useradd + chpasswd:

useradd -m -s /bin/bash alice
echo "alice:StrongP@ssw0rd" | chpasswd
  • -m – создать домашний каталог.
  • -s /bin/bash – задать оболочку Bash.

Важно: Не храните пароли в открытом виде в скриптах, если только они не защищены.


4️⃣ Дать пользователю права sudo

4.1 Добавление в группу sudo

В большинстве Debian‑производных дистрибутивов (Ubuntu, Debian) группа называется sudo. В RHEL‑производных – wheel.

usermod -aG sudo alice
  • -a – добавить (append).
  • -G – указать дополнительные группы.

4.2 Проверка конфигурации sudo

Откройте файл /etc/sudoers (или лучше – используйте visudo).

visudo

Вы увидите строку:

%sudo   ALL=(ALL:ALL) ALL

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

4.3 Альтернативный способ – отдельный пользователь

Если вы хотите ограничить набор команд, добавьте в /etc/sudoers.d/alice:

echo "alice ALL=(ALL) NOPASSWD: /usr/bin/apt, /usr/bin/systemctl restart nginx" > /etc/sudoers.d/alice
chmod 440 /etc/sudoers.d/alice
  • NOPASSWD: – не требовать ввод пароля при выполнении указанных команд.
  • Это удобно для автоматических скриптов, но будьте осторожны: чем меньше команд, тем выше безопасность.

5️⃣ Тестирование прав

  1. Войдите под новым пользователем

    su - alice
  2. Проверьте, что sudo работает

    sudo whoami

    Ожидаемый вывод: root. Если система запросит пароль, введите пароль alice.

  3. Проверьте ограниченную конфигурацию (если вы создали файл в /etc/sudoers.d/)

    sudo systemctl restart nginx

    Если всё настроено правильно, команда выполнится без запроса пароля.

  4. Проверьте, что остальные команды без sudo недоступны

    sudo rm -rf /etc

    Система должна отреагировать предупреждением о недостаточных правах (если вы не добавили ALL в sudoers).


6️⃣ Полезные лайфхаки и рекомендации

Лайфхак Зачем Как применить
Создайте отдельную группу для администраторов Удобно управлять несколькими пользователями. groupadd admins && usermod -aG admins alice и в /etc/sudoers добавить %admins ALL=(ALL) ALL.
Отключите прямой вход root по SSH Уменьшает поверхность атаки. В /etc/ssh/sshd_config установить PermitRootLogin no и перезапустить ssh.
Включите двухфакторную аутентификацию Защищает от кражи пароля. Установите google-authenticator и настройте PAM.
Регулярно проверяйте список sudo‑пользователей Снижение риска «забытых» аккаунтов. grep -E '^%|^sudo' /etc/sudoers /etc/sudoers.d/*

7️⃣ Обратная связь и дальнейшие шаги

  • Проверьте журнал auth.log после каждого sudo‑вызова:

    tail -f /var/log/auth.log | grep sudo
  • Создайте резервную копию файлов sudoers:

    cp /etc/sudoers /etc/sudoers.bak
  • Продолжайте обучение: следующими темами могут стать настройка файрволла и автоматическое обновление.


Практика для закрепления

  1. Создайте пользователя bob с домашним каталогом и оболочкой Bash, задав пароль B0b$ecure!. Проверьте, что вы можете войти под bob.

  2. Добавьте bob в группу sudo и выполните команду sudo apt update. Сохраните вывод в файл bob_update.txt.

  3. Ограничьте bob так, чтобы он мог перезапускать только сервис apache2 без ввода пароля. Проверьте, что sudo systemctl restart nginx теперь отказывается выполнять.

  4. Создайте отдельную группу devops, добавьте в неё alice и bob, и в файле /etc/sudoers.d/devops разрешите им выполнять любые команды, но только после ввода пароля.

  5. Проверьте безопасность: отключите прямой SSH‑доступ `root (измените PermitRootLogin no), перезапустите ssh и убедитесь, что вход под root невозможен, а alice и bob работают как обычно.

Подсказка: используйте visudo для редактирования файлов sudoers – он проверит синтаксис и предупредит о ошибках.


Если понадобится официальная документация VDSina, вы найдёте её по ссылке: https://vdsina.ru/docs?partner=5095.

Удачной настройки и безопасных серверов! 🚀


Введение: чем VDS отличается от шаред-хостинга и зачем это веб-мастеру
Как правильно выбрать тариф: CPU, RAM, NVMe или SSD, канал
Выбор операционной системы: почему Ubuntu 22.04/24.04 — стандарт индустрии
Регистрация домена и первичная настройка DNS-записей (A, AAAA, CNAME)
Генерация SSH-ключей на локальном компьютере (Windows/Mac/Linux)
Добавление публичного ключа на сервер и первый вход по SSH
Отключение входа по паролю и запрет авторизации для root
Смена стандартного порта SSH для снижения шума в логах
Создание основного рабочего пользователя с правами sudo
Базовое обновление системы и установка необходимых утилит (curl, wget, git, htop)
Настройка часового пояса и синхронизация времени (NTP)
Установка и базовая настройка фаервола UFW
Разрешение только необходимых портов (SSH, HTTP, HTTPS)
Установка Fail2Ban для защиты от перебора паролей
Настройка правил Fail2Ban для SSH и веб-сервера
Знакомство с Docker: установка движка и CLI
Установка Docker Compose для управления мульти-контейнерными приложениями
Основы изоляции: почему каждый проект должен быть в своем контейнере
Подготовка файловой структуры сервера для удобного хранения проектов
Развертывание Nginx как обратного прокси-сервера через Docker
Настройка конфигурации Nginx для статических сайтов
Установка PHP-FPM в отдельном контейнере
Связка Nginx и PHP-FPM через внутреннюю Docker-сеть
Оптимизация настроек PHP-FPM (pm.max_children, memory_limit) под нагрузку
Установка MariaDB/MySQL в изолированном контейнере
Безопасное хранение паролей от БД через переменные окружения (.env)
Подключение к базе данных из внешнего клиента (DBeaver/Navicat) через туннель
Установка Redis для кэширования запросов и сессий
Интеграция Redis с PHP-приложением для ускорения работы
Автоматическая выдача SSL-сертификатов через Certbot (Let's Encrypt)
Настройка автопродления SSL-сертификатов по крону
Принудительный редирект с HTTP на HTTPS в Nginx
Включение gzip и brotli сжатия для ускорения загрузки страниц
Настройка кэширования статики (browser caching) в заголовках Nginx
Защита от простых DDoS и ботов: модуль limit_req в Nginx
Настройка резервного копирования баз данных (mysqldump) по расписанию
Настройка резервного копирования файлов проектов (tar)
Отправка бэкапов на удаленное хранилище (S3-compatible storage или другой сервер)
Ротация и очистка старых логов, чтобы не забить диск
Мониторинг нагрузки: установка и настройка htop и iotop
Просмотр логов в реальном времени: tail, grep и journalctl
Установка простого мониторинга доступности (Uptime Kuma или скрипт в Telegram)
Изоляция арбитражных инструментов: запуск ботов в отдельных контейнерах
Установка SOCKS5/HTTP прокси (3proxy) внутри Docker для мультиаккаунтинга
Настройка аутентификации и ограничения доступа к прокси по IP
Проверка анонимности и работы прокси-сервера
Оптимизация ядра Linux (sysctl.conf) для высоких нагрузок и сетевых соединений
Настройка swap-файла: когда он нужен, а когда вредит
Чек-лист финальной проверки безопасности перед запуском проекта
План действий при взломе или падении сервера: восстановление из бэкапа
АПТЕЧКА ДЛЯ ЖИВОТНЫХ
Автомобили Германии — FORD, MERSEDES, VW, IVECO
Чат рулетка 2026: чаты, где каждый момент — шанс
Чат рулетка онлайн
Чат с Аней: психологический разговор
Чатрулетка: новый способ общения
Чай и кофе: сила вкуса
Детские игрушки из безопасных материалов
Эксплуатация шин: Рекомендации по использованию
Фототехника для пейзажей
Как Aptum хостинг помогает малым бизнесам в управлении CRM-системами
Как выбрать Vdsina вечный хостинг для своего проекта
Компоненты безопасности IP
Конкуренция на российском автомобильном рынке
Онлайн генератор паролей для Windows
Оптимизация обработки форм GEO проекта
Сервер для социальных сетей: Безопасность, Скорость, Изоляция
Смешные моменты
Сравнение Arsys хостинг сервисов для блогеров с WordPress на 2023 год
Весь экран под циферблат
рейтинг хостингов 2026 Быстрые VDS серверы