Работа с sudo для HP-UX


Установка ПО

Необходимое ПО загружается с сайта: http://hpux.connect.org.uk. Перед загрузкой необходимо определить версию ОС и архитектуру сервера:

server# uname -an

Через поиск на указанном сайте найти sudo. Скачать пакет и зависимости для него, согласно версии ОС и архитектуре, например:

gettext-0.18.2.1-ia64-11.31.depot.gz
make-3.82-ia64-11.31.depot.gz
zlib-1.2.8-ia64-11.31.depot.gz
libiconv-1.14-ia64-11.31.depot.gz
sudo-1.8.6p8-ia64-11.31.depot.gz

Распаковать и установить эти пакеты, учитывая их взаимную зависимость:

server# swinstall -s ./make-3.82-ia64-11.31.depot
server# swinstall -s ./gettext-0.18.2.1-ia64-11.31.depot
server# swinstall -s ./libiconv-1.14-ia64-11.31.depot
server# swinstall -s ./zlib-1.2.8-ia64-11.31.depot
server# swinstall -s ./sudo-1.8.6p8-ia64-11.31.depot

Настройка ПО

Файлы sudo будут установлены в директорию /usr/local:

/usr/local/bin/sudo
/usr/local/sbin/visudo
/usr/local/etc/sudoers

Создать группу пользователей sudo, дать ей право на запуск команды, добавить пользователя к этой группе:

server# groupadd -g 300 sudo
server# useradd -u 300 -c "sudo user" -d /home/super -g sudo super
server# mkdir /home/super
server# cat > /home/super/.profile
export PATH=$PATH:/usr/local/bin
export PS1=super@`uname -n`':$PWD# '
server# chown -R super:sudo /home/super
server# passwd super

server# /usr/local/sbin/visudo -f /usr/local/etc/sudoers
root ALL=(ALL) ALL
Defaults env_keep += "HOME"
Defaults secure_path="/bin:/sbin:/usr/bin:/usr/sbin"
%sudo ALL=(ALL) NOPASSWD: ALL

server# chgrp sudo /usr/local/etc/sudoers

Запрет удалённого доступа учётной записью root

Изменить конфигурационный файл демона sshd, перезапустить демон sshd:

server# echo "PermitRootLogin no" >> /opt/ssh/etc/sshd_config
server# /sbin/init.d/secsh stop
server# /sbin/init.d/secsh start

Запрет прямого доступа учётной записью root

Предостережение Откатить изменения назад будет сложно!

Создать пустой файл /etc/securetty

server# touch /etc/securetty

Запрет использования небезопасных протоколов удалённого доступа

Закомментировать в файле /etc/inetd.conf строки с нежелательными протоколами/сервисами, перезапустить демон inetd:

server# vi /etc/inetd.conf
...
#telnet stream tcp nowait root /usr/lbin/telnetd
#login stream tcp nowait root /usr/lbin/rlogind
#shell stream tcp nowait root /usr/lbin/remshd
#exec stream tcp nowait root /usr/lbin/rexecd

server# inetd -c