SSH経由でリモートコマンドを呼び出す最適な方法を探しています。ユーザー「rpcall」を作成し、新しい証明書を生成してauthorized_keysに入力します。でもう少し安全に
from="ip",no-agent-forwarding,no-X11-forwarding,no-port-forwarding,no-pty ssh-rsa ......
現在、ユーザーrpcallは端末にログインできません
ssh -l rpc 192.168.12.1
PTY allocation request failed on channel 0
しかし、任意のコマンドを実行することは可能です
ssh -l rpc 192.168.12.1 cat /etc/passwd
コマンドの実行を1つの処理スクリプトのみに制限できるソリューションはありますか?たとえば、/ home / rpcall / bin / command.sh
このユーザー用にbashシェルをセットアップし、.bashrc強制実行処理スクリプトを使用しましたが、ssh呼び出しからパラメーターを渡す方法がわかりません。
ユーザーrpcallの.bashrc
/home/rpcall/bin/command.sh $params1 $params2
exit
他のマシンからのssh呼び出し
ssh -l rpcall 192.168.12.1 "param1" "param2"
SSH_ORIGINAL_COMMAND
環境変数を介してパラメーターにアクセスできます。この方法でパラメーターをそのコマンドに渡すことができます。その環境変数を解析し、要求された作業を行うだけです。