![通用服务加密?](https://linux22.com/image/505000/%E9%80%9A%E7%94%A8%E6%9C%8D%E5%8A%A1%E5%8A%A0%E5%AF%86%EF%BC%9F.png)
有没有一种通用的方法来确保任何服务连接加密了吗?我的意思是,你可以用 HTTP 连接网络,用 SFTP 连接文件,用 SSMTP 连接邮件等等。但是,有没有办法确保任何服务都通过加密连接进行通信?有点像隧道,不过是在服务器端。
我认为 VPN 是一种选择,但可能还有其他选择,有什么建议吗?
答案1
设置任意需要保护的服务的最佳方式是使用 IPSec 隧道。您应该注意,您必须在两端设置 IPSec 属性,因此您必须配置连接到该服务的每个客户端以使用 IPSec。
答案2
为了确保与某个主机(或远程网络)的所有连接都经过加密,VPN 可能是最好的选择,但请注意,一旦 VPN 终止,从任一端传出的流量都不再加密:只有在传输过程中才是安全的。
为了确保与主机上某些特定服务的所有连接都已加密,最好的解决方案是通过禁用服务的未加密版本来禁止未加密的连接(例如,仅通过 HTTPS 提供网页,仅允许 SFTP、RequireSTARTTLS
等)。
对于 HTTP,还有进一步的选项(至少在 Apache 中)可以设置SSLRequireSSL
位置或目录,因此您可以仅有的到达那里,https://
如果您尝试通过普通方式访问它们,则会收到错误http://
。
答案3
嗯,普遍的答案是“这取决于...” :-)
我认为最好的开始方式是使用防火墙(内置或第三方)限制可以连接到您的服务器/计算机的内容,然后保护您需要的服务。
我知道许多公司正在转向 NAP(网络访问保护)并内置防火墙来保护 LAN 流量,如果是基于 Internet 的,那么我希望您按照以下步骤仅允许需要的流量。
至于“普遍”与安全的关系,我认为不存在。
还有谁?
答案4
除非你做类似的事情SSH 隧道。如果您只是想要没有VPN或隧道的服务,则服务必须支持SSL或TSL。
也可以看看: http://en.wikipedia.org/wiki/Tunneling_protocol http://www.ssh.com/support/documentation/online/ssh/winhelp/32/Tunneling_Explained.html