Домены и SSL
Покупка домена
Регистраторы:
- Namecheap — дёшево, хорошая поддержка
- Cloudflare — по себестоимости
- GoDaddy — дорого, но популярно
- Reg.ru — для России
DNS-записи
- A — домен → IP-адрес
- AAAA — домен → IPv6
- CNAME — домен → другой домен
- MX — почта
- TXT — верификация, SPF, DKIM
Для Vercel
A @ 76.76.21.21
CNAME www cname.vercel-dns.com
Или через NS-серверы Vercel (проще).
Для своего сервера
A @ <IP сервера>
A www <IP сервера>
Поддомены
A api <IP>
A app <IP>
A admin <IP>
SSL
На Vercel
Автоматически, бесплатно, продлевается сам.
Let's Encrypt на сервере
sudo apt install certbot python3-certbot-nginx
sudo certbot --nginx -d example.com -d www.example.com
Certbot:
- Получит сертификат
- Настроит Nginx
- Установит автообновление
Проверка автообновления:
sudo certbot renew --dry-run
Сертификат обновляется за 30 дней до истечения.
Nginx с SSL
server {
listen 443 ssl http2;
server_name example.com;
ssl_certificate /etc/letsencrypt/live/example.com/fullchain.pem;
ssl_certificate_key /etc/letsencrypt/live/example.com/privkey.pem;
ssl_protocols TLSv1.2 TLSv1.3;
ssl_ciphers HIGH:!aNULL:!MD5;
ssl_prefer_server_ciphers on;
location / {
proxy_pass http://localhost:3000;
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header X-Forwarded-Proto $scheme;
}
}
server {
listen 80;
server_name example.com;
return 301 https://$host$request_uri;
}
Редирект с HTTP на HTTPS.
HSTS
Заголовок для принудительного HTTPS:
add_header Strict-Transport-Security "max-age=31536000; includeSubDomains; preload" always;
Осторожно: preload необратим на месяцы.
Wildcard-сертификат
Для *.example.com:
sudo certbot --nginx -d example.com -d "*.example.com" --manual --preferred-challenges dns
Требует DNS-проверку.
Cloudflare
Проксирует трафик:
- DDoS-защита
- CDN
- Кеш
- SSL
Настройки:
- SSL/TLS → Full (strict)
- Always Use HTTPS
- Automatic HTTPS Rewrites
Проверка
- SSL Labs: ssllabs.com/ssltest
- Security Headers: securityheaders.com
- Mozilla Observatory: observatory.mozilla.org
Почта
Если нужна почта на домене:
MX @ 10 mail.example.com
TXT @ "v=spf1 include:_spf.google.com ~all"
dkim._domainkey ...
Для отправки через сервисы (Resend, SendGrid) — свои записи.
Итоги
- A и CNAME записи
- Let's Encrypt бесплатно
- Автообновление через certbot
- HSTS для принудительного HTTPS
- Cloudflare для CDN и защиты
- Проверяй через SSL Labs