J'ai installé BitTorrent Sync sur mon serveur Ubuntu, mais j'ai remarqué que l'interface graphique n'utilise pas ssl pour la connexion (https://server:8888/gui
ne fonctionne pas, cependant http://server:8888/gui
utilise). C’est à la fois pour vous connecter et utiliser l’interface utilisateur pendant que vous êtes connecté.
Est-il possible de le forcer à utiliser ssl à la place?
Utilisez btsync
configuration pour cela, voir ./btsync --dump-sample-config
clés de configuration "force_https", "ssl_certificate", "ssl_private_key".
Même si cela semble plus simple, je n'aime pas que l'utilisateur btsync
ait accès aux fichiers de certificat. C'est pourquoi je préfère toujours la méthode suivante.
J'ai trouvé la solution dans cyberciti.biz/faq/howto-linux-unix-setup-nginx-ssl-proxy en utilisant nginx comme serveur proxy. Installé et configuré avec succès sur l’installation de mon serveur Ubuntu.
Les étapes suivantes supposent que vous avez créé des certificats SSL dans le répertoire /etc/nginx/certs/
(ssl.crt
et ssl.key
).
nginx
Sudo apt-get install nginx
Sudo rm /etc/nginx/sites-enabled/default
/etc/nginx/sites-available/proxy
avec son contenuserver {
### 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;
}
}
Modifiez les valeurs your-server-name.com
, {destination-Host}
, {destination-port}
et les autres valeurs en conséquence.
Sudo ln -s /etc/nginx/sites-available/proxy /etc/nginx/sites-enabled/proxy
nginx
Sudo service nginx restart