Escreva um programa que só ofereça aos usuários as opções que você deseja que eles tenham. Faça desse programa o shell para os usuários que eles acessam.
Eu tenho um servidor de vídeo Linux embutido que acabei de terminar. Uma das características é que eu tenho um servidor telnet e também o getty ligado a uma porta rs232 na qual um usuário pode efetuar login para chamar alguns programas que escrevi para fins de configuração do servidor. O objetivo é ser um backdoor para os usuários se, por algum motivo, o SDK que desenvolvi não estiver funcionando ou eles apenas tiverem comprado o servidor e não tiverem um programador para colocar o SDK em uso. Há também uma interface web, mas seja qual for, a especificação diz que eu tenho que ter uma.
Então, por exemplo, eu escrevi um programa chamado getIp que permite ao usuário recuperar as configurações de rede e setIp, que permite que eles definam o IP. Eu tenho um programa ou script similar para cada função que minha API baseada em .NET já faz.
No entanto, não quero que eles sejam capazes de executar outros programas além destes. ou seja, eu nem quero que 'ls' ou 'cd' funcionem. Eu daria a eles um nome de usuário, digamos "admin", para acessar a sessão com. A questão é: como configuro essas restrições?
Tags authentication telnet linux