docs: подробное руководство по копированию wildcard TLS на сервер

This commit is contained in:
PTah
2026-05-26 21:15:38 +10:00
parent 21578b27c9
commit 0c5d2537db
6 changed files with 264 additions and 26 deletions
+20 -24
View File
@@ -192,44 +192,40 @@ journalctl -u sac-api -f
## 9. nginx и TLS
Для KalinaMall: **корпоративный wildcard** (VeriSign / DigiCert и т.п.), не Let's Encrypt.
Имя `sac.kalinamall.ru` должно попадать под сертификат (`*.kalinamall.ru` или явный SAN).
Для KalinaMall: **корпоративный wildcard VeriSign** (или DigiCert), не Let's Encrypt.
Хост `sac.kalinamall.ru` должен попадать под `*.kalinamall.ru`.
### 9.1. Установка файлов сертификата
**Подробно:** форматы, scp с Windows/Linux, `.pfx` → PEM, права — **[ssl-certificate.md](ssl-certificate.md)**.
Обычно от УЦ выдают:
### 9.1. Кратко: куда положить файлы
| Файл | Назначение |
|------|------------|
| Сертификат сервера | `sac.kalinamall.ru` или wildcard |
| Промежуточные CA | chain / intermediate |
| Закрытый ключ | `.key`, хранить только на сервере |
nginx ожидает **два PEM-файла**:
Соберите **fullchain** (сервер + промежуточные, в правильном порядке — как указано в инструкции УЦ):
| Файл на сервере | Содержимое |
|-----------------|------------|
| `/etc/ssl/sac/fullchain.pem` | Wildcard-сертификат + промежуточные CA |
| `/etc/ssl/sac/privkey.pem` | Закрытый ключ |
```bash
sudo mkdir -p /etc/ssl/sac
sudo chmod 750 /etc/ssl/sac
sudo mkdir -p /etc/ssl/sac && sudo chmod 750 /etc/ssl/sac
```
# Пример: скопировать с рабочей станции (scp) или собрать на сервере
# sudo nano /etc/ssl/sac/fullchain.pem # PEM: сервер, затем intermediate(s)
# sudo nano /etc/ssl/sac/privkey.pem # закрытый ключ
Скопировать с рабочего ПК (пример):
```bash
# с вашего компьютера:
scp fullchain.pem privkey.pem papatramp@<IP_SAC>:/tmp/
# на сервере:
sudo mv /tmp/fullchain.pem /tmp/privkey.pem /etc/ssl/sac/
sudo chmod 644 /etc/ssl/sac/fullchain.pem
sudo chmod 640 /etc/ssl/sac/privkey.pem
sudo chown root:root /etc/ssl/sac/fullchain.pem
sudo chown root:ssl-cert /etc/ssl/sac/privkey.pem
sudo -u www-data test -r /etc/ssl/sac/privkey.pem && echo OK
```
Проверка PEM:
```bash
sudo openssl x509 -in /etc/ssl/sac/fullchain.pem -noout -subject -dates
sudo openssl rsa -in /etc/ssl/sac/privkey.pem -check -noout 2>/dev/null || \
sudo openssl pkey -in /etc/ssl/sac/privkey.pem -check -noout
```
Убедитесь, что в сертификате есть **`*.kalinamall.ru`** или **`sac.kalinamall.ru`**.
Если пришёл только **`.pfx`** — см. [ssl-certificate.md §4.3](ssl-certificate.md#43-распаковка-pfx--p12-на-сервере).
### 9.2. Конфиг nginx (HTTPS)