github.com/e154/smart-home@v0.17.2-0.20240311175135-e530a6e5cd45/doc/content/ru/docs/dashboard/gate/_index.md (about) 1 2 --- 3 title: "Gate" 4 linkTitle: "Gate" 5 date: 2024-01-04 6 description: > 7 8 --- 9 10 {{< figure src="/smart-home/img/gate-network.svg" >}} 11 12 Gate-сервер в системе Smart Home представляет собой ключевой компонент, обеспечивающий безопасный и удобный удаленный доступ к умному дому даже при отсутствии статического IP-адреса. Этот сервер позволяет пользователям управлять и мониторить свой дом из любой точки мира через интернет, обеспечивая защиту данных и комфортное взаимодействие. 13 14 #### Преимущества Gate-сервера в системе Smart Home 15 16 1. **Безопасность:** 17 - **Шифрование данных:** Все данные, передаваемые между устройствами и Gate-сервером, шифруются для предотвращения несанкционированного доступа. 18 - **Аутентификация:** Встроенные механизмы аутентификации гарантируют, что только авторизованные пользователи имеют доступ к системе. 19 20 2. **Удобство Удаленного Доступа:** 21 - **Без белого IP:** Пользователи могут подключаться к системе даже при отсутствии статического IP-адреса, что делает удаленный доступ более удобным и доступным. 22 23 3. **Гибкость настройки:** 24 - **Подключение к тестовому шлюзу:** Smart Home предоставляет встроенный Gate-клиент, который может подключаться к тестовому шлюзу по адресу https://gate.e154.ru:8443 для тестирования и настройки удаленного доступа. 25 26 4. **Масштабируемость:** 27 - **Поддержка множества устройств:** Gate-сервер спроектирован для обработки одновременных запросов от множества устройств, обеспечивая масштабируемость системы. 28 29 #### Работа с Gate-клиентом в системе Smart Home 30 31 1. **Настройка Gate-клиента:** 32 - Включите режим Gate-сервера в системе Smart Home, указав адрес тестового шлюза или установив свой Gate-сервер. 33 - Настройте параметры безопасности, такие как шифрование и аутентификация. 34 35 2. **Подключение к Gate-серверу:** 36 - Gate-клиент автоматически устанавливает безопасное соединение с Gate-сервером, не требуя белого IP-адреса. 37 - Пользователи могут использовать мобильные приложения или веб-интерфейс для удаленного доступа. 38 39 3. **Безопасное Удаленное Управление:** 40 - Пользователи могут управлять устройствами, мониторить статус дома и получать уведомления даже находясь вдали от дома. 41 42 ### Конфигурация сервера 43 44 ```bash 45 cat config.gate.json 46 47 { 48 "api_http_port": 8080, 49 "api_https_port": 8443, 50 "api_debug": false, 51 "api_gzip": true, 52 "pprof": false, 53 "domain": "localhost", 54 "https": false, 55 "proxy_timeout": 5, 56 "proxy_idle_timeout": 10, 57 "proxy_secret_key": "" 58 } 59 60 ``` 61 Свойства полей для файла настроек `config.gate.json`: 62 63 1. **`http_port` (int):** 64 - **Описание:** Порт для HTTP API сервера. 65 - **Пример значения:** `8080`. 66 67 2. **`https_port` (int):** 68 - **Описание:** Порт для HTTPS API сервера. 69 - **Пример значения:** `8443`. 70 71 3. **`debug` (bool):** 72 - **Описание:** Включение режима отладки API сервера. 73 - **Пример значения:** `true` (включено). 74 75 4. **`gzip` (bool):** 76 - **Описание:** Включение сжатия Gzip для API запросов. 77 - **Пример значения:** `true` (включено). 78 79 5. **`domain` (string):** 80 - **Описание:** Доменное имя для Gate-сервера. 81 - **Пример значения:** `example.com`. 82 83 6. **`pprof` (bool):** 84 - **Описание:** Включение режима профилирования сервера. 85 - **Пример значения:** `true` (включено). 86 87 7. **`https` (bool):** 88 - **Описание:** Включение использования Let's Encrypt для автоматического получения SSL-сертификата для указанного домена. 89 - **Пример значения:** `true` (включено). 90 91 8. **`proxy_timeout` (int):** 92 - **Описание:** Таймаут для прокси-соединений в секундах. 93 - **Пример значения:** `5`. 94 95 9. **`proxy_idle_timeout` (int):** 96 - **Описание:** Таймаут прокси-соединений при отсутствии активности в секундах. 97 - **Пример значения:** `10`. 98 99 10. **`proxy_secret_key` (string):** 100 - **Описание:** Секретный ключ для обеспечения безопасности прокси-соединений. 101 - **Пример значения:** `mySecretKey`. 102 103 Эти параметры предоставляют гибкий контроль над настройками Gate-сервера, включая безопасность, режимы работы и использование SSL-сертификатов через Let's Encrypt. 104 105 ### Запуск сервера 106 107 Gate сервер встроен в систему smart-home как отдельный режим, включаемый аргументом `gate``. 108 109 ```bash 110 ./smart-home help gate 111 Organization of remote access without white IP 112 113 Usage: 114 server gate [flags] 115 116 Flags: 117 -h, --help help for gate 118 119 120 ./smart-home gate 121 122 ___ _ 123 / __|__ _| |_ ___ 124 | (_ / _' | _/ -_) 125 \___\__,_|\__\___| 126 127 128 INFO gate server/gate_server.go:93 > Started ... 129 INFO gate server/server.go:117 > server started at :8080 130 ``` 131