ubuntu - Dante 代理无法在 ubuntu 18.04 上运行,导致协商超时
问题描述
我使用本指南https://gist.github.com/gpchelkin/c7d24a21639d1f120fb082d1801a5fe4在 ubuntu 18.04 上配置 Dante 服务器,但是当我想从客户端连接时出现此错误
curl -v -x socks5://user:pass@server:1080 http://www.google.com
* Rebuilt URL to: http://www.google.com/
* Trying server-ip...
* TCP_NODELAY set
* SOCKS5 communication to www.google.com:80
* Unable to receive initial SOCKS5 response.
* Closing connection 0
curl: (7) Unable to receive initial SOCKS5 response.
在但丁日志中,我得到
Dec 03 09:12:56 danted[17829]: info: block(1): tcp/accept ]: client-ip.48601 server-ip.1080: negotiate timeout after 31 seconds
另外,我的配置是
logoutput: syslog
user.privileged: root
user.unprivileged: nobody
internal: 0.0.0.0 port = 1080
external: ens32
socksmethod: username
clientmethod: none
user.libwrap: nobody
client pass {
from: 0/0 to: 0/0
log: connect disconnect error
}
socks pass {
from: 0/0 to: 0/0
log: connect disconnect error
}
感谢您的帮助
解决方案
可能有防火墙阻止 Dante 和客户端之间的数据,允许初始 TCP/IP 握手完成,但没有进一步的数据流动。
诊断可以通过在 Dante 中启用调试模式(“-d2”)并查看 Dante 日志文件,或者使用 tcpdump(8) 或 wireshark(8) 来查看 Dante 接收和发送的网络数据包。
推荐阅读
- python - Python - 如何将一系列用户输入放入函数中
- linux - 从 Ubuntu 20.04LTS 卸载 Julia
- reactjs - 没有从 React.useEffect 中的 React.useContext 获得正确的值
- python - 将向量转换为矩阵
- javascript - 不使用 forEach 循环高阶函数
- java - 如何同步线程池?
- javascript - 时刻没有自动使用本地
- java - C++ 等价于 Java >>>=? 和 varint 的问题
- python - 插值后将特征叠加到 matplotlib 图的问题
- javascript - 处理对象时如何组合/管道函数?