Nechci ti kecat do tvého řešení, ale tohle se řeší direktivou ForceCommand v nastavení sshd.
Například takhle to mám nastaveno v sshd_config.
Match Group script-users
ForceCommand /usr/opt/script.sh
AllowTcpForwarding no
Uživatel, kterému se přes SSH má spustit místo shellu skript, je ve skupině script-users.Ještě bych podotknul, že v passwd mám pro toho uživatele nastavený login shell na /bin/false.
Snad ti to takhle bude stačit.