...
Настройка сайта
Для работы RutokenKeybox Рутокен KeyBox требуется создать сайт в Apache, чтобы он обслуживал запросы и отправлял их на проксируемый адрес (сервис RutokenKeybox Рутокен KeyBox).
Создайте файл сайта /etc/apache2/sites-available/SERVER_FQDN.conf
sudo
touch
/etc/apache2/sites-available/SERVER_FQDN
.conf
Заполните файл рекомендуемым содержимым:
В параметрах SSLCertificateFile и SSLCertificateKeyFile указаны пути к созданным/импортированным в предыдущих шагах файлам сертификата и закрытого ключа, требуется проверить указанные пути и имена файлов.
<VirtualHost *:
80
>
RewriteEngine On
RewriteCond %{HTTPS} !=on
RewriteRule ^(.*)$ https:
//%{HTTP_HOST}%{REQUEST_URI}/$1 [R=301,L]
</VirtualHost>
<VirtualHost *:
443
>
Protocols h2 http/
1.1
SSLCertificateFile /etc/apache2/ssl/SSL.crt
SSLCertificateKeyFile /etc/apache2/ssl/SSL.key
SSLCipherSuite
@SECLEVEL
=
1
:ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-RSA-AES128-GCM-SHA256:ECDHE-ECDSA-AES256-GCM-SHA384:ECDHE-RSA-AES256-GCM-SHA384:ECDHE-ECDSA-CHACHA20-POLY1305:ECDHE-RSA-CHACHA20-POLY1305:DHE-RSA-AES128-GCM-SHA256:DHE-RSA-AES256-GCM-SHA384
ErrorLog ${APACHE_LOG_DIR}/error.log
CustomLog ${APACHE_LOG_DIR}/access.log combined
SSLEngine on
SSLProtocol -all +TLSv1.
2
SSLHonorCipherOrder off
SSLCompression off
SSLSessionTickets on
SSLUseStapling off
SSLProxyEngine on
SetEnv nokeepalive ssl-unclean-shutdown
RequestHeader set X-Forwarded-Proto https
Header always set Strict-Transport-Security
"max-age=63072000"
ProxyPreserveHost On
ProxyPass /cm/mc http:
//localhost:5001/cm/mc
ProxyPassReverse /cm/mc http:
//localhost:5001/cm/mc
ProxyPass /cm/ss http:
//localhost:5002/cm/ss
ProxyPassReverse /cm/ss http:
//localhost:5002/cm/ss
ProxyPass /cm/rss http:
//localhost:5003/cm/rss
ProxyPassReverse /cm/rss http:
//localhost:5003/cm/rss
ProxyPass /cm/api http:
//localhost:5004/cm/api
ProxyPassReverse /cm/api http:
//localhost:5004/cm/api
ProxyPass /cm/credprovapi http:
//localhost:5005/cm/credprovapi
ProxyPassReverse /cm/credprovapi http:
//localhost:5005/cm/credprovapi
ProxyPass /cm/oidc http:
//localhost:5008/cm/oidc
ProxyPassReverse /cm/oidc http:
//localhost:5008/cm/oidc
ProxyPass /cm/wizard http:
//localhost:5009/cm/wizard
ProxyPassReverse /cm/wizard http:
//localhost:5009/cm/wizard
</VirtualHost>
<VirtualHost *:
3003
>
protocols h2 http/
1.1
SSLCertificateFile /etc/apache2/ssl/SSL.crt
SSLCertificateKeyFile /etc/apache2/ssl/SSL.key
SSLCipherSuite
@SECLEVEL
=
1
:ECDHE-ECDSA-AES128-GCM-SHA256:ECDHE-RSA-AES128-GCM-SHA256:ECDHE-ECDSA-AES256-GCM-SHA384:ECDHE-RSA-AES256-GCM-SHA384:ECDHE-ECDSA-CHACHA20-POLY1305:ECDHE-RSA-CHACHA20-POLY1305:DHE-RSA-AES128-GCM-SHA256:DHE-RSA-AES256-GCM-SHA384
ErrorLog ${APACHE_LOG_DIR}/error.log
CustomLog ${APACHE_LOG_DIR}/access.log combined
SSLEngine on
SSLProtocol -all +TLSv1.
2
SSLHonorCipherOrder off
SSLCompression off
SSLSessionTickets on
SSLUseStapling off
SSLProxyEngine on
RequestHeader set X-Forwarded-Proto https
Header always set Strict-Transport-Security
"max-age=63072000"
ProxyPass /agentregistrationapi http:
//localhost:5006/agentregistrationapi
ProxyPassReverse /agentregistrationapi http:
//localhost:5006/agentregistrationapi
<Location
"/agentserviceapi"
>
SSLVerifyClient optional_no_ca
SSLOptions +ExportCertData
RequestHeader unset x-ssl-client-cert
RequestHeader set x-ssl-client-cert
"expr=%{escape:%{SSL_CLIENT_CERT}}"
#RequestHeader set x-ssl-client-cert
"expr=%{escape:%{SSL_CLIENT_S_DN}}"
ProxyPass http:
//localhost:5007/agentserviceapi
ProxyPassReverse http:
//localhost:5007/agentserviceapi
</Location>
</VirtualHost>
Перечитайте файл конфигурации и включите файл сайта:
sudo a2ensite SERVER_FQDN
sudo apachectl configtest
sudo systemctl restart apache2