如何只允许访问与活动,build立ssh连接的nginx?

我一直在尝试,并没有find办法做到这一点。 我正在设置一个服务器pipe理基于Web的控制面板(沿着webmin的方向),但试图添加一个非常难以欺骗的安全措施,这对访问者来说基本上是透明的,并且是空的。 我脑子里有一个想法,听起来很合适,但是对于一个真正可行的解决scheme而言,这是一个损失。

我有端口敲门设置上的SSH密钥的唯一身份validation。 攻击企图几乎为零。 我很满足于ssh安全措施,但是对nginx带来同样的安全性已经certificate是徒劳的。

是否有可能设置类似于端口敲门的东西,只有一个用户主动login到SSH有一个端口打开http? 我不能简单地使用ESTABLISHED,因为我想要求在ssh中进行身份validation。

理想的解决scheme可以这样工作…

  • 没有ssh连接 – > DROP尝试访问nginx端口
  • 活动的ssh连接,未经过authentication – > DROP尝试访问nginx端口
  • 主动ssh连接,authentication – > ACCEPT nginx端口连接

我意识到终止会话会导致活动切换到DROP,这是可以接受的。

最近的解决scheme我已经能够想到通过cron扫描ssh日志并在运行中修改iptables,但是需要一个更好的方法。 如果没有其他的东西,请打开想法,指向正确的方向。


你可以编辑你的问题,给你一些关于为什么你需要这个安全级别的背景吗? 这似乎是矫枉过正。 – Tim

我提到服务器pipe理ala Webmin。 简而言之,php / py脚本可以访问服务器内部,如iptables,/ etc修改,关机/重启,日志parsing器,其他维护工具。 访问需要sudo到服务器本身,因此,希望保持它的极端保护。