我可以使用Dante socks代理配置带有身份验证的socks4、socks5和socks5,但我不知道如何使用身份验证配置socks4。我知道socks_v4代理只支持userId(不支持密码(。
我的danted.conf文件如下所示:
logoutput: syslog
internal: eth0 port =1081
external: eth0
user.privileged: root
user.unprivileged: nobody
socksmethod: username
clientmethod: none
client pass {
from: 0.0.0.0/0
to: 0.0.0.0/0
log: error
}
socks pass {
from: 0.0.0.0/0
to: 0.0.0.0/0
command: bind connect udpassociate
protocol: tcp udp
proxyprotocol: socks_v4
log: error
socksmethod:username
}
我得到错误
#username and password
curl -x socks4://user1:user1@x.2xx.1xx.x:1081 http://google.com
curl: (7) Can't complete SOCKS4 connection to 142.250.73.206:80. (91), request rejected or failed.
#just username
curl -x socks4://user1@x.2xx.1xx.x:1081 http://google.com
curl: (7) Can't complete SOCKS4 connection to 142.250.73.206:80. (91), request rejected or failed.
#no auth
curl -x socks4://x.2xx.1xx.x:1081 http://google.com
curl: (7) Can't complete SOCKS4 connection to 142.250.73.206:80. (91), request rejected or failed.
身份验证方法"用户名";不受SOCKS协议版本4的支持,仅受SOCKS v5的支持。当您将Dante配置为要求";方法:username;从所有客户端,您实际上阻止了所有SOCKS v4客户端。
配置的其他问题是SOCKS v4不支持UDP,因此袜子规则中的设置也没有多大意义。
您应该将Dante配置为日志,并查看Dante日志。由于是Dante阻止了连接,因此在Dante日志中可以更容易地看到原因。Dante可能还会在其日志中报告您的danted.conf的一些问题。