Материал подготовлен командой Simple-Server. Перед выпуском сертификата A-запись домена должна указывать на IP VPS.
Материал применим к VPS/VDS с Nextcloud с автоустановкой на Simple-Server.
HTTPS и домен для Nextcloud
Рецепт Simple-Server поднимает Nextcloud на порту 80 контейнера (проброс на хост). Для production нужен HTTPS — обычно через reverse-proxy и Let's Encrypt.
Предварительно: A-запись настроена и домен резолвится на IP VPS.
Вариант 1. Caddy (проще всего)
Caddy автоматически получает и обновляет сертификаты.
apt install -y debian-keyring debian-archive-keyring apt-transport-https curl
curl -1sLf 'https://dl.cloudsmith.io/public/caddy/stable/gpg.key' | gpg --dearmor -o /usr/share/keyrings/caddy-stable-archive-keyring.gpg
curl -1sLf 'https://dl.cloudsmith.io/public/caddy/stable/debian.deb.txt' | tee /etc/apt/sources.list.d/caddy-stable.list
apt update && apt install -y caddy/etc/caddy/Caddyfile:
cloud.example.com {
```bash
reverse_proxy 127.0.0.1:8080}
Если Nextcloud слушает порт 80 на хосте напрямую — укажите `127.0.0.1:80`. Проверьте:
```bash
ss -tlnp | grep -E ':80|:8080'Перезапуск:
systemctl reload caddyВариант 2. Nginx + Certbot
apt install -y nginx certbot python3-certbot-nginx/etc/nginx/sites-available/nextcloud:
server {
```bash
listen 80;
server_name cloud.example.com;
location / {
proxy_pass http://127.0.0.1:80;
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;
}}
```bash
ln -s /etc/nginx/sites-available/nextcloud /etc/nginx/sites-enabled/
nginx -t && systemctl reload nginx
certbot --nginx -d cloud.example.comНастройки Nextcloud после HTTPS
cd /opt/nextcloud
docker compose exec -u www-data app php occ config:system:set overwrite.cli.url --value=https://cloud.example.com
docker compose exec -u www-data app php occ config:system:set overwriteprotocol --value=https
docker compose exec -u www-data app php occ config:system:set trusted_domains 2 --value=cloud.example.comЕсли используете reverse-proxy на том же хосте:
docker compose exec -u www-data app php occ config:system:set trusted_proxies 0 --value=127.0.0.1
docker compose exec -u www-data app php occ config:system:set overwritehost --value=cloud.example.comHSTS (опционально)
После проверки стабильной работы HTTPS можно включить HSTS в конфиге прокси. Не включайте HSTS, пока не уверены, что сертификат обновляется автоматически.
Клиенты после перехода на HTTPS
Обновите URL в десктоп- и мобильных клиентах на https://cloud.example.com. Старые закладки с http:// перенаправятся, если настроен redirect в Caddy/Nginx.
Проверка
curl -I https://cloud.example.com/status.phpОтвет 200 и JSON со "installed":true — сервер отвечает корректно.
В админке Nextcloud: Обзор (Overview) — раздел предупреждений должен исчезнуть после исправления HTTPS и trusted domains.
Что дальше
→ Требования и обновление Nextcloud
VPS с Nextcloud
Заказать VPS с автоустановкой.
VPS с Nextcloud
Заказать VPS/VDS с Nextcloud — облако устанавливается автоматически при заказе с посадочной страницы.