Замена сертификатов в WEB-Сервер-КС
Рассмотрим замену сертификатов в контейнере wsks-6.0.9_443.
Версия контейнера и порт могут отличаться.
1. Скопируйте необходимые сертификаты в /opt/wsks-6.0.9_443/ssl
.
В данном примере для замены используются сертификаты serv.key
, serv.crt
, KSCA3.crt
(может отсутствовать).
2. Узнайте на чем работает WEB-Сервер-КС.
Возможные варианты: Apache
, Nginx
или Angie
.
/opt/wsks-6.0.9_443/ctl/ws_info.sh
Результат
----------------------------------------------------------
Процессы http сервера Nginx, порт 443
----------------------------------------------------------
PID PPID USERNAME %CPU% %MEM% CMD_nginx
29 1 root 0.0 0.0 nginx: master process /usr/sbin/nginx -c /e tc/nginx/conf.ks/nginx.conf
4613 29 www-data 0.0 0.0 nginx: worker process
4614 29 www-data 0.0 0.0 nginx: worker process
4615 29 www-data 0.0 0.0 nginx: worker process
4616 29 www-data 0.0 0.0 nginx: worker process
4617 29 www-data 0.0 0.0 nginx: worker process
4618 29 www-data 0.0 0.0 nginx: worker process
4619 29 www-data 0.0 0.0 nginx: worker process
4620 29 www-data 0.0 0.0 nginx: worker process
3. Остановите WEB-Сервер-КС.
bash /opt/wsks-6.0.9_443/ctl/ws_stop.sh
Подправьте файл конфигурации:
4. Отредактируйте конфигурационный файл Apache.
nano /opt/wsks-6.0.9_443/conf.ks/vhost_ks.conf
Внесите следующие изменения в файл конфигурации vhost_ks.conf:
- Вместо
serv.key
,serv.crt
укажите имена своих сертификатов. - Если сертификат
KSCA3.crt
отсутствует, то закомментируйте строку так:
#SSLCACertificateFile /etc/apache2/ssl/KSCA3.crt
SSLEngine on
SSLCertificateKeyFile /etc/apache2/ssl/serv.key
SSLCertificateFile /etc/apache2/ssl/serv.crt
SSLCACertificateFile /etc/apache2/ssl/KSCA3.crt
#SSLCertificateChainFile<---->/etc/httpd/ssl/chain.crt
# Опция, если нужно пускать только тех, у кого есть клиентский сертификат (2-хсторонний SSL) и т.д.
SSLVerifyClient none
# none: сертификат клиента вообще не требуется
# optional: клиент может предъявить действующий сертификат
# require: лиент должен предъявить действующий сертификат
# optional_no_ca: клиент может предоставить действительный сертификат, но он не должен быть (успешно) поддающимся проверке
5. Отредактируйте конфигурационный файл Nginx, Angie.
nano /opt/wsks-6.0.9_443/conf.ks/sslks.conf
Внесите следующие изменения в файл конфигурации sslks.conf:
- Вместо
serv.key
,serv.crt
укажите имена своих сертификатов. - Если сертификат
KSCA3.crt
отсутствует, то закомментируйте строку так:
#ssl_client_certificate /etc/nginx/ssl/KSCA3.crt;
ssl_certificate /etc/nginx/ssl/srv.crt;
ssl_certificate_key /etc/nginx/ssl/srv.key;
ssl_client_certificate /etc/nginx/ssl/KSCA3.crt;
ssl_protocols TLSv1.2 TLSv1.3;
ssl_prefer_server_ciphers on;
ssl_ciphers "EECDH+AESGCM:EDH+AESGCM:AES256+EECDH:AES256+EDH";
ssl_ecdh_curve secp384r1;
ssl_session_cache shared:SSL:10m;
ssl_session_tickets off;
ssl_stapling on;
ssl_stapling_verify on;
6. Запустите web-сервер
bash /opt/wsks-6.0.9_443/ctl/ws_start.sh
bash /opt/wsks-6.0.9_443/ctl/ws_info.sh