# 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

Пароль, тип данных: строка. Обязательный параметр.
