Подключение за 10 минут
Коротко о главном. Подробные инструкции — по ссылкам в каждом разделе.
С чего начать
- Оставьте заявку — придёт письмо со ссылкой в кабинет компании.
- Поставьте приложение на iPhone и отсканируйте QR из письма. Вы — администратор компании.
- В кабинете: «Сотрудники» — пригласите людей, «Ресурсы» — подключите серверы и сервисы, «Доступ» — кто куда входит.
Подробно: quickstart.md, portal-admin.md.
Серверы (SSH)
В кабинете «Ресурсы» → «Сервер» — готовая команда с одноразовым токеном. Запустите её на сервере:
curl -fsSL https://<портал>/get | sudo sh -s -- <токен>
Скрипт ставит пакет (.deb, .rpm или архив), подключает сервер к компании и настраивает PAM и sshd. Проверка:
sudo pushauth doctor
Режимы: ключ + телефон (рекомендуем), пароль + телефон, только телефон. sudo — тоже через телефон. Для многих серверов — роль Ansible.
Подробно: server-setup.md.
Сайты и сервисы (OIDC, SAML)
«Ресурсы» → «Сайт или сервис»: OIDC или SAML, адрес сервиса, кто входит. Кабинет покажет адреса и ключи для настройки сервиса.
- OIDC — Grafana, NetBox, GitLab и всё, что умеет OpenID Connect.
- SAML — Zabbix, Jira, Confluence, Bitbucket (Data Center).
Группы сотрудников передаются в сервис — роли можно раздавать по группам.
Готовые примеры для каждого сервиса: portal-admin.md.
MikroTik и VPN (RADIUS)
«Ресурсы» → «Сетевое оборудование»: адреса роутеров и кто входит. Кабинет покажет секрет. В RouterOS 7.15+:
/radius add service=login,ppp address=<IP портала> secret="<секрет>" timeout=35s require-message-auth=yes
/user aaa set use-radius=yes default-group=read
/ppp aaa set use-radius=yes
Вход в роутер (Winbox, WebFig, SSH) и VPN (L2TP, SSTP, OpenVPN) ждут подтверждения на телефоне. Сотрудник входит своим именем и паролем RADIUS.
API подтверждения действий
Ваша система спрашивает телефон сотрудника перед важным действием и получает подписанный ответ.
# запрос: кто, что подтверждает, свой id операции
curl -sS "$PORTAL/v1/approve" -H "Authorization: Bearer $KEY" \
-d '{"user":"ivanov","text":"Сменить NS домена example.kg","ref":"op-1842","ttl":120}'
# → 201 {"id":"ap_…","status":"pending",…}
# ждать решения (до 25 с за вызов)
curl -sS "$PORTAL/v1/approve/ap_…?wait=25" -H "Authorization: Bearer $KEY"
# → {"status":"approved","signature":"…","public_key":"…",…}
Делайте действие только при approved. Подпись телефона проверяется и без портала (openssl) — храните её рядом с изменением.
Поля и ошибки: portal-admin.md (раздел «API подтверждения действий»).
Сотрудникам
- Поставьте приложение из App Store.
- Откройте приглашение из письма и отсканируйте QR.
- При входе придёт уведомление: проверьте, кто и куда входит, нажмите «Одобрить».
Не вы входите — нажмите «Отклонить»: администратор увидит это в журнале. Потеряли телефон — сообщите администратору, он отключит его везде одной кнопкой.
Подробно: user-guide.md.