Acessar remoto e executar comandos pelo acesso através de script

1. Acessar remoto e executar comandos pelo acesso através de script

Bruno Medeiros Lacet
brunolacet

(usa Debian)

Enviado em 21/05/2015 - 11:29h

Pessoal,

Tenho um servidor com o OTRS instalado e como é um APPLIANCE, quando configuro o crontab nele, ao reiniciar ele volta a configuração inicial apagando tudo que alterei.

Devido a esse problema, gostaria de criar um script para rodar a partir de outro servidor linux com a intenção de acessá-lo remotamente passando comandos de realizar um backup do banco de dados do OTRS.

Para realizar o backup, é necessário a conta "postgres" ativa, comando que uso para ativar: "su postgres"
Comando que uso para fazer o backup do banco: "pg_dump <nome do banco> > <nome do arquivo do backup>"

Gostaria de saber, se alguém sabe fazer esse procedimento de acessar via SSH e executar esses dois comandos através de script.
Para rodar esse script, gostaria de utilizar o crontab.

Espero que tinha sido claro o suficiente para alguém me ajudar.

Att,
Bruno Lacet




  


2. Re: Acessar remoto e executar comandos pelo acesso através de script

Vinicius Medina
viniciusmedina

(usa Fedora)

Enviado em 21/05/2015 - 14:48h

Vamos Lá, primeiramente o essencial é você criar uma autenticação SSH de confiança entre os hosts para que não seja solicitado senha no momento do Login;

Copiar chave do cliente para servidor;
# scp /root/.ssh/id_rsa.pub root@192.168.1.104:/root

No servidor;
# cat id_rsa.pub >> /root/.ssh/authorized_keys

Depois só realizar um script que execute o comando;
ssh usuario@xxx.xxx.xxx.xxx "/usr/sbin/pg_dump <nome do banco> > <nome do arquivo do backup>"

Até!


3. Re: Acessar remoto e executar comandos pelo acesso através de script

Bruno Medeiros Lacet
brunolacet

(usa Debian)

Enviado em 21/05/2015 - 16:38h

viniciusmedina escreveu:

Vamos Lá, primeiramente o essencial é você criar uma autenticação SSH de confiança entre os hosts para que não seja solicitado senha no momento do Login;

Copiar chave do cliente para servidor;
# scp /root/.ssh/id_rsa.pub root@192.168.1.104:/root

No servidor;
# cat id_rsa.pub >> /root/.ssh/authorized_keys

Depois só realizar um script que execute o comando;
ssh usuario@xxx.xxx.xxx.xxx "/usr/sbin/pg_dump <nome do banco> > <nome do arquivo do backup>"

Até!



Olá Vinícius,

Eu sei que via putty geramos essa chave, mas no linux... como gero? Porque não tem esse arquivo id_rsa.pub.

Obg.
Bruno Lacet



4. Re: Acessar remoto e executar comandos pelo acesso através de script

Bruno Medeiros Lacet
brunolacet

(usa Debian)

Enviado em 09/06/2015 - 16:52h

viniciusmedina escreveu:

Vamos Lá, primeiramente o essencial é você criar uma autenticação SSH de confiança entre os hosts para que não seja solicitado senha no momento do Login;

Copiar chave do cliente para servidor;
# scp /root/.ssh/id_rsa.pub root@192.168.1.104:/root

No servidor;
# cat id_rsa.pub >> /root/.ssh/authorized_keys

Depois só realizar um script que execute o comando;
ssh usuario@xxx.xxx.xxx.xxx "/usr/sbin/pg_dump <nome do banco> > <nome do arquivo do backup>"

Até!


Blz Vinícius,

Dei uma pesquisada sobre o ssh-keygen e consegui criar esse arquivo e resolver o acesso sem senha.
Agora consigo acessar sem pedir senha.

Agora um outro problema é que para executar esse comando precisa ser com o usuário postgres acessado e não consegue acessar nem a pau.
Tem alguma solução para conectar via ssh dando um SU alterando o usuário?

Att,
Bruno Lacet






5. Re: Acessar remoto e executar comandos pelo acesso através de script

Wellingthon Dias Queiroz - @tonyhts
tonyhts

(usa Arch Linux)

Enviado em 22/06/2015 - 15:01h


Olá !

Acho que assim róla:

ssh root@xxx.xxx.xxx.xxx  'su -c "/usr/sbin/pg_dump <nome do banco> > <nome do arquivo do backup>" -s /bin/sh postgres' 



abs!






Patrocínio

Site hospedado pelo provedor RedeHost.
Linux banner

Destaques

Artigos

Dicas

Tópicos

Top 10 do mês

Scripts