|
|
|
|
# HTTP
|
|
|
|
|
|
|
|
|
|
Протокол HTTP.
|
|
|
|
|
|
|
|
|
|
::: danger
|
|
|
|
|
**Протокол HTTP не обеспечивает шифрования передачи данных, поэтому он не подходит для передачи данных через общедоступные сети и более уязвим для использования в качестве ботнета.**
|
|
|
|
|
:::
|
|
|
|
|
|
|
|
|
|
Использование входящих соединений `http` более целесообразно в локальной сети или локальной среде, где он может быть использован для прослушивания входящих подключений и предоставления локальных сервисов другим программам.
|
|
|
|
|
|
|
|
|
|
::: tip СОВЕТ 1
|
|
|
|
|
`http proxy` может проксировать только протокол tcp, протоколы семейства udp не поддерживаются.
|
|
|
|
|
:::
|
|
|
|
|
|
|
|
|
|
::: tip СОВЕТ 2
|
|
|
|
|
Используйте следующие переменные среды в Linux, чтобы использовать глобальный HTTP-прокси в текущем сеансе (эта настройка поддерживается многими программами, но не всеми).
|
|
|
|
|
|
|
|
|
|
- `export http_proxy=http://127.0.0.1:8080/` (замените адрес на адрес вашего настроенного входящего HTTP-прокси)
|
|
|
|
|
- `export https_proxy=$http_proxy`
|
|
|
|
|
:::
|
|
|
|
|
|
|
|
|
|
## InboundConfigurationObject
|
|
|
|
|
|
|
|
|
|
```json
|
|
|
|
|
{
|
|
|
|
|
"accounts": [
|
|
|
|
|
{
|
|
|
|
|
"user": "my-username",
|
|
|
|
|
"pass": "my-password"
|
|
|
|
|
}
|
|
|
|
|
],
|
|
|
|
|
"allowTransparent": false,
|
|
|
|
|
"userLevel": 0
|
|
|
|
|
}
|
|
|
|
|
```
|
|
|
|
|
|
|
|
|
|
> `accounts`: \[[AccountObject](#accountobject)\]
|
|
|
|
|
|
|
|
|
|
Массив, каждый элемент которого представляет собой учетную запись пользователя. Значение по умолчанию: пустой массив.
|
|
|
|
|
|
|
|
|
|
Если `accounts` не пуст, HTTP-прокси будет выполнять проверку подлинности Basic Authentication для входящих соединений.
|
|
|
|
|
|
|
|
|
|
> `allowTransparent`: true | false
|
|
|
|
|
|
|
|
|
|
Если установлено значение `true`, будут перенаправляться все HTTP-запросы, а не только прокси-запросы.
|
|
|
|
|
|
|
|
|
|
::: tip
|
|
|
|
|
Неправильная настройка этой опции может привести к бесконечному циклу.
|
|
|
|
|
:::
|
|
|
|
|
|
|
|
|
|
> `userLevel`: number
|
|
|
|
|
|
|
|
|
|
Уровень пользователя, для подключения будет использоваться [локальная политика](../policy.md#levelpolicyobject), соответствующая этому уровню пользователя.
|
|
|
|
|
|
|
|
|
|
Значение userLevel соответствует значению `level` в разделе [policy](../policy.md#policyobject). Если не указано, используется значение по умолчанию - 0.
|
|
|
|
|
|
|
|
|
|
### AccountObject
|
|
|
|
|
|
|
|
|
|
```json
|
|
|
|
|
{
|
|
|
|
|
"user": "my-username",
|
|
|
|
|
"pass": "my-password"
|
|
|
|
|
}
|
|
|
|
|
```
|
|
|
|
|
|
|
|
|
|
> `user`: string
|
|
|
|
|
|
|
|
|
|
Имя пользователя, тип данных: строка. Обязательный параметр.
|
|
|
|
|
|
|
|
|
|
> `pass`: string
|
|
|
|
|
|
|
|
|
|
Пароль, тип данных: строка. Обязательный параметр.
|
|
|
|
|
|
|
|
|
|
|