Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/ssh/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
仅为一个应用程序服务的SSH服务器_Ssh_Openssh - Fatal编程技术网

仅为一个应用程序服务的SSH服务器

仅为一个应用程序服务的SSH服务器,ssh,openssh,Ssh,Openssh,我想设置一个Linux box,这样当您使用ssh连接到它时,您就可以与特定的应用程序交谈,而不是与shell交谈 也就是说,我想告诉用户登录到user\u级别_stuff@mybox,他们得到了一些漂亮的超级保险箱(用于他们和我的箱子)应用程序。根据偏好,我希望在非传统端口(即,不是端口22)上使用此功能,但我可以不使用它。让我的应用程序成为一个ssh服务器是可以的,只要它可以在我的盒子上与一个通用ssh服务器共存。有一条通向外壳的路线,无论是错误的还是恶意的,都是一件坏事 如何做到这一点?您

我想设置一个Linux box,这样当您使用ssh连接到它时,您就可以与特定的应用程序交谈,而不是与shell交谈

也就是说,我想告诉用户登录到
user\u级别_stuff@mybox
,他们得到了一些漂亮的超级保险箱(用于他们和我的箱子)应用程序。根据偏好,我希望在非传统端口(即,不是端口22)上使用此功能,但我可以不使用它。让我的应用程序成为一个ssh服务器是可以的,只要它可以在我的盒子上与一个通用ssh服务器共存。有一条通向外壳的路线,无论是错误的还是恶意的,都是一件坏事


如何做到这一点?

您可以将用户的shell设置到应用程序中;因此,在登录时,您不用启动
/bin/bash
,而是启动自己的应用程序
sudo usermod--shell/path/to/your/app name\u用户
问题是“SSH”中的“SH”代表“shell”。也许您可以运行一个独立的守护进程来侦听端口,当收到连接时,它启动目标进程并将TCP流通过管道传输到进程的stdio?但是,您将丢失SSH的身份验证和加密。我要保留的正是身份验证和加密。