среда, 28 августа 2013 г.

Установка и настройка sudo в CentOS

После установки CentOS в системе присутствует только пользователь root, использование которого нежелательно по соображениям безопасности. Для того, чтобы обезопасить сервер нужно создать обычного пользователя, который, при необходимости, смог бы повышать свои полномочия до уровня суперпользователя. Использование команды sudo позволяет сделать это, сохраняя пароль суперпользователя в тайне.

Прежде всего нужно установить пакет sudo, который доступен в базовых репозиториях CentOS.
yum install sudo
После того, как пакет установлен необходимо создать пользователя и создать для него пароль.
useradd oldfag -m -s /bin/bash
passwd oldfag
После того, как пользователь создан, его необходимо добавить в группу wheel, что позволит ему, при необходимости, повысить свои полномочия до уровня суперпользователя. Сделать это можно двумя способами:
  1. отредактировать файл /etc/group, дописав в строку после запятой имя нового пользователя
    nano /etc/group
    wheel:x:10:root,oldfag
    
  2. выполнить команду
    usermod -aG 'wheel' oldfag
    
Команда sudo, в отличие от su, позволяет назначить каждому пользователю или группе список разрешённых команд. Все настройки sudo хранятся в файле /etc/sudoers.

Перед тем, как редактировать /etc/sudoers необходимо разрешить возможность его редактирования.
chmod +w /etc/sudoers
nano /etc/sudoers
Для того, чтобы разрешить группе wheel выполнять любые действия нужно раскомментировать строку
%wheel  ALL=(ALL)       ALL
После сохранения изменений нужно убрать возможность редактирования файла, на всякий случай.
chmod -w /etc/sudoers
Теперь пользователь может выполнять команды от имени администратора, выполнив команду
sudo -i
и введя свой пароль.

После того, как создан новый пользователь, установлен и настроен пакет sudo, необходимо запретить пользователю root подключаться по ssh. Для этого в секции Authentication файла /etc/ssh/sshd_config раскомментировать строку "PermitRootLogin no", после чего перезапустить SSH-сервер командой.
 service sshd restart
Останавливается sshd:                                      [  OK  ]
Запускается sshd:                                          [  OK  ]
Подробную справку о командах и структуре файла /etc/sudoers можно прочитать на OpenNet или выполнив в консоли команду
man <имя команды>.

1 комментарий:

  1. отредактировать файл /etc/group, дописав в строку после запятой имя нового пользователя
    nano /etc/group
    wheel:x:10:root,oldfag

    Вместо этого правильно будет: groupadd или addgroup

    Вместо этого:
    chmod +w /etc/sudoers
    nano /etc/sudoers

    Правильно будет: visudo
    Даже в самом файле об этом пишут, если не устраивает редактор vi - можно выставить свой, для этого в env есть переменная EDITOR.

    А в целом неплохая заметка :)

    ОтветитьУдалить