6.1. Инструкции по установке и настройке компонентов Postgres ProGate #
Устанавливайте компоненты Postgres ProGate только с носителей, входящих в комплект поставки Postgres ProGate, или из репозитория программного обеспечения https://repo.postgrespro.ru/.
6.1.1. Настройка служебной базы данных #
При создании пользователя служебной базы данных задайте достаточно сложный пароль:
Длиннее 8 символов.
Должен содержать цифры и латинские буквы верхнего и нижнего регистров.
6.1.2. Ограничение доступа к конфигурации Postgres ProGate #
После установки серверной части ограничьте доступ непривилегированным пользователям, кроме пользователя, от имени которого запускается Postgres ProGate, на чтение и запись следующих файлов:
Файл окружения
/opt/pgpro/progate/etc/env_progate.Файл конфигурации Postgres ProGate, если он используется.
6.1.3. Настройка веб-сервера #
Для работы с графическим интерфейсом Postgres ProGate установите и настройте веб-сервер nginx, который поставляется как часть пакета операционной системы сервера, на который устанавливается Postgres ProGate. Настройте веб-сервер для работы по безопасному протоколу HTTPS.
В конфигурации веб-сервера настройте перенаправление запросов, получаемых по небезопасному соединению (HTTP) на безопасное соединение (HTTPS). См. пример конфигурации:
server {
listen 80;
server_name progate.example.com;
location / {
return 301 https://$host$request_uri;
}
}Конфигурация должна включать параметры для работы по безопасному протоколу HTTPS. Например:
server {
listen 443 ssl default_server;
server_name progate.example.com;
ssl_certificate /path/to/cert.crt;
ssl_certificate_key /path/to/cert.key;
ssl_protocols TLSv1.3;
ssl_ciphers ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-RSA-AES128-GCM-SHA256;
ssl_prefer_server_ciphers off;
...
}Конфигурация должна включать использование Content Security Policy (политика безопасности содержимого) и защиту от встраивания веб-страниц:
server {
...
add_header X-Frame-Options "SAMEORIGIN";
add_header X-Content-Type-Options "nosniff";
add_header X-XSS-Protection "1; mode=block";
add_header Strict-Transport-Security "max-age=31536000";
add_header Content-Security-Policy "
default-src 'none';
script-src 'self' 'nonce-$request_id';
style-src 'self' 'nonce-$request_id';
img-src 'self' data:;
font-src 'self';
connect-src 'self';
form-action 'self';
base-uri 'self';
frame-ancestors 'none';
frame-src 'none';
object-src 'none';
" always;
...
}Конфигурация веб-сервера должна запрещать отображение используемой версии веб-сервера на автоматически создаваемых страницах ошибок 4xx, 5xx. Для этого в файле конфигурации nginx /etc/nginx/nginx.conf задайте следующие параметры:
http: {
...
server_tokens off;
...
}