基本用户名验证对于 Dante SOCKS 代理来说足够吗?

基本用户名验证对于 Dante SOCKS 代理来说足够吗?

因此,我正在为 DO 中的几个虚拟机上的 WebSocket 连接和一些 HTTP 调用创建 SOCKS5 代理。这个想法是来自 K8S 集群的流量将通过代理,这样我就可以将终端服务上的 IP 列入白名单。我创建代理是因为 DigitalOcean 还没有 CloudNAT 或类似功能。

我还创建了两个代理服务器以实现冗余,并将使用 pacemaker + corosync。为此,我必须使用 DigitalOcean 保留(浮动)IP 功能。因此,代理将始终连接到公共 IP,而我无法在 VPC 中执行此操作,因为代理只能接受来自私有网络的连接。

所以我的问题是 - 基本用户名验证是否足以保证安全?这是我的 Dante 配置。

logoutput: syslog
#user.privileged: root
user.unprivileged: nobody

# The listening network interface or address.
internal: 0.0.0.0 port=7171

# The proxying network interface or address.
external: eth0

# socks-rules determine what is proxied through the external interface.
socksmethod: username

# client-rules determine who can connect to the internal interface.
clientmethod: none

client pass {
    from: 0.0.0.0/0 to: 0.0.0.0/0
}

socks pass {
    from: 0.0.0.0/0 to: 0.0.0.0/0
    user: prxuser
}

此外,我知道还有其他 HTTP 解决方案支持 websocket 连接,但目前我只能使用 SOCKS。

我将非常感激任何帮助!

答案1

我刚刚使用 DigitalOcean 防火墙仅允许来自我们的 k8s 集群的传入流量。这对于安全来说应该足够了。

相关内容