Eu gostaria de criar um novo usuário em alguns dos meus hosts Debian / Ubuntu que é capaz de atualizar o servidor usando os comandos apt-get update
e apt-get dist-upgrade
, mas não quero dar a eles acesso total ao sudo para poder fazer qualquer outra coisa. Isso é possível? Talvez haja uma maneira de criar um script que eles não podem editar, mas podem executar, o que será executado como usuário root?
permissions
sudo
privileges
Programador
fonte
fonte
man sudoers
esudo cat /etc/sudoers
.Respostas:
Sudo
e o/etc/sudoers
arquivo não serve apenas para garantir aos usuários acesso total à raiz.Você pode editar o arquivo sudoers com um usuário sudo existente, com o comando
sudo visudo
Você pode agrupar os comandos aos quais deseja conceder acesso, como abaixo:
Você pode então conceder privilégios de usuário específicos a esses comandos, como:
Isso pode ser visto na imagem abaixo :
Agora, se você tentar
sudo apt-get update
ousudo apt-get dist-upgrade
esses comandos serão executados sem solicitar uma senha . Se você deseja que seja solicitada uma senha, remova oNOPASSWD
bit em que você concede ao usuário acesso aos grupos de comandos.Se você tentar executar qualquer outra coisa como
sudo
usuário, será solicitada uma senha e falhará.Referências
fonte
apt-get
, ou mesmo meramenteapt-get upgrade
, lhes dá acesso root completo ! Muitos scripts de atualização permitem ao usuário interativo executar um shell, por exemplo, quando um arquivo de configuração é alterado. Para ser seguro, restrinjaapt-get
a determinados comandos e force-o a não ser interativo. Consulte É seguro que meu usuário ssh receba sudo sem senha paraapt-get update
eapt-get upgrade
?%sudo ...