RFC: 1928
Оригинал: SOCKS Protocol Version 5
Категория: Предложенный стандарт
Дата публикации:
Авторы: , , , , ,
Перевод: Александр Горлач

RFC 1928, Страница 3 из 8

Процедура для клиентов работающих по TCP

Когда работающий по TCP клиент хочет соединиться с объектом, доступным только через файрволл, он должен открыть TCP-соединение c соответствующим SOCKS-портом SOCKS-сервера. Сервис SOCKS обычно находится на TCP-порту 1080. Если соединение прошло успешно, клиент начинает переговоры о методе аутентификации, который будет использоваваться, проходит аутентификацию по выбранному методу и посылает свой запрос. SOCKS-сервер обрабатывает запрос и либо пытается установить соответствующее соединение, либо отказывает в нем.

Клиент соединяется с сервером и посылает сообщение с номером версии и выбором соответствующего метода аутентификации:

VERNMETHODSMETHODS
111 to 255

Значение поля VER равно X'05' для данной версии протокола. Поле NMETHODS содержит число октетов в идентификаторах методов авторизации в поле METHODS.

Серевер выбирает один из предложенных методов, перечисленных в METHODS, и послылает ответ о выбранном методе:

VERMETHODS
11

Если выбранный метод в METHOD равен X'FF', то ни один из предложенных клиентом методов не применим и клиент должен закрыть соединение.

Эти значения определены для поля METHOD:

  • X'00' аутентификация не требуется
  • X'01' GSSAPI
  • X'02' USERNAME/PASSWORD (см. RFC 1929)
  • X'03' до X'7F' зарезервировано IANA
  • X'80' до X'FE' преднозначено для частных методов
  • X'FF' нет применимых методов

Затем клиент и сервер начинают аутентификацию согласно выбранному методу.

Описание методов аутентификации находится в отдельных документах.

Разработчики новых методов аутентификации применимых для этого протокола должны обращаться в IANA для получения номера метода. Документ с выделеными номерами должен дополнить текущий список номеров и соответствущих им методов аутентификации.

Совместимые реализации должны поддерживать GSSAPI и могут поддерживать аутентификацию USERNAME/PASSWORD.

2007 - 2017 © Русские переводы RFC, IETF, ISOC.