como executar o shell em um servidor remoto com privilégio de root

3

Eu quero executar um script de shell em um servidor remoto, e o script deve ser executado pelo root sem necessidade de senha (ou use sudo no script). Alguém pode me dar algumas sugestões?

    
por Dan 24.04.2012 / 09:54

3 respostas

6

Além das soluções com sudo , isso pode ser amigável ao script (nenhum prompt de senha extra para comandos específicos) ou setuid soluções que não são fáceis de fazer, sugiro o uso da autorização de chave pública ssh com o comando = restriction.

Para isso, você precisa habilitar o login sem senha para o usuário root se ainda não tiver concluído ( PermitRootLogin without-password in /etc/ssh/sshd_config ) e adicionar sua chave pública ssh (ou melhor, um especial para este caso criado) a /root/.ssh/authorized_keys com um comando = argumento como descrito em esta resposta .

    
por 24.04.2012 / 10:37
2

Você não precisa colocar sua senha de root no script.

Solução A

suide seu script no servidor e torne-o somente / legível por root ou pelo seu grupo de usuários.

chmod 4750 script.sh
chgrp your_group script.sh

Não se esqueça de se juntar ao seu usuário nesse grupo.

E você usa ssh user@XXXX '/path/to/script.sh' para executar o script.

Solução B

Crie uma chave SSH e copie a chave pública para o servidor remoto. Desta forma, você terá que fazer o login como root, mas também sem senha. (Lembre-se de descriptografar sua chave privada com o openssl)

É muito perigoso perder sua chave privada.

    
por 25.04.2012 / 04:46
0

A solução de salvamento sem usuários raiz

no cliente gera uma chave ssh

cliente: ssh-keygen

copie para o servidor

servidor: mkdir ~/.ssh

cliente: scp ~/.ssh/id_rsa.pub serveruser@server:~/.ssh/authorized_keys

permitir sudo sem senha para seu usuário

servidor:

visudo
    serveruser ALL=(ALL) NOPASSWD: /usr/bin/foo /usr/sbin/bar

agora você pode executar comandos como esse

cliente: ssh serveruser@server 'sudo foo && bar'

// alguns servidores meus requerem ssh -t ... para usar o sudo

    
por 11.01.2015 / 14:30

Tags