Как написать socks5 прокси сервер?

Пишу socks5 сервер на rust. Настроил firefox для работы с прокси socks5. Есть проблема в подключении по https. Если перехожу на сайт с https, то во время аутентификации между прокси и firefox, браузер передает прокси такие данные [5, 1, 0, 1, 45, 79, 137, 62, 1, 187, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0]. Где "45, 79, 137, 62," - ip адрес сервера. А "1, 187," - номер порта, как описанно в спецификации протокола. Если пробывать подключится по порту 187 или 1187, то подключение не удастся. Если провыть подключиться по порту 443, то подключится удастся, а вот отправить и получить данные нет. C сайтами без защиты ssl, такого не происходит, подключаюсь и передаю данные без проблем. В чем может быть проблема? Буду рад любой помощи, заранее спасибо. Если нужно будет прикрепить код, прикреплю.
  • Вопрос задан
  • 218 просмотров
Пригласить эксперта
Ответы на вопрос 1
Tyranron
@Tyranron
А "1, 187," - номер порта, как описанно в спецификации протокола. Если пробывать подключится по порту 187 или 1187, то подключение не удастся. Если провыть подключиться по порту 443

В приведенной же Вами ссылке на Wikipedia о спецификации протокола SOCKS5 написано:
2 байта Номер порта, в порядке от старшего к младшему (big-endian)

Соответственно, 1 и 187 в big endian и будет 443.

Если провыть подключиться по порту 443, то подключится удастся, а вот отправить и получить данные нет. C сайтами без защиты ssl, такого не происходит, подключаюсь и передаю данные без проблем.

Вот здесь сложно ткнуть пальцем в небо. Хотелось бы увидеть более подробную информацию на что ругается сервер. Возможно проблемы с хэндшейком какие, возможно ещё чего.
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы