doc: add socks5 pass and user settings

This commit is contained in:
zarazaex69
2026-05-10 13:58:57 +03:00
parent 7128dafda2
commit 7e03cfb178
6 changed files with 51 additions and 4 deletions

View File

@@ -258,6 +258,8 @@ SOCKS5 port [default: 8808]:
Нажми Enter оба раза. Прокси поднимется на `127.0.0.1:8808`.
> **Нужна аутентификация на прокси?** Скрипт её не спрашивает. Запусти клиент вручную с флагами `-socks-user` и `-socks-pass` - см. [manual.md](manual.md) и [settings.md](settings.md).
### Результат
```

View File

@@ -228,6 +228,27 @@ Room ID нужно передать клиенту.
SOCKS5 server listening on 127.0.0.1:1080
```
Если нужно защитить прокси логином и паролем (например на машине с несколькими пользователями), добавь `-socks-user` и `-socks-pass`:
```sh
./build/olcrtc-linux-amd64 \
-mode cnc \
-carrier wbstream \
-transport datachannel \
-id abc123xyz \
-client-id "$CLIENT_ID" \
-key <hex-key> \
-link direct \
-dns 1.1.1.1:53 \
-data data \
-socks-host 127.0.0.1 \
-socks-port 1080 \
-socks-user myuser \
-socks-pass mypass
```
Без этих флагов аутентификация отключена - поведение прежнее.
---
## Шаг 10: Проверить

View File

@@ -93,6 +93,11 @@
|------|----------|:------------:|
| `-socks-host` | На каком адресе поднять SOCKS5 | `127.0.0.1` |
| `-socks-port` | На каком порту поднять SOCKS5 | `1080` |
| `-socks-user` | Логин для входящих SOCKS5-подключений (необязательно) | - |
| `-socks-pass` | Пароль для входящих SOCKS5-подключений (необязательно) | - |
Если `-socks-user` не задан - аутентификация отключена (любой локальный клиент может подключиться).
Если задан - клиент принимает только подключения с правильным логином и паролем (RFC 1929).
---
@@ -165,6 +170,25 @@ ROOM_ID=$(./olcrtc -mode gen -carrier wbstream -dns 1.1.1.1:53 -amount 1 -data d
-socks-host 127.0.0.1 -socks-port 1080
```
### wbstream + datachannel + SOCKS5 аутентификация
```sh
# клиент с логином и паролем на прокси
./olcrtc -mode cnc -carrier wbstream -transport datachannel \
-id "$ROOM_ID" -client-id <client-id> -key <hex-key> -link direct -data data -dns 1.1.1.1:53 \
-socks-host 127.0.0.1 -socks-port 1080 \
-socks-user myuser -socks-pass mypass
```
Использование:
```sh
curl --socks5-hostname myuser:mypass@127.0.0.1:1080 https://icanhazip.com
# или
export all_proxy=socks5h://myuser:mypass@127.0.0.1:1080
```
---
### telemost + vp8channel
```sh

View File

@@ -25,7 +25,7 @@ olcrtc://<Carrier>?<Transport><key=value&key=value>@<RoomID>#<EncryptionKey>%<Cl
Все поля после `olcrtc://` считаются частью клиентского соглашения.
Блок `<key=value&...>` payload параметров транспорта в угловых скобках, идёт сразу после имени транспорта. Если параметры транспорту не нужны или используются defaults блок опускается целиком.
Блок `<key=value&...>` - payload параметров транспорта в угловых скобках, идёт сразу после имени транспорта. Если параметры транспорту не нужны или используются defaults - блок опускается целиком.
---
@@ -122,7 +122,7 @@ Payload не используется.
olcrtc://wbstream?datachannel@room-01#d823fa01cb3e0609b67322f7cf984c4ee2e4ce2e294936fc24ef38c9e59f4799%android-01$RU / olc free sub / IPv6
```
Payload не нужен datachannel параметров не имеет.
Payload не нужен - datachannel параметров не имеет.
### Эквивалент CLI

View File

@@ -190,7 +190,7 @@ func unescapeRBSP(rbsp []byte) []byte {
func mustDecodeHex(value string) []byte {
data, err := hex.DecodeString(value)
if err != nil {
// Hardcoded constants if this fires the binary is corrupt.
// Hardcoded constants - if this fires the binary is corrupt.
panic(fmt.Sprintf("mustDecodeHex: invalid hardcoded constant %q: %v", value, err))
}
return data

View File

@@ -71,7 +71,7 @@ var vp8Keepalive = []byte{
// KCP data frames are disguised as valid VP8 frames so Telemost SFU lets them
// through. The SFU validates the VP8 bitstream and drops frames that don't
// look like real VP8 so we prepend the keepalive keyframe and append our
// look like real VP8 - so we prepend the keepalive keyframe and append our
// header + payload after it. Wire layout:
//
// [0..20] = vp8Keepalive (valid VP8 keyframe, passes SFU inspection)