Этот runbook привязан к группе алертов polytech_skud в Prometheus. Цель — за минуту понять «наша проблема или их», и кому звонить.
Все SSH-команды этого runbook используют существующие настройки доступа и штатный known_hosts своего operator с явным StrictHostKeyChecking=accept-new. Новый target не требует предварительной записи или независимой сверки fingerprint; смена уже известного ключа не принимается молча. Не использовать StrictHostKeyChecking=no/off или отбрасывание known_hosts.
Действует общекомандное правило из /home/olvr/HANDBOOK.md, раздел «SSH: правило владельца», решение 2u1L/hrBEmT: верификацию ключей не инициировать, не выполнять, не обсуждать и не превращать в поручение, вопрос владельцу или условие работы.
Единственная оговорка — изменение уже известного host key: проверить, что переинсталляция сервера нам известна, затем перейти на новый ключ в своём штатном carrier и кратко записать «ключи сменились, перешли на новые». Если известного факта переинсталляции нет, не обходить штатный отказ и не переходить молча; сообщить РП только этот факт, без независимой сверки fingerprint, доверенной консоли и нового поручения на верификацию.
Этот раздел меняет только документационный рецепт. Ключи, known_hosts, SSH-настройки и серверы этим amendment не меняются; production writes по-прежнему требуют разрешения владельца.
Все внешние соединения от имени Olvery — только через gw32 (89.20.105.168). Внешние прокси и другие выходы запрещены, включая аварии и диагностику. Локальный Go TLS-транспорт APACS сохраняется по уточнению Бориса: он обходит несовместимость IIS/OpenSSL и не является альтернативным выходом.
ApacsDriver → localhost:8099 (Go TLS) → gw32 → VPN Политеха (ovpstu) → 10.47.30.20:7010
Провайдер34 (production локация36), драйвер apacs, driverOptions.api_url=https://10.47.30.20:7010/. PHP передаёт операции по локальному HTTP; Go выполняет HTTPS к настоящему APACS, APACS_UPSTREAM_URL=https://10.47.30.20:7010/. Без подмены назначения. SNAT на выданный PPP-адрес выполняет штатный mpd. Mock-провайдеры используют свои endpoint и не направляются на Политех.
Адрес PPP назначает сервер Политеха: в 21:30 11.10 получен 10.100.68.2, peer 10.100.68.1. Адрес не закрепляется вручную; перед передачей текущего источника читать ifconfig ovpstu.
ssh root@gw32 ifconfig ovpstu ssh root@gw32 /usr/local/sbin/swanctl –list-sas –ike olvr-pstu ssh root@srv-prod2.olvr docker exec tpark-it.back-acs.latest supervisorctl status apacs-proxy
Health /api/acs/v1/health/apacs-skud проходит через тот же Go TLS к настоящему APACS. http://127.0.0.1:8099/health внутри контейнера проверяет только жизнь Go-процесса. Не подменять первое вторым. TCP/TLS timeout означает недоступность, но сам по себе не определяет виновную сторону. При отсутствии ответа нужны metadata SYN/SYN-ACK/RST на принимающем интерфейсе сервера, без payload.
Пользовательский результат — выпуск или удаление пропуска. Health и наличие VPN не подменяют его. Изменяющие пропуска операции и открытие двери не используются как обычная сетевая проба.
На gw32: strongSwan named olvr-pstu и mpd5 bundle OlvrPstu, iface ovpstu. Маршруты 10.47.30.20/32 и 82.179.113.10/32, MTU/MRU1370, штатные NAT/tcpmssfix. Файлы /usr/local/etc/swanctl/conf.d/olvr-pstu.conf и /usr/local/etc/mpd5/olvr-pstu.conf. Пароли не менять.
На srv-prod2 и test srv-app: один PHP-драйвер с локальным Go TLS. Бинарник собирается Docker из apacs-proxy/; supervisor запускает его, слушает только localhost:8099. Реальный upstream задан выше, прежний контракт self-signed сертификата сохранён. Production image olvery/back-acs:owox-go-20261011, test olvery/back-acs:owox-go-test-20261011. Production starter /srv/restore/runtime/start-production-php.sh выбирает Go-image; test create config /root/OwOX-apacs-go/state-final/create.json сохраняет его после пересоздания.
Общий выход через DHCP gateway на gw32. На Linux VPN не включать: наблюдался kernel fault L2TP/XFRM. Общий mpd на gw32 не перезапускать — он держит WAN PPPoE.
SSO (82.179.112.230:443) — отдельное прямое соединение через WAN gw32. Рецептов альтернативного выхода нет. Точный текущий остаток — OLV-4958.