Моя конфигурация nginx как https-прокси
server {
listen 443;
server_name owncloud.mydomain.com;
ssl on;
ssl_certificate /etc/nginx/ssl/owncloud.mydomain.com/fullchain.pem;
ssl_certificate_key /etc/nginx/owncloud.mydomain.com/privkey.pem;
location / {
proxy_pass http://localhost:8080;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header Host $host;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
add_header Strict-Transport-Security "max-age=15768000; includeSubDomains; preload";
}
}
server {
listen 80;
listen [::]:80;
server_name owncloud.mydomain.com;
rewrite ^ https://owncloud.mydomain.com$request_uri? permanent;.
}
Сам owncloud работает на апаче на 8080 порту, доступ к которому из внешней сети закрыт.
Сертификаты получены от letsencrypt и лежат в папке /etc/nginx/ssl/owncloud.mydomain.com/ как указано в конфиге.
Клиенты пришедшие по http заворачиваются на https
В локальной сети можно использовать самоподписанный сертификат. В server_name указать ваш IP