Execute o comando através do SSH

3

Estou escrevendo um script para verificar se todos os servidores da minha organização estão funcionando corretamente. Um deles é o servidor de email Zimbra. Estou tentando enviar um email através do sendmail fornecido pelo pacote zimbra usando o seguinte comando

ssh Jarvice@someip echo "Hello" | /opt/zimbra/postfix-2.7.4.2z/sbin/sendmail [email protected]

Mas eu não consigo fazer isso. Eu acho que estou cometendo algum erro no

echo "Hello" | /opt/zimbra/postfix-2.7.4.2z/sbin/sendmail [email protected]

parte. Mas eu não sei o que é. Alguém pode me dizer a maneira correta de fazer isso? Como estou fazendo isso por meio de um script, certifiquei-me de que posso ssh sem fornecer a senha. Desejo automatizar totalmente o processo.

    
por Dharmit 09.01.2012 / 12:00

2 respostas

8

Seu shell local está dividindo seu comando em ssh ... e /opt/zimbra ... e, em seguida, canalizando os dois.

Você tem que citar o argumento para ssh, então seu shell local não tentará interpretá-lo e será enviado ao computador remoto em sua totalidade:

ssh Jarvice@someip "echo \"Hello\" | /opt/zimbra/postfix-2.7.4.2z/sbin/sendmail [email protected]"
    
por 09.01.2012 / 12:19
0

Existem dois métodos para enviar a linha de comando de e-mails do servidor zimbra com base nas funções do ZCS.

  1. Enviar e-mail do Zimbra MTA
  2. Enviar email do mailstore, LDAP, Proxy via MTA do Zimbra
/bin/awk ' BEGIN{\
               print "Subject:zimbra backup status (MTA to NAS) !\nFrom:ms2 <[email protected]>"\
           }{\
               printf("%s5\n", $0)\
           }' $LOG | sendmail -t "[email protected]""

Para mais informações, consulte o link abaixo link

    
por 28.09.2015 / 13:49