手元のマシンからリモートにプログラムをアップロードして、実行するシェルを作成しました。

#/bin/sh
scp prgoram 192.168.0.1:~ 
ssh 192.168.0.1 "./program" 

しかし、これだとリモートサーバに二回接続するため、認証鍵のパスフレーズを二回入力しなくてはいけません。

これは手間なので、一回にしたいです。
なにか方法はないでしょうか。

なお、ControlPersist で一定時間接続を維持しておくのは避けたいです。
https://rcmdnk.com/blog/2015/05/13/computer-remote/