restrict ssh to run commands for some users
You should set up key-based authentication for your users on the ssh server.
Once you have key-based authentication configured, it's easy to set up the user's authorized_keys file to deny the user a tty using hte "no-pty" option for the key. Look at the man page for sshd and go to the AUTHORIZED_KEYS FILE FORMAT section for the available options: http://www.openbsd.org/cgi-bin/man.cgi?query=sshd&sektion=8
Use SSH keys and specify the command=
parameter in the authorized_keys
file of users who should only run some commands.
In this command=
parameter, pass a script which will check for the commands users can run.