Filskiy (обсуждение | вклад) |
Filskiy (обсуждение | вклад) |
||
Строка 43: | Строка 43: | ||
# Для исключения внешнего воздействия на комплекс можно использовать встроенный в ОС Astra [https://wiki.astralinux.ru/pages/viewpage.action?pageId=27362474 межсетевой экран]. В нем можно прописать конкретные IP адреса с которых разрешен доступ к серверу КРОС. Для настройки правил в графическом режиме можно воспользоваться утилитой '''[https://wiki.astralinux.ru/pages/viewpage.action?pageId=71835677#id-Управлениенастройкамиизкоманднойстроки-Спомощьюufw gufw]'''. Для ОС Windows можно использовать встроенный Брэндмауер. | # Для исключения внешнего воздействия на комплекс можно использовать встроенный в ОС Astra [https://wiki.astralinux.ru/pages/viewpage.action?pageId=27362474 межсетевой экран]. В нем можно прописать конкретные IP адреса с которых разрешен доступ к серверу КРОС. Для настройки правил в графическом режиме можно воспользоваться утилитой '''[https://wiki.astralinux.ru/pages/viewpage.action?pageId=71835677#id-Управлениенастройкамиизкоманднойстроки-Спомощьюufw gufw]'''. Для ОС Windows можно использовать встроенный Брэндмауер. | ||
# Для безопасного доступа из внешней сети рекомендуется создать свою защищенную сеть на основе [https://wiki.astralinux.ru/display/doc/OpenVPN OpenVPN для ОС Astra] или для Windows. | # Для безопасного доступа из внешней сети рекомендуется создать свою защищенную сеть на основе [https://wiki.astralinux.ru/display/doc/OpenVPN OpenVPN для ОС Astra] или для Windows. | ||
# | # Возможен вариант с настройкой SSL соединения. Для настройки соединений с сервером КРОС при использованиии SSL сертификата, необходимо выпустить сертификат формата jks ("java key storage"). По умолчанию файл с сертификатом располагается в '''/usr/local/smpo-server/conf/''' и называется '''''smpo-keystore.jks'''''. Его необходимо заменить на свой, так как данный ключ связан с доменом jupiter8.ru. Параметры доступа к сертификату настраиваются пользователем ''superadmin'' в разделе '''Администрирование''' -> '''Безопасность''' -> вкладка '''"Сертификаты"'''. | ||
==Создание самоподписанного сертификата== | |||
В Java есть своя утилита для создания самоподписанного сертификата - '''keytool'''. | |||
Вначале необходимо создать хранилище сертификатов и ключ сертификата: | |||
'''sudo keytool -genkey -alias smpo-server -keyalg RSA -keypass password -storepass password -keystore "/usr/local/smpo-server/conf/smpo-key.jks" -dname "CN="", OU="", O="", L="", ST="", C=""" -validity 3650''', где | |||
: '''-genkey''' - указывает, что создается новое хранилище и ключ. При замене ключа, необходимо заменить на '''genkeypair''' | |||
: '''-alias''' - псевдоним наименования сервера. Можно указать IP-адрес сервера | |||
: '''-keyalg RSA''' - алгоритм, по которому создаётся сертификат | |||
: '''-keypass''' - пароль ключа сертификата(указывается в настройках КРОС) | |||
: '''-storepass''' - пароль доступа к хранилищу сертификатов(указывается в настройках КРОС) | |||
: '''-keystore''' - путь хранилища сертификатов. По умолчанию, КРОС обращается к файлу '''smpo-keystore.jks''', который расположен в '''/usr/local/smpo-server/conf/'''. После генерации своего сертификата, название файла хранилища надо указать в настройке "Атминистрирование"→"Безопасность" вкладка "Сертификаты". | |||
: '''-dname'' - параметры принадлежности сертификата | |||
::'''CN=''' - имя владельца | |||
::'''OU=''' - подразделение владельца | |||
::'''O=''' - организация владельца | |||
::'''L=''' - Город, месторасположение | |||
::'''ST=''' - Республика, край, область, район. | |||
::'''C=''' - Страна. Для России - '''RU''' | |||
: '''-validity'' - срок действия сертификата. По умолчанию 3(три месяца), можно указать любое количество дней - 1 год -365, 10 лет - 3650 и т.д. и т.п. | |||
<br clear="both" /> | <br clear="both" /> | ||
[[КРОС:Рекомендации по эксплуатации сервера#top|В начало статьи]] | [[КРОС:Рекомендации по эксплуатации сервера#top|В начало статьи]] |
Версия от 12:05, 20 марта 2024
Основные рекомендации
- Выполнить диагностику и настройку локальной сети на предмет стабильности соединения между компьютерами:
- Расписать общую топологию сети (количество роутеров, зависимости между ними, пароли доступа к роутерам)
- Обновить роутеры до последних версий прошивок
- Настроить доступность портов согласно инструкции по Настройке портов из справочного руководства.
- Проводить проверки жёсткого диска на предмет наличия ошибок чтения/записи, мониторинг “здоровья” жёсткого диска, следить за наличием битых секторов с помощью специализированных программ CrystalDiskInfo и Victoria HDD/SSD. Проверять жёсткие диски раз в месяц с занесением в журнал проверок.
- Своевременно делать резервные копии не только сервера КРОС, но и всей операционной системы в целом:
- Резервные копии сервера КРОС, ключей лицензии и конфигурационных файлов делать раз в сутки
- Резервные копии операционной системы делать минимум один раз в месяц.
- Хранить резервные копии сервера КРОС на диске куда не установлена операционная система, чтобы в случае сбоя операционной системы не потерять все данные вместе с системой.
- Проверить компьютер с сервером КРОС на соответствие системным требованиям:
- Процессор - 8 ядер
- Оперативная память - 16 Гб
- Жёсткий диск SSD 250Гб (операционная система, база данных PostgreSQL, КРОС)
- Жёсткий диск HDD 1000Гб (логи сервера КРОС и бэкапы)
- Пропускная способность от 5 Мбит/сек
- Оборудовать компьютер с сервером КРОС источником бесперебойного питания (при аварийных остановках операционной системы страдает в первую очередь жёсткий диск и база данных)
- Вести логирование действий с сервером для упрощения оказания технической поддержки в случае инцидентов:
- Обновления операционной системы
- Обновления сервера КРОС
- Замена комплектующих компьютера
- Логирование действий приведших к аварии
- Продумать систему резервного/подменного сервера на случай полного выхода из строя основного оборудования:
- Запасной компьютер / запасные комплектующие для возможности быстрой замены вышедших из строя
- Использовать систему зеркалирования данных, являющуюся частью сервера КРОС.
- Обеспечить сохранность логинов и паролей для доступа на сервер КРОС и в операционную систему. На ПЦО всегда должен присутствовать сотрудник, знающий пароли от операционной системы, сервера КРОС и роутеров. Хранить пароли в секретных конвертах в сейфе с возможностью доступа. Это необходимо для оказания оперативной помощи сотрудниками технической поддержки сервера КРОС.
- При настройке сетевых подключений протокола IPv4 используйте метод "Вручную", проверьте корректность введенных данных, таких как IP адрес, маска сети, шлюз, DNS сервер.
- Проверить Список приборов поддерживающих функционал удаленного конфигурирования и обновления ПО.
Обязательно поменяйте все пароли. Новый пароль должен содержать прописные, заглавные буквы, числа и желательно спецсимволы, кроме двоеточия ":".
В начало статьи
Рекомендации по безопасности
- Для исключения несанкционированного доступа к серверу КРОС, необходимо, в обязательном порядке, изменить все пароли, а так же задавать сложные пароли новым пользователям.
- Для исключения внешнего воздействия на комплекс можно использовать встроенный в ОС Astra межсетевой экран. В нем можно прописать конкретные IP адреса с которых разрешен доступ к серверу КРОС. Для настройки правил в графическом режиме можно воспользоваться утилитой gufw. Для ОС Windows можно использовать встроенный Брэндмауер.
- Для безопасного доступа из внешней сети рекомендуется создать свою защищенную сеть на основе OpenVPN для ОС Astra или для Windows.
- Возможен вариант с настройкой SSL соединения. Для настройки соединений с сервером КРОС при использованиии SSL сертификата, необходимо выпустить сертификат формата jks ("java key storage"). По умолчанию файл с сертификатом располагается в /usr/local/smpo-server/conf/ и называется smpo-keystore.jks. Его необходимо заменить на свой, так как данный ключ связан с доменом jupiter8.ru. Параметры доступа к сертификату настраиваются пользователем superadmin в разделе Администрирование -> Безопасность -> вкладка "Сертификаты".
Создание самоподписанного сертификата
В Java есть своя утилита для создания самоподписанного сертификата - keytool. Вначале необходимо создать хранилище сертификатов и ключ сертификата:
sudo keytool -genkey -alias smpo-server -keyalg RSA -keypass password -storepass password -keystore "/usr/local/smpo-server/conf/smpo-key.jks" -dname "CN="", OU="", O="", L="", ST="", C=""" -validity 3650, где
- -genkey - указывает, что создается новое хранилище и ключ. При замене ключа, необходимо заменить на genkeypair
- -alias - псевдоним наименования сервера. Можно указать IP-адрес сервера
- -keyalg RSA - алгоритм, по которому создаётся сертификат
- -keypass - пароль ключа сертификата(указывается в настройках КРОС)
- -storepass - пароль доступа к хранилищу сертификатов(указывается в настройках КРОС)
- -keystore - путь хранилища сертификатов. По умолчанию, КРОС обращается к файлу smpo-keystore.jks, который расположен в /usr/local/smpo-server/conf/. После генерации своего сертификата, название файла хранилища надо указать в настройке "Атминистрирование"→"Безопасность" вкладка "Сертификаты".
- '-dname - параметры принадлежности сертификата
- CN= - имя владельца
- OU= - подразделение владельца
- O= - организация владельца
- L= - Город, месторасположение
- ST= - Республика, край, область, район.
- C= - Страна. Для России - RU
- '-validity - срок действия сертификата. По умолчанию 3(три месяца), можно указать любое количество дней - 1 год -365, 10 лет - 3650 и т.д. и т.п.
Рекомендации по последовательности действий в случае отсутствия доступа к серверу КРОС
В случае если данные рекомендации вызывают затруднение в понимании или выполнении просьба связаться с технической поддержкой тел. 8-800-250-87-27 доб. 8
1. Необходимо убедится, что сервер КРОС включен. Проверить подключено ли питание (~220V) и запущена ли операционная система.
2. Проверить доступ к компьютеру КРОС из локальной сети, используя команды:
ping, telnet, traceroute и т.п. В случае отсутствия отклика проверить состояние локальной сети, её конфигурацию и маршрутизацию.
3. Проверить, работает ли программное обеспечение.
Для проверки можно воспользоваться любым менеджером задач, а так же в терминале или консоли, для проверки можно ввести команды:
- для PostgreSQL — sudo ps aux|grep postgres - Отклик должен содержать все процессы работы PostgreSQL, в том числе и информацию о подключении к базам данных.
- для КРОС — sudo ps aux|grep smpo-server - Отклик отображает информацию о процессах КРОС — wrapper и smpo-server
3.1. Выполнить перезагрузку программного обеспечения:
sudo systemctl restart postgresql
sudo service smpo-server restart
4. В случае отсутствия какой-либо информации о процессах, либо в случае отсутствия информации о подключении к базе данных КРОС рекомендуется выполнить следующие действия:
- выполнить команду остановки процесса КРОС: sudo service smpo-server stop
- проверить корректность выполнения операции командой: sudo ps aux|grep smpo-server. Если процессы продолжают выполняться, необходимо прервать их командой: kill.
- проверить наличие файлов pid и smpo.active в каталоге /usr/local/smpo-server/conf и удалить их, если они присутствуют.
4.1. Перезагрузить службу управления PostgreSQL — sudo systemctl restart postgresql
Проверить запуск. В случае отсутствия работающих процессов, необходимо изучить файлы логирования и исключить ошибки запуска.
Рекомендуется сделать дополнительную копию базы данных, например, pg_dump -U postgres -d jupiter > /home/elesta/jupiter.sql
4.1.1 Если проблема в некорректной информации базы данных КРОС, тогда можно выполнить следующие действия:
- остановить службу smpo-server
- остановить PostgreSQL
- пересоздать кластер — в том случае если после восстановления PostgreSQL все равно не загрузился, воспользовавшись командой initdb -D </путь/к/кластеру>. После чего внести его в файл конфигурации PostgreSQL.
- запустить PostgreSQL
- создать пользвателя базы данных: sudo -u postgres psql -c "ALTER USER 'postgres' WITH ENCRYPTED PASSWORD 'postgres';"
- создать пустую базу данных КРОС: psql -U postgres -c "CREATE DATABASE jupiter;"
- запустить smpo-server
- восстановить базу данных из резервной копии. Восстановление данных производится либо из КРОС пользователем superadmin, либо средствами PostgreSQL из дампа, например, psql -U postgres -d jupiter < /home/elesta/jupiter.sql
- проверить восстановленные данные
Если после этого комплекс не загрузился — связаться со службой технической поддержки для консультации и предоставить удаленный доступ для выявления ошибок.
5. При наличии резервного сервера, когда основной сервер вышел из строя.
Если используется механизм зеркалирования, то трансляции необходимо отключить.
- необходимо проверить включение сервера и доступность его в локальной сети
- перенести резервную копию базы данных и восстановить её на сервере. В случае использования механизма зеркалирования восстановление данных скорее всего не потребуется
- при необходимости изменить сетевые настройки сервера и активировать их
- проверить работу комплекса. В протоколе событий приборов должна появиться информация
После восстановления работоспособности основного сервера. Необходимо восстановить на нём данные с резвного сервера, проверить настройки трансляций и активировать их.
Также можно перевести резервный сервер в режим основного, проверить настройки трансляций и активировать их. Для перевода основного сервера в режим основного необходимо войти в режим администрирования охранной организации и