我想阻止人们绕过Opendns和鱿鱼代理块来在Facebook上使用SSH隧道到他们的PC家。 我知道我可以解决这个问题,但是我也想更好地理解技术上的可能性。
除了需求(邮件服务器,代理服务器,DNS服务器等)允许的以外,您需要在防火墙上为所有TCP和UDP端口设置出站(出站)过滤。
如果你的用户能够创buildssh隧道到他们的家庭设备,那么你将无法使用技术来做到这一点,除非你可以拿走允许他们这样做的工具。 你所能做的就是和他们进行一场军备竞赛。
你将不得不让你的pipe理参与 – 这是他们的问题处理。
基本上,你不能解决这个问题。 当有一个开放的港口时,人们可以创build隧道。 我自己通过TCP 443使用OpenVPN,因为它总是打开的。 替代品是通过其他协议,如ICMP或DNS。
用足够聪明的用户,你不能阻止互联网的一部分。 (好吧,也许中国可以;))如果你不希望工人上网,阻止网页浏览。 如果他们需要他们的工作,你必须生活在他们可以进入Facebook的事实。 最后的办法是为每个去脸书的人创造惩罚,但我个人不想在这样的公司工作。
Gravyface是正确的。
否则,也许DPI(深度包检测)可能有一种模式来识别来自其他SSHstream量的隧道,但这些设备是昂贵的。
也许您可以使用TOS(服务types)从交互式SSH识别批量SSH,并应用一些不良的QoS规则。 不利的一面是你也会影响scp / sftp会话。
隧道应该散装。
这是一个政策问题,而不是技术问题。 您正确地指出了一个明显的方法,用户可以绕过技术上可能放置在networking上的任何限制。
一些百分比的用户将无法弄清楚隧道方式,这些应该更容易包含在DNS黑名单或等价物中。 谁会绕过你的限制的技术用户需要用不同的方法来处理。
考虑为什么你需要阻止这种交通,然后在这条路上走得太远。