📒 

Команда sudo, що означає «superuser do», є важливим інструментом у Linux, який надає авторизованим користувачам можливість виконувати адміністративні завдання з правами суперкористувача. Це дозволяє обмеженим користувачам тимчасово отримувати доступ до функцій, які потребують підвищених привілеїв, покращуючи безпеку системи. За замовчуванням, щоразу, коли використовується sudo, користувачеві потрібно ввести пароль, щоб підтвердити свою особу та отримати тимчасові права суперкористувача. Цей механізм додає додатковий рівень безпеки, запобігаючи несанкціонованому доступу до критичних функцій системи. Однак у деяких випадках ви можете вимкнути запит пароля для певних команд або користувачів, наприклад, щоб автоматизувати завдання або спростити виконання часто використовуваних команд. У цьому посібнику ми детально розглянемо, як можна налаштувати sudo, щоб не вимагати запиту пароля для певних команд або користувачів, а також практичні приклади та сценарії, коли це може бути корисним.

Будь ласка, зверніть увагу : вимикання запиту пароля для sudo слід виконувати з обережністю. Надайте цей привілей лише довіреним користувачам і певним командам для забезпечення безпеки системи. Ми рекомендуємо вам детально прочитати документацію перед початком цієї процедури.

Існує кілька методів виконання цієї процедури. Кожен метод буде описано нижче докладно та з прикладами коду.

Спосіб 1: тимчасове відключення запиту пароля

Якщо ви хочете тимчасово вимкнути запит пароля для поточного сеансу, ви можете використовувати параметр -S із sudo.

sudo -S

Спосіб 2: Вимкнення запиту пароля для всіх команд

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

Крок 1. Відкрийте файл sudoers для редагування:

sudo visudo

Крок 2. Додайте рядок, щоб вимкнути запит пароля:

Щоб вимкнути запит пароля для певного користувача (наприклад, jane) для всіх команд, додайте наступний рядок під рядком Defaults :

alexhostcom ALL=(ALL) NOPASSWD: ALL

  • Замініть alexhostcom ім’ям користувача.

Крок 3: Збережіть і вийдіть з редактора

Спосіб 3. Редагування файлу sudoers

Файл sudoers, зазвичай розташований у /etc/sudoers, містить конфігурацію доступу до sudo. Щоб вимкнути запит пароля, ви можете відредагувати цей файл.

Крок 1. Відкрийте файл sudoers для редагування:

sudo visudo

Крок 2. Знайдіть рядок «За замовчуванням».

У файлі sudoers знайдіть рядок, який починається з Defaults.

 

Крок 3. Додайте рядок, щоб вимкнути запит пароля

Щоб вимкнути запит пароля для певного користувача (наприклад, john) під час виконання певної команди (наприклад, /usr/bin/command), додайте наступний рядок під рядком Defaults :

alexhost ALL=(ALL) NOPASSWD: /usr/bin/command

Потім замініть alexhost на ім’я користувача та /usr/bin/command на фактичну команду, яку ви хочете виключити з запиту пароля.

Крок 4: Збережіть і вийдіть з редактора

Спосіб 4: Уникнення запиту пароля для певних користувачів

Щоб повністю уникнути запиту пароля для певного користувача, ви можете змінити конфігурацію sudo, щоб встановити довший час очікування для збереження пароля.

Крок 1. Відкрийте файл sudoers для редагування

sudo visudo

Крок 2. Додайте рядок для встановлення timestamp_timeout:

Під рядком Defaults додайте наступний рядок, щоб встановити timestamp_timeout на більше значення (у хвилинах):

Defaults        timestamp_timeout=30

  • Цей приклад встановлює час очікування на 30 хвилин. За потреби відрегулюйте значення.

Крок 3: Збережіть і вийдіть з редактора.

Ця зміна дозволить користувачам виконувати команди sudo без введення пароля протягом зазначеного часу після їх першої команди sudo.