| Документация

Подготовка системы перед установкой на ОС Linux

Подготовка Windows-окружения для соединения с Linux

Для подготовки Windows-окружения при установке CoGIS на ОС Linux необходимо выполнить следующие шаги.

Сначала установите PuTTY клиент , дистрибутив которого размещен по адресу: https://www.putty.org/ .

Далее установите WinSCP клиент , дистрибутив которого размещен по адресу: https://winscp.net/eng/download.php .

Далее создайте новое соединение для подключения к Linux в PuTTY , укажите имя сессии и нажмите на кнопку Save , см. Рисунок 3 .

Рисунок 3 – Создание нового соединения для подключения к Linux в PuTTY

Для открытия соединения нажмите на кнопку Open и в появившемся окне введите логин и пароль, см. Рисунок 4 и Рисунок 5 .

Рисунок 4 – Открытие соединения в PuTTY: ввод логина

Рисунок 5 – Открытие соединения в PuTTY: ввод пароля

Аналогично подключитесь к Linux через WinSCP, как показано ниже, см. Рисунок 6 и Рисунок 7 .

Рисунок 6 – Подключение к Linux через WinSCP (1)

Рисунок 7 – Подключение к Linux через WinSCP (2)

Подготовка Linux перед установкой CoGIS

Для подготовки Linux к установке CoGIS выполните следующие шаги.

Обновите систему в ОС Ubuntu / Debian / Astra Linux / Alt Linux / Атлант:

sudo apt updatesudo apt upgrade

Для обновления системы в ОС Red OS:

sudo yum update

Для обновления системы в ОС РОСА / ОС CentOS Stream 8 / CentOS Stream 9:

sudo dnf update

Установка ASP.NET Core Runtime

Для установки asp.net core runtime в Astra Linux 1.8 / ОС Ubuntu 22.04 / Ubuntu 24.04:

sudo apt install aspnetcore-runtime-8.0

Для установки asp.net core runtime в ОС Ubuntu 20.04:

sudo apt install wget

wget https://packages.microsoft.com/config/ubuntu/20.04/packages-microsoft-prod.deb -O packages-microsoft-prod.debsudo dpkg -i packages-microsoft-prod.debrm packages-microsoft-prod.deb

sudo apt updatesudo apt install aspnetcore-runtime-8.0

Для установки asp.net core runtime в ОС РОСА / ОС CentOS Stream 8 / CentOS Stream 9 / RHEL:

sudo dnf install aspnetcore-runtime-8.0

Для установки asp.net core runtime в ОС Astra Linux 1.7:

sudo wget https://packages.microsoft.com/config/debian/10/prod.list -O /etc/apt/sources.list.d/microsoft-prod.list

sudo apt updatesudo apt install aspnetcore-runtime-8.0

Для установки asp.net core runtime в ОС Alt Linux / Alt Server:

sudo apt install dotnet-aspnetcore-runtime-8.0

Для установки asp.net core runtime в ОС Red OS:

sudo yum install aspnetcore-runtime-8.0

Для установки asp.net core runtime в ОС Атлант:

sudo apt install wget

wget https://packages.microsoft.com/config/debian/10/packages-microsoft-prod.deb -O packages-microsoft-prod.deb sudo dpkg -i packages-microsoft-prod.debrm packages-microsoft-prod.deb

sudo apt updatesudo apt install aspnetcore-runtime-8.0

Для установки asp.net core runtime в ОС Debian. [VERSION] нужно заменить на версию ОС:

sudo apt install wget

wget https://packages.microsoft.com/config/debian/ [VERSION] /packages-microsoft-prod.deb -O packages-microsoft-prod.deb

sudo dpkg -i packages-microsoft-prod.deb

rm packages-microsoft-prod.deb

sudo apt updatesudo apt install aspnetcore-runtime-8.0

Установка NGINX

Для установки NGINX в ОС Ubuntu / Astra / Alt Linux / Debian:

sudo apt install nginx

Для установки NGINX в ОС Red OS:

sudo yum install nginx

Для установки NGINX в ОС РОСА / CentOS Stream 8 / CentOS Stream 9:

sudo dnf install nginx

Настройка NGINX

Чтобы настроить reverse proxy в NGINX, нужно сформировать конфигурацию и перенаправить запросы к соответствующим модулям платформы CoGIS.

Для этого необходимо выполнить следующие шаги.

Для создания конфигурации в ОС Ubuntu / Astra / Атлант:

sudo nano /etc/nginx/sites-available/reverse-proxy.conf

Для создания конфигурации в ОС Alt Linux / Alt Server:

sudo nano /etc/nginx/sites-available.d/reverse-proxy.conf

Для создания конфигурации в ОС Red OS / CentOS 7 / CentOS Stream 8 / CentOS Stream 9 необходимо удалить или закомментировать секцию server в файле /etc/nginx/nginx.conf и создать файл конфигурации:

sudo nano /etc/nginx/conf.d/reverse-proxy.conf

Для создания конфигурации в ОС РОСА необходимо заменить секцию server в файле /etc/nginx/nginx.conf на указанную ниже.

Содержимое файла reverse-proxy.conf или секции в файле /etc/nginx/nginx.conf выглядит следующим образом (значение SERVERNAME следует заменить на полное имя сервера в сети):

server {

listen 443 ssl;

access_log /var/log/nginx/reverse-access.log;

error_log /var/log/nginx/reverse-error.log;

server_name SERVERNAME localhost;

ssl_certificate /etc/nginx/ssl/cert.crt;

ssl_certificate_key /etc/nginx/ssl/cert.key;

client_max_body_size 100M;

location / {

return 302 /portal/;

}

location /elitegis/ {

proxy_pass http://127.0.0.1:5000/;

include proxy_params;

}

location /portal/ {

proxy_pass http://127.0.0.1:5001/;

include proxy_params;

}

location /elitegismanager/ {

proxy_pass http://127.0.0.1:5002/;

include proxy_params;

}

location /mobile/ {

proxy_pass http://127.0.0.1:5003/;

include proxy_params;

}

location /pay/ {

proxy_pass http://127.0.0.1:5004/;

include proxy_params;

}

}

Для ОС RedOS / РОСА / CentOS Stream 8 / CentOS Stream 9 необходимо создать файл /etc/nginx/proxy_params со следующим содержанием:

proxy_set_header Host $http_host;

proxy_set_header X-Real-IP $remote_addr;

proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;

proxy_set_header X-Forwarded-Proto $scheme;

Для копирования ссылки на новую конфигурацию в ОС Ubuntu / Debian / Astra / Атлант:

sudo ln -s /etc/nginx/sites-available/reverse-proxy.conf /etc/nginx/sites-enabled/reverse-proxy.conf

Для копирования ссылки на новую конфигурацию в ОС Alt Linux / Alt Server:

sudo ln -s /etc/nginx/sites-available.d/reverse-proxy.conf /etc/nginx/sites-enabled.d/reverse-proxy.conf

В ОС Red OS / CentOS Stream 8 / CentOS Stream 9 копировать ссылку на конфигурацию нет необходимости, но нужно разрешить nginx обращаться к другим сервисам :

setsebool -P httpd_can_network_connect 1

Далее необходимо перезагрузить настройки NGINX :

sudo nginx -s reload

Установка PostgreSQL / PostGIS (на примере установки v14/v15)

Для успешной установки и настройки CoGIS не обязательна установка PostgreSQL на тот же сервер. CoGIS может работать с СУБД, установленными на других серверах. Дальнейшая инструкция по установке и первичной настройке PostgreSQL приведена для удобства:

Для установки PostgreSQL и PostGIS в ОС Astra Linux 1.8:

sudo apt install postgresql-15 postgresql-15-postgis-3

Для установки PostgreSQL и PostGIS в ОС Ubuntu / Astra Linux 1.7 / Alt Linux / Debian:

sudo apt install postgresql-14 postgresql-14-postgis-3

Для установки PostgreSQL и PostGIS в ОС CentOS Stream 8:

sudo yum -y install https://download.postgresql.org/pub/repos/yum/reporpms/EL-8-x86_64/pgdg-redhat-repo-latest.noarch.rpm sudo dnf updatesudo dnf -qy module disable postgresqlsudo dnf install postgresql14 postgis33_14sudo systemctl start postgresql-14sudo systemctl enable postgresql-14

Для установки PostgreSQL и PostGIS в ОС CentOS Stream 9:

sudo yum -y install https://download.postgresql.org/pub/repos/yum/reporpms/EL-9-x86_64/pgdg-redhat-repo-latest.noarch.rpm sudo dnf updatesudo dnf -qy module disable postgresqlsudo dnf install postgresql14 postgis33_14sudo systemctl start postgresql-14sudo systemctl enable postgresql-14

Для установки PostgreSQL и PostGIS в ОС Red OS:

sudo dnf install postgresql14-server postgis-pgsql14postgresql-14-setup initdbsystemctl enable postgresql-14 --now

Для установки PostgreSQL и PostGIS в ОС Debian нужно узнать, какая версия PostgreSQL и PostGIS доступна в текущий момент. Это можно сделать, вызвав команду:

sudo apt-cache search postgresql | grep -E 'postgresql-[0-9]+-postgis-[0-9]+'

Полученные номера доступных версий пакетов PostgreSQL и PostGIS необходимо использовать для установки. Например, для установки PostgreSQL 15 и PostGIS 3 следует использовать следующую команду:

sudo apt install postgresql-15 postgresql-15-postgis-3

Затем меняем пароль для PostgreSQL , выполнив следующие команды (вместо <PASSWORD> следует указать уникальный пароль):

sudo -i -u postgres psql alter user postgres with password '<PASSWORD>';exitexit

Затем настраиваем PostgreSQL для удаленных подключений.

Примечание: Из соображений безопасности можно пропустить этот шаг. Но если необходимо работать с сервером удаленно, то необходимо выполнить следующие действия.

Для настройки удаленных подключений к PostgreSQL , см. Рисунок 8 , необходимо отредактировать файл конфигурации: добавить возможность подключаться извне, добавить строчку host all all 0.0.0.0/0 md5 . Также необходимо изменить все методы аутентификации на md5:

sudo nano /etc/postgresql/10/main/pg_hba.conf

Рисунок 8 – Настройка удаленных подключений к PostgreSQL (1)

Далее откройте доступ для внешних соединений. Здесь же можно изменить максимальное количество соединений, см. Рисунок 9 :

sudo nano /etc/postgresql/10/main/postgresql.conf

Рисунок 9 – Настройка удаленных подключений к PostgreSQL (2)

Далее перезапустите PostgreSQL с помощью следующей команды:

sudo systemctl restart postgresql

Установка библиотек Python

Для того, чтобы можно было использовать python скрипты в инструментах геообработки необходимо установить библиотеки Python (libpython). Поддерживаются версии Python 3.7 и выше.

Для установки Python в ОС Astra Linux 1.7 / Debian 10:

sudo apt install python3.7-dev

Для установки Python в ОС Debian 11:

sudo apt install python3.9-dev

Для установки Python в ОС Astra Linux 1.8 / Debian 12:

sudo apt install python3.11-dev

Для установки Python в ОС RedOS:

sudo dnf install python3-devel

После успешной установки библиотек Python нужно определить путь, где находится основная библиотека. Это можно сделать выполнив команду:

find / -name libpython3.*.so

Будет выведены на экран все доступные библиотеки Python вместе с полными путями. Нужно выбрать ту, которая обладает более свежей версией. Ниже приведены несколько примеров таких путей:

Ubuntu 24.04: /usr/lib/x86_64-linux-gnu/libpython3.12.so.1.0

AstraLinux 1.7: /usr/lib/x86_64-linux-gnu/libpython3.7m.so.1.0

Полный путь до библиотеки Python необходимо указать в настройках CoGIS Server Manager во вкладке «Сервисы геообработки» в поле «Путь до библиотеки python» как показано на Рисунок 10 :

Рисунок 10 – Путь до библиотеки Python