Я установил BitTorrent Sync на свой сервер Ubuntu, но заметил, что веб-интерфейс не использует ssl для входа в систему (https://server:8888/gui
не работает, однако http://server:8888/gui
работает). Это как для входа в систему, так и для использования графического интерфейса во время входа в систему.
Есть ли способ заставить его использовать вместо этого ssl?
Использование btsync
конфигурация для достижения этого см. ./btsync --dump-sample-config
ключи конфигурации "force_https", "ssl_certificate", "ssl_private_key".
Даже это кажется более простым, мне не нравится тот btsync
, у пользователя есть доступ к файлам сертификата. Вот почему я все еще предпочитаю следующий метод.
я нашел решение в [1 117] cyberciti.biz/faq/howto-linux-unix-setup-nginx-ssl-proxy использование nginx как прокси-сервер. Успешно установленный и настроенный на моей установке сервера человечности.
Дальнейшие шаги предполагают создание сертификатов SSL в каталоге /etc/nginx/certs/
(ssl.crt
и ssl.key
).
nginx
sudo apt-get install nginx
sudo rm /etc/nginx/sites-enabled/default
server {
### server port and name ###
listen 443;
ssl on;
server_name your-server-name.com;
### SSL log files ###
access_log /var/log/nginx/ssl-access.log;
error_log /var/log/nginx/ssl-error.log;
### SSL cert files ###
ssl_certificate /etc/nginx/certs/ssl.crt;
ssl_certificate_key /etc/nginx/certs/ssl.key;
### Add SSL specific settings here ###
ssl_protocols SSLv3 TLSv1 TLSv1.1 TLSv1.2;
ssl_ciphers RC4:HIGH:!aNULL:!MD5;
ssl_prefer_server_ciphers on;
keepalive_timeout 60;
ssl_session_cache shared:SSL:10m;
ssl_session_timeout 10m;
### We want full access to SSL via backend ###
location / {
proxy_pass http://{destination-host}:{destination-port};
### force timeouts if one of backend is died ##
proxy_next_upstream error timeout invalid_header http_500 http_502 http_503 http_504;
### Set headers ####
proxy_set_header Accept-Encoding "";
proxy_set_header Host $host;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
### Most PHP, Python, Rails, Java App can use this header ###
#proxy_set_header X-Forwarded-Proto https;##
#This is better##
proxy_set_header X-Forwarded-Proto $scheme;
add_header Front-End-Https on;
### By default we don't want to redirect it ####
proxy_redirect off;
}
}
значения Изменения your-server-name.com
, {destination-host}
, {destination-port}
и другие значения соответственно.
sudo ln -s /etc/nginx/sites-available/proxy /etc/nginx/sites-enabled/proxy
nginx
sudo service nginx restart