Как настроить аутентификацию SOCKS4 через прокси-сервер Dante socks

Мне удалось настроить socks4,socks5 и socks5 с аутентификацией с использованием прокси-сервера Dante socks, но у меня нет идей, как настроить 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.

1 ответ

Метод аутентификации "имя пользователя" не поддерживается версией 4 протокола SOCKS, только SOCKS v5. Когда вы настраиваете Dante для запроса «метод: имя пользователя» от всех клиентов, вы фактически блокируете все клиенты SOCKS v4.

Другие проблемы с вашей конфигурацией заключаются в том, что SOCKS v4 не поддерживает UDP, поэтому настройки в вашем socks-правиле также не имеют большого смысла.

Вам следует настроить Dante для ведения журнала и просмотреть журналы Dante. Поскольку соединение блокируется Dante, в журналах Dante будет легче увидеть причину. Данте, вероятно, также сообщит о некоторых проблемах с вашим danted.conf в своем файле журнала.

Другие вопросы по тегам