Схема рабочего решения:

Перевод работы Сервера управления Р7-Команд за Reverse Proxy

Установите Р7-Команда по инструкции:

1) Инструкция по установке:

https://support.r7-office.ru/team/team_install/team_install/

следовать до раздела 6-12

2) При установке сервера управления, раздел 6-13 укажите,

что не будете конфигурировать https — <No>

Перевод работы Сервера управления Р7-Команд за Reverse Proxy

3) Продолжите установку согласно инструкции.

На сервере Reverse Proxy:

4) Установите Nginx, если он еще не установлен:

apt install nginx -y

5) Запустите службу nginx и добавьте её в автозагрузку:

systemctl enable --now nginx

6) Создайте файл /etc/nginx/conf.d/team_proxy.conf со следующим содержимым:

map $http_host $this_host {
        "" $host;
        default $http_host;
}
  
map $http_x_forwarded_proto $the_scheme {
        default $http_x_forwarded_proto;
        "" $scheme;
}
  
map $http_x_forwarded_host $the_host {
        default $http_x_forwarded_host;
        "" $this_host;
}
  
map $http_upgrade $proxy_connection {
        default upgrade;
        "" close;
}
 
server {
    listen 80;
    server_name {DNS_NAME_TEAM} ;
    server_tokens off;
 
    ## Redirects all traffic to the HTTPS host
    return 301 https://$server_name$request_uri;
}
server {
    listen 443 ssl http2;
    server_name {DNS_NAME_TEAM};
    ssl_certificate     {PATH_TO_CERTIFICATE};
    ssl_certificate_key {PATH_TO_KEY};
    ssl_session_timeout 24h;
    ssl_session_cache shared:SSL:16m;
    ssl_session_tickets on;
    ssl_prefer_server_ciphers on;
    ssl_ciphers AES256+EECDH:AES256+EDH:!aNULL;
    add_header Strict-Transport-Security "max-age=31536000;";
  
    location / {
        proxy_pass         http://{IP_SERVER_TEAM};
        proxy_http_version 1.1;
        proxy_set_header Upgrade $http_upgrade;
        proxy_set_header Connection $proxy_connection;
        proxy_set_header X-Forwarded-Host $the_host;
        proxy_set_header X-Forwarded-Proto $the_scheme;
        proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
    }
}

Где,

  • {PATH_TO_CERTIFICATE} — полный путь до ssl сертификата (для домена team.domain.ru). для защищённого соединения HTTPS, например /etc/ssl/fullchain.pem;
  • {PATH_TO_KEY} — полный путь до ключа от сертификата, например /etc/ssl/privkey.pem;
  • {IP_SERVER_TEAM} — приватный ip адрес сервера, где установлен сервер управления команд, например, 192.168.1.12;
  • {DNS_NAME_TEAM}dns имя для сервера управления, которое Вы прописали, например, team.domain.ru

7) Перезапустите службу nginx:

systemctl restart nginx