У цій коротенькій замітці я дам список команд, які знадобляться для автоматизації роботи з обліковими записами Linux.
Команди useradd і adduser
Обидві команди створюють нових користувачів в системі Linux. Однак, на практиці між ними є різниця:
useradd— низькорівнева класична утиліта командного рядка Linux, яка по замовчуванню входить в склад кожної UNIX-подібної системи;adduser— високорівнева інтерактивна утиліта командного рядка Linux, яка входить у склад Debian Linux. На відміну від useradd, команда Adduser являє собою скрипт на Perl, який по суті виконує ту ж функцію що й useradd, але на додаток задає пароль для нового користувача (команда —sudo passwd username) і створює домашню директорію~/home. Ця команда економить час, а тому я завжди використовую саме її.
Створення нового користувача з правами sudo
Sudo (з англ. Substitute User and do) — команда терміналу Linux для делегування прав суперкористувача Root під час виконання команд. Керується файлом конфігурації /etc/sudoers.
Отже, щоби створити нового користувача в Linux виконуємо команду:
sudo adduser max — буде створено нового користувача з іменем “max”;
У процесі будуть також створені:
- Нова група прав доступу за іменем користувача.
- Домашня директорія користувача /home/.
- Також утиліта попросить вказати новий пароль для користувача і додати, за бажанням, додаткові відомості.
Щоби увійти в обліковий запис новоствореного користувача необхідно виконати команду:sudo su — max
Але цей користувач поки що володіє звичайними обмеженими правами і не може виконувати дії на рівні суперадміністратора. Виходимо з облікового запису командою exit і переходимо в редагування файлу nano /etc/sudoers.
У самому кінці файлу, додаємо новий рядок: max ALL=(ALL) NOPASSWD:ALL
Зберігаємо файл CTRL+O.
Тепер можемо знову авторизуватися під новим користувачем і спробувати виконати будь-яку команду від імені root. Все повинно спрацювати.
Як налаштувати нового користувача на VPS-сервері?
Якщо ви створили нового користувача на вже існуючому VPS-сервері під управлінням Linux по інструкції вище, то додатково необхідно ще сконфігурувати SSH-ключі доступу для нього.
mkdir .ssh— створюємо теку з ключами від імені нового користувача;chmod 700 .ssh— задаємо права доступу на папку;stat .ssh— перевіряємо виставлені права доступу;sudo su -— переходимо в обліковий запис суперадміністратора Root;sudo cp /home/olduser/.ssh/authorized_keys /home/newuser/.ssh/— копіюємо файл з ключами з облікового запису вже існуючого користувача у папку нового;cd /home/newuser/.ssh/— переходимо у цю папку;chown newuser:newuser authorized_keys— змінюємо власника директорії з ключами на нового.
Тепер можна під’єднуватися до VPS-сервера в обліковий запис нового користувача, користуючись SSH-ключами вже наявного. Якщо він не потрібен — старого користувача можна видалити. Нижче буде як саме це зробити.
Як видалити користувача в Linux?
Для початку бажано перевірити список активних користувачів в системі командою who.
Щоби повністю знищити обліковий запис користувача Linux, необхідно попередньо зупинити усі фонові процеси, які прив’язані до його облікового запису. Це робиться командою sudo killall -u username
Тепер можна остаточно видалити користувача з системи: sudo userdel olduser
Після цього бажано перевантажитись: sudo reboot.
Перевірити списки користувачів Linux можна командами:
sudo cat /etc/passwd— файл, що містить у текстовому форматі список облікових записів системи (акаунтів). Є першим та основним джерелом інформації про права користувача операційної системи.cat /etc/shadow— зашифрований файл паролів, де зберігається інформація про паролі облікових записів користувачів.
Автор: © Konrad Ravenstone, KR. Laboratories Research

