Было голосование, чтобы закрыть это как «неясно, что вы спрашиваете». Очевидно, что быть тщательным не очень хорошая вещь, поэтому я буду кратким:
Когда вы подключаетесь по SSH к удаленному хосту: возможно ли выполнять программу напрямую, а не в оболочке пользователя по умолчанию.
- сеть с воздушным зазором
 - каждый в сети имеет доступ к оболочке для каждой машины
 - ИТ-специалисты могут вносить любые необходимые изменения, при условии, что эти изменения не увеличат риск того, что кто-то получит корневую оболочку (помимо того, что уже возможно в любом случае).
 - В качестве доказательства того, что что-то подобное возможно: 
sftp, ssh-"подсистема", может работать без запуска оболочки пользователя по умолчанию, тогда как подсистемаscpвсе еще использует ее.- Я пытался реализовать подсистему, но она все еще выполнялась под оболочкой пользователя по умолчанию.
 
 
Я не думаю, что есть хорошее решение этой проблемы (если не считать убеждения большого количества не * nix людей отказаться от костыля, на который они опирались годами), но я решил поставить вопрос там в надежде я ошибаюсь.
Ниже приводится менее краткий вопрос.
В моем офисе большое количество людей (3-500+), которые используют разные странные и причудливые конфигурации. Очень трудно предсказать, как программное обеспечение, которое мы пишем, будет вести себя для данного пользователя, поскольку его среда может полностью нарушить наши ожидания.
Чтобы обойти это, я изменил нашу сборку, чтобы лишить пользователя среды, чтобы она не могла повлиять на сборку, и, основываясь на успехе этой стратегии, мы дополнительно обернули выполнение нашего программного обеспечения в сценарий оболочки, который делает то же самое.
К сожалению, на среду запуска все еще может влиять пользовательская среда.  Когда он выполняется удаленно, пользовательский файл .cshrc/.login обычно имеет кучу мусора, который вызывает большие задержки, прежде чем программа запуска даже начинает выполняться.
Обычно я был бы склонен сказать "исправь свое дерьмо", но мы не говорим о * nix-подкованных людях; это опора, на которую они опирались годами, и они более склонны продолжать обвинять наше программное обеспечение в своих проблемах конфигурации.
Короче говоря, я ищу способ полностью замкнуть их тупые сценарии среды.
Чтобы смоделировать эту ситуацию, я установил для моей оболочки по умолчанию tcsh и поместил hostname; sleep 10 в моем .cshrc , потом запустил несколько тестов:
- sftp не печатает / не спит - хотя целевой машиной в этом случае был Solaris, где sftp встроен в sshd, и я не думал тестировать его на компьютере с Linux.  Запуск 
ptreeдля дерева процессов, обслуживающего соединение sftp, показывает, что он не работает под оболочкой. - SCP печатает текст и спит в течение 10 секунд
 - каждый вариант выполнения команд на удаленном хосте через ssh приводит к тому, что команда запускается под оболочкой пользователя по умолчанию; Я старался:
- Очевидное - передать команду через ssh
 command=в.ssh/authorized_keys- Я сделал собственную подсистему в моем личном linux 
/etc/ssh/sshd_config 
 - Включил 
PermitUserEnvironmentна моем компьютере, чтобы попытаться установить SHELL- Не работал вообще: 
SHELL=/bin/bash ssh -o "SendEnv SHELL" localhost - Вроде работало: используйте 
environment=или~/.ssh/enviornmentдля установки SHELL- Это вроде работало в том, что SHELL был установлен, но на самом деле выполняется под моей истинной оболочкой по умолчанию
 
 
 - Не работал вообще: 
 
Мне удалось использовать netcat для пересылки оболочки через существующую сессию ssh, но похоже, что с помощью санок разбить яйцо - и грязно, и крайне неуместно.
Один человек в нашей организации предложил создать другого пользователя, который любым способом мог бы каждый войти в систему под этим именем через ssh, затем :: облачный пузырь с большим количеством ручных помахиваний :: для запуска программы от имени исходного пользователя. ,
Я немного сомневаюсь в том, чтобы сделать что-то подобное.  Это может быть не так плохо, как пересылка оболочки с помощью netcat, или что-то тяжелое и хрупкое, как временное переименование их .cshrc , но я до сих пор не люблю это.
Любые предложения приветствуются.
