Como atribuir direitos de usuário root?

0

Eu tenho o Suse Linux na minha área de trabalho. Então eu sou root e usuário "normal". Frequentemente, por ex. para iniciar o tomcat ou instalar / remover um programa, devo usar sudo ou alternar para superusuário. Mas eu defini muitos aliases em .bashrc , caminho em .profile etc.

É possível atribuir ao usuário normal alguns direitos de superusuário? Por exemplo. instalar o programa?

    
por user710818 01.07.2012 / 21:42

2 respostas

5

Sim, mas é a pior coisa que você pode fazer. Existem diferentes usuários com diferentes permissões no seu sistema operacional. E isso é de propósito. Dar permissões de root ao seu usuário permanentemente comprometerá a segurança do sistema. (Lembre-se do Windows 9x e todos os vírus?)

Executar um comando com sudo não precisará de nenhum dos seus itens de personalização, a menos que você execute /bin/sh (um shell).

Para conseguir o que você queria, você pode fazer o seguinte:

Você pode mover suas coisas de ~/.bashrc e ~/.profile para o sistema /etc/bash/bashrc e /etc/profile ou, melhor ainda, colocá-las em um script separado em /etc/profile.d/mystuff.sh (não se esqueça de chmod +x /etc/profile.d/mystuff.sh ). Esses arquivos serão executados para cada sessão de login.

Em seguida, inicie uma sessão raiz com su - , o sinal - (menos) passado para su executará uma sessão de login e, portanto, executará os arquivos mencionados acima. Dependendo da sua distribuição Linux, você pode precisar chamar sudo su - .

Quando você terminar a sessão raiz, é uma boa ideia para logout e deixar as permissões de root.

Existe outra maneira, se você precisar de permissões de root apenas para binário específico, chamado de UID Efetivo. Por exemplo, você pode usar isso para mtr binary:

chmod a+s 'which mtr'

Desta forma, quando você executar o binário mtr , ele receberá permissões efetivas do usuário que possui a raiz binária neste caso ( chown root /path/to/mtr ). Ele salvará a digitação do sudo, mas você deve escolher cuidadosamente qual binário você dará permissões de root. É perigoso se você não conhece o risco. Melhor usar a primeira opção.

    
por 01.07.2012 / 21:59
2

A inicialização do tomcat deve ser feita em um init-script . Se você quiser dar a um grupo de usuários o direito de (re) iniciar o tomcat, adicione uma linha ao / etc / sudoers usando visudo . Isso pode parecer com:

%tomcatcontrol localhost = NOPASSWD : /etc/init.d/tomcat *

Substitua localhost pelo nome da sua máquina. Em seguida, cada usuário do grupo tomcatcontrol poderá emitir:

sudo /etc/init.d/tomcat restart (ou status, ou parar ou iniciar).

É para isso que o sudo é. Se você quer trabalhar mais com a conta root, você pode fazer su - . Se você quiser que outros usuários realmente gerenciem o conteúdo do tomcat (arquivos pertencentes ao usuário tomcat), você pode permitir um su - tomcat para um usuário ou grupo de usuários.

Quanto aos seus aliasses - eu acho que o OpenSuSE tem /etc/profile.local para esse propósito: Lá você pode colocar coisas que devem ser válidas para cada usuário.

    
por 01.07.2012 / 22:36