Crie um script de shell que execute o comando remoto:
% cat > /home/transfer/exec-remote-sw <<EOF
#!/bin/bash
ssh transfer@ServerB script $1 $2
EOF
% chmod 755 /home/transfer/exec-remote-sw
Teste este script executando-o como o transfer
user:
% /home/transfer/exec-remote-sw arg1 arg2
Agora, como root, crie um grupo do Linux (por exemplo, transfer
) e adicione todos os usuários que precisam acessar essa funcionalidade no grupo Unix:
% groupadd transfer
% usermod -a -G transfer login1
% usermod -a -G transfer login2
...
% usermod -a -G transfer loginN
Como root, anexe o seguinte ao arquivo /etc/sudoers
executando visudo
:
%transfer serverA = (transfer) NOPASSWD: /home/transfer/exec-remote-sw
Teste fazendo login como um dos usuários no grupo de transferência e executando:
% sudo -u transfer /home/transfer/exec-remote-sw arg1 arg2
Para simplificar isso para seus usuários, peça-lhes que incluam o seguinte em seus arquivos .profile (ou inclua em / etc / profile para todos):
alias svrbexec="sudo -u transfer /home/transfer/exec-remote-sw"
Os usuários podem digitar:
% svrbexec arg1 arg2
e o processo remoto deve ser executado com seus dois parâmetros passados.