ssh端口转发/安全风险

我想从外部机器访问在我的办公室防火墙后面的Web服务器上运行的Web应用程序。

我们有一个运行sshd的堡垒主机,可以从Internet访问。

我想知道这个解决scheme是不是一个好主意:

  • 在堡垒主机上创build一个帐户,其中shell = / bin / false且无密码('testuser')
  • 在外部机器上创build一个ssh RSA密钥
  • 将公共RSA密钥添加到testuser的authorized_keys文件中
  • ssh到外部主机的堡垒主机使用:ssh -N 8888:targethost:80
  • 从外部主机运行我的testing
  • closuresSSH隧道

我明白,如果我的RSA私钥被攻破,那么有人可以ssh到堡垒主机。 但是还有其他的原因,这个解决scheme是一个坏主意?

谢谢!

我认为这是一个非常安全的设置,我自己使用它。 您需要将“-L”添加到您的命令中:

ssh -N -L 8888:targethost:80 

只要你不使用'-g'选项,只有你的客户机可以访问端口。

我build议也是让堡垒主机上的sshd监听一个非标准的端口。 如果你正在一个标准的端口上进行侦听,攻击stream量有时会消耗相当数量的CPU。

同时为您的ssh密钥select一个很好的密码,并只在可信的机器上input密码。 最好是Linux,在Linux上安装键盘logging程序并不重要。

我不认为这是一个坏主意。 把SSH放在22以外的端口上,你会让脚本小子更难理解,如果你是从外部的笔记本电脑进行testing,我会encryption驱动器上的东西,所以如果它被盗/丢失/等等 你不必担心数据被入侵。 否则隧道应该帮助保持东西在堡垒主机和公共webbub上的笔记本电脑之间被拦截。

Stunnel可能是一个很好的select。 您不需要机器上的帐户,也可以使用证书来validation客户端。