После установки CentOS в системе присутствует только пользователь root, использование которого нежелательно по соображениям безопасности. Для того, чтобы обезопасить сервер нужно создать обычного пользователя, который, при необходимости, смог бы повышать свои полномочия до уровня суперпользователя. Использование команды sudo позволяет сделать это, сохраняя пароль суперпользователя в тайне.
Прежде всего нужно установить пакет sudo, который доступен в базовых репозиториях CentOS.
yum install sudo
После того, как пакет установлен необходимо создать пользователя и создать для него пароль.
useradd oldfag -m -s /bin/bash passwd oldfag
После того, как пользователь создан, его необходимо добавить в группу wheel, что позволит ему, при необходимости, повысить свои полномочия до уровня суперпользователя. Сделать это можно двумя способами:
- отредактировать файл /etc/group, дописав в строку после запятой имя нового пользователя
nano /etc/group wheel:x:10:root,oldfag
- выполнить команду
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 <имя команды>.