Две недели go Я решил узнать, как настроить сервер Ubuntu для установки Nextcloud. После прочтения нескольких статей мне удалось установить Nextcloud с помощью оснастки, и я настроил его для прослушивания порта 5000. Мне пришлось это сделать, потому что я хочу установить и другие веб-приложения, поэтому я не хотел, чтобы nextcloud резервировал порты 80 и 443. Это сработало, и я протестировал его с помощью веб-браузера, моего устройства Android, и я также установил windows настольное приложение для загрузки и синхронизации моих файлов.
Я сделал первый шаг, и у меня был рабочий сервер Nextcloud. Следующим шагом было защитить его с помощью SSL-сертификата Let's Encrypt. Я потратил несколько часов, пытаясь понять, как настроить certbot для генерации SSL-сертификатов, и я использовал веб-сервер NGINX, чтобы перенаправить запросы с порта 443 моих серверов на порт 5000, который прослушивал nextcloud. Я использовал следующий файл конфигурации, чтобы настроить мой домен для перенаправления на порт 5000.
server {
listen *:80;
server_name cloud.computermagic.gr;
return 301 https://$server_name$request_uri;
}
server {
listen *:443 ssl http2;
server_name cloud.computermagic.gr;
ssl on;
ssl_certificate /etc/letsencrypt/live/cloud.computermagic.gr/fullchain.pem;
ssl_certificate_key /etc/letsencrypt/live/cloud.computermagic.gr/privkey.pem;
ssl_stapling on;
ssl_stapling_verify on;
location / {
add_header Front-End-Https on;
proxy_headers_hash_max_size 512;
proxy_headers_hash_bucket_size 64;
proxy_set_header Host $host;
proxy_set_header X-Forwarded-Proto $scheme;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_pass http://localhost:5000;
}
}
Я попробовал сервер nextcloud с chrome, и все было идеально. У меня был сервер за доменом, работающий с сертификатом SSL. Затем я попытался использовать приложения android и windows, но по какой-то причине я не смог войти в систему.
Приложение открывается, я набираю адрес сервера, и когда я ввожу имя пользователя и пароль, чтобы позволить приложению получить доступ к моему серверу, значок загрузки вращается навсегда. Он не отображает сообщение об ошибке, чтобы я мог понять, в чем проблема, и я не опытный пользователь linux, поэтому я пойму, в чем проблема.
Полагаю, что-то не так с файлом конфигурации, потому что без перенаправления сервер, кажется, работает должным образом со всеми приложениями, которые я пробовал.
Может кто-нибудь мне помочь?
ОБНОВЛЕНИЕ Я удалил перманентное перенаправление, и оно работает.
server {
listen *:80;
server_name cloud.computermagic.gr;
# return 301 https://$server_name$request_uri;
location / {
add_header Front-End-Https on;
proxy_headers_hash_max_size 512;
proxy_headers_hash_bucket_size 64;
proxy_set_header Host $host;
proxy_set_header X-Forwarded-Proto $scheme;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_pass http://localhost:5000;
}
}
server {
listen *:443 ssl http2;
server_name cloud.computermagic.gr;
ssl on;
ssl_certificate /etc/letsencrypt/live/cloud.computermagic.gr/fullchain.pem;
ssl_certificate_key /etc/letsencrypt/live/cloud.computermagic.gr/privkey.pem;
ssl_stapling on;
ssl_stapling_verify on;
location / {
add_header Front-End-Https on;
proxy_headers_hash_max_size 512;
proxy_headers_hash_bucket_size 64;
proxy_set_header Host $host;
proxy_set_header X-Forwarded-Proto $scheme;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_pass http://localhost:5000;
}
}
Безопасно ли оставить это так?