Skip to main content

Настройка GeoRitm с сертификатами Let's Encrypt

Настройка Payara

Авторизуйтесь в интерфейсе Payara - в браузере введите адрес вашей ВМ, порт 4848, логин/пароль admin/masterkey

Изменение настроек ресурсов:

Resources->JNDI->Custom Resources->rrconf:
ru.ritm.georitm.protocol https
ru.ritm.georitm.port 443
ru.ritm.georitm.admin.port 443

Resources->JNDI->Custom Resources->idpconf:
ru.ritm.idp.port 443
ru.ritm.idp.protocol https

Изменение настроек сервисов:

Configurations->server-config->HTTP Service->Http Listeners->http-listener-1
Port вместо 80 укажите 8088

Перезапустите Payara.

Настройка репозитариев yum

# nano /etc/yum.repos.d/public-yum-ol7.repo

[ol7_developer_EPEL]
name=Oracle Linux $releasever Development Packages ($basearch)
baseurl=https://yum.oracle.com/repo/OracleLinux/OL7/developer_EPEL/$basearch/
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-oracle
gpgcheck=1
# enabled=0
enabled=1

[ol7_optional_latest]
name=Oracle Linux $releasever Optional Latest ($basearch)
baseurl=https://yum.oracle.com/repo/OracleLinux/OL7/optional/latest/$basearch/
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-oracle
gpgcheck=1
# enabled=0
enabled=1

[ol7_addons]
name=Oracle Linux $releasever Add ons ($basearch)
baseurl=https://yum.oracle.com/repo/OracleLinux/OL7/addons/$basearch/
gpgkey=file:///etc/pki/rpm-gpg/RPM-GPG-KEY-oracle
gpgcheck=1
#enabled=0
enabled=1

Установка nginx

# yum install nginx -y
# systemctl enable nginx
# systemctl start nginx

Настройка конфигурации nginx

# nano /etc/nginx/conf.d/georitmse.conf

server {
    listen      80;
    server_name georitm.domain.ru;

    location / {
        return 301 https://$server_name$request_uri;
    }
}


server {
    listen      443 ssl http2;
    server_name georitm.domain.ru;

    error_log   /var/log/nginx/error.log;
    access_log  /var/log/nginx/access.log;

    #ssl                 on;
    ssl_certificate /etc/letsencrypt/live/georitm.evolvex.ru/fullchain.pem; # managed by Certbot
    ssl_certificate_key /etc/letsencrypt/live/georitm.evolvex.ru/privkey.pem; # managed by Certbot

    ssl_protocols       TLSv1.1 TLSv1.2 TLSv1.3;
    ssl_ciphers         HIGH:!aNULL:!eNULL:!EXPORT:!CAMELLIA:!DES:!MD5:!PSK:!RC4;
    ssl_prefer_server_ciphers on;

    proxy_set_header   Host $host;
    proxy_set_header   X-Forwarded-For $proxy_add_x_forwarded_for;
    proxy_set_header   X-Real-IP       $remote_addr;
    proxy_http_version 1.1;


    location /restapi/socket/ {
    proxy_set_header   Upgrade $http_upgrade;
    proxy_set_header   Connection "upgrade";
    proxy_pass         http://127.0.0.1:8088/restapi/socket/;
    proxy_redirect   default;
    proxy_read_timeout 1d;
    }

## web-socket for idp shell to IDP
    location /idp-web/socket/shell {
        proxy_set_header   Host $host;
        proxy_http_version 1.1;
        proxy_set_header   Upgrade $http_upgrade;
        proxy_set_header   Connection "upgrade";
        proxy_pass   http://127.0.0.1:8088/idp-web/socket/shell;
        proxy_redirect   default;
        proxy_read_timeout 1d;
    }

## web-socket for idp json to IDP
    location /idp-web/socket/shell/json {
        proxy_set_header   Host $host;
        proxy_http_version 1.1;
        proxy_set_header   Upgrade $http_upgrade;
        proxy_set_header   Connection "upgrade";
        proxy_pass   http://127.0.0.1:8088/idp-web/socket/shell/json;
        proxy_redirect  default;
        proxy_read_timeout 1d;
    }


    location / {
    proxy_set_header   Connection "";
    proxy_pass         http://127.0.0.1:8088/;
    proxy_redirect   default;
    }

}

Настройка сетевых интерфейсов

# nano /etc/sysconfig/network-scripts/ifcfg-Ethernet_connection_1

TYPE=Ethernet
PROXY_METHOD=none
BROWSER_ONLY=no
#BOOTPROTO=dhcp
BOOTPROTO=none
DEFROUTE=yes
IPV4_FAILURE_FATAL=yes
IPV6INIT=no
NAME="Ethernet connection 1"
UUID=20acfc15-6011-4753-92ff-1377199e4177
ONBOOT=yes
DNS1=8.8.8.8
DNS2=77.88.8.8
IPADDR=91.223.18.7
NETMASK=255.255.255.240
GATEWAY=91.223.18.1

Установка certbot

# yum install python2-certbot-nginx
# certbot --nginx -d georitm.domain.ru

Настройка crontab

0 0 * * * root certbot renew --post-hook "systemctl reload nginx"