|
@@ -1072,7 +1072,7 @@ editor /etc/crontab
|
1072
|
1072
|
You can replace the multiple freedns entries with a single line:
|
1073
|
1073
|
|
1074
|
1074
|
#+BEGIN_SRC: bash
|
1075
|
|
-*/10 * * * * root /usr/bin/timeout 200 /usr/bin/dynamicdns
|
|
1075
|
+*/5 * * * * root /usr/bin/timeout 240 /usr/bin/dynamicdns
|
1076
|
1076
|
#+END_SRC
|
1077
|
1077
|
|
1078
|
1078
|
Then save and exit and restart the cron daemon.
|
|
@@ -6071,7 +6071,8 @@ In some environments, such as behind corporate firewalls or under regimes hostil
|
6071
|
6071
|
In that scenario you can use a tool called [[http://code.google.com/p/shellinabox/][shellinabox]] to log into your BBB via your web site rather than via a terminal. This means that you can administrate your system from any device which has a web browser and keyboard.
|
6072
|
6072
|
|
6073
|
6073
|
#+BEGIN_SRC: bash
|
6074
|
|
-apt-get install shellinabox libapache2-mod-proxy-html
|
|
6074
|
+apt-get install shellinabox libapache
|
|
6075
|
+2-mod-proxy-html
|
6075
|
6076
|
#+END_SRC
|
6076
|
6077
|
|
6077
|
6078
|
Update your Apache configuration.
|
|
@@ -7159,7 +7160,144 @@ chown -R subsonic:subsonic /var/music
|
7159
|
7160
|
service subsonic restart
|
7160
|
7161
|
#+END_SRC
|
7161
|
7162
|
|
7162
|
|
-Edit your Apache configuration.
|
|
7163
|
+Edit your web server configuration.
|
|
7164
|
+
|
|
7165
|
+#+BEGIN_SRC: bash
|
|
7166
|
+editor /etc/nginx/sites-available/$HOSTNAME
|
|
7167
|
+#+END_SRC
|
|
7168
|
+
|
|
7169
|
+Delete all existing contents then add the following:
|
|
7170
|
+
|
|
7171
|
+#+BEGIN_SRC: bash
|
|
7172
|
+upstream subsonicbackend {
|
|
7173
|
+ server 127.0.0.1:4040 max_fails=3 fail_timeout=30s;
|
|
7174
|
+ server 127.0.0.1:4040 max_fails=3 fail_timeout=60s;
|
|
7175
|
+ server 127.0.0.1:4040 max_fails=3 fail_timeout=90s;
|
|
7176
|
+}
|
|
7177
|
+
|
|
7178
|
+server {
|
|
7179
|
+ listen 80;
|
|
7180
|
+ server_name mysubsonicdomainname.com;
|
|
7181
|
+ rewrite ^ https://$server_name$request_uri? permanent;
|
|
7182
|
+}
|
|
7183
|
+
|
|
7184
|
+map $http_upgrade $connection_upgrade {
|
|
7185
|
+ default upgrade;
|
|
7186
|
+ '' close;
|
|
7187
|
+}
|
|
7188
|
+
|
|
7189
|
+server {
|
|
7190
|
+ listen 443 ssl;
|
|
7191
|
+ server_name mysubsonicdomainname.com;
|
|
7192
|
+
|
|
7193
|
+ error_log /var/www/mysubsonicdomainname.com/error.log debug;
|
|
7194
|
+
|
|
7195
|
+ ssl on;
|
|
7196
|
+ ssl_certificate /etc/ssl/certs/mysubsonicdomainname.com.crt;
|
|
7197
|
+ ssl_certificate_key /etc/ssl/private/mysubsonicdomainname.com.key;
|
|
7198
|
+
|
|
7199
|
+ ssl_session_timeout 5m;
|
|
7200
|
+ ssl_prefer_server_ciphers on;
|
|
7201
|
+ ssl_protocols TLSv1 TLSv1.1 TLSv1.2; # not possible to do exclusive
|
|
7202
|
+ ssl_ciphers 'EDH+CAMELLIA:EDH+aRSA:EECDH+aRSA+AESGCM:EECDH+aRSA+SHA384:EECDH+aRSA+SHA256:EECDH:+CAMELLIA256:+AES256:+CAMELLIA128:+AES128:+SSLv3:!aNULL:!eNULL:!LOW:!3DES:!MD5:!EXP:!PSK:!DSS:!RC4:!SEED:!ECDSA:CAMELLIA256-SHA:AES256-SHA:CAMELLIA128-SHA:AES128-SHA';
|
|
7203
|
+ #add_header Strict-Transport-Security max-age=15768000; # six months
|
|
7204
|
+ # use this only if all subdomains support HTTPS!
|
|
7205
|
+ add_header Strict-Transport-Security "max-age=15768000; includeSubDomains";
|
|
7206
|
+
|
|
7207
|
+ client_max_body_size 6m;
|
|
7208
|
+
|
|
7209
|
+ keepalive_timeout 75 75;
|
|
7210
|
+ gzip_vary off;
|
|
7211
|
+
|
|
7212
|
+ location / {
|
|
7213
|
+ proxy_pass https://subsonicbackend;
|
|
7214
|
+ proxy_http_version 1.1;
|
|
7215
|
+ proxy_redirect off;
|
|
7216
|
+ proxy_set_header Upgrade $http_upgrade;
|
|
7217
|
+ proxy_set_header Connection $connection_upgrade;
|
|
7218
|
+ proxy_set_header Host $http_host;
|
|
7219
|
+ proxy_set_header X-Real-IP $remote_addr;
|
|
7220
|
+ proxy_buffers 16 32k;
|
|
7221
|
+ }
|
|
7222
|
+}
|
|
7223
|
+
|
|
7224
|
+
|
|
7225
|
+
|
|
7226
|
+
|
|
7227
|
+server {
|
|
7228
|
+ listen 80;
|
|
7229
|
+ server_name FQDN;
|
|
7230
|
+ charset utf-8;
|
|
7231
|
+
|
|
7232
|
+ root PATH;
|
|
7233
|
+ index index.php;
|
|
7234
|
+
|
|
7235
|
+ if ( !-d $request_filename ) {
|
|
7236
|
+ rewrite ^/rest/(.*).view$ /rest/index.php?action=$1 last;
|
|
7237
|
+ }
|
|
7238
|
+
|
|
7239
|
+ if ( !-d $request_filename ) {
|
|
7240
|
+ rewrite ^/plex/(.*)$ /plex/index.php?action=$1 last;
|
|
7241
|
+ }
|
|
7242
|
+
|
|
7243
|
+ location /rest {
|
|
7244
|
+ limit_except GET POST {
|
|
7245
|
+ deny all;
|
|
7246
|
+ }
|
|
7247
|
+ }
|
|
7248
|
+
|
|
7249
|
+ location /plex {
|
|
7250
|
+ limit_except GET POST {
|
|
7251
|
+ deny all;
|
|
7252
|
+ }
|
|
7253
|
+ }
|
|
7254
|
+
|
|
7255
|
+ location ^~ /bin/ {
|
|
7256
|
+ deny all;
|
|
7257
|
+ return 403;
|
|
7258
|
+ }
|
|
7259
|
+
|
|
7260
|
+ location ^~ /config/ {
|
|
7261
|
+ deny all;
|
|
7262
|
+ return 403;
|
|
7263
|
+ }
|
|
7264
|
+
|
|
7265
|
+ location / {
|
|
7266
|
+ limit_except GET POST HEAD{
|
|
7267
|
+ deny all;
|
|
7268
|
+ }
|
|
7269
|
+ }
|
|
7270
|
+
|
|
7271
|
+ location ~ ^(.+\.php)(.*)$ {
|
|
7272
|
+ try_files $fastcgi_script_name =404;
|
|
7273
|
+ fastcgi_split_path_info ^(.+\.php)(.*)$;
|
|
7274
|
+ fastcgi_pass unix:/var/run/php5-fpm.sock;
|
|
7275
|
+ fastcgi_param SCRIPT_FILENAME $document_root$fastcgi_script_name;
|
|
7276
|
+ fastcgi_param PATH_INFO $fastcgi_path_info;
|
|
7277
|
+ include /etc/nginx/fastcgi_params;
|
|
7278
|
+ }
|
|
7279
|
+}
|
|
7280
|
+#+END_SRC
|
|
7281
|
+
|
|
7282
|
+Save and exit.
|
|
7283
|
+
|
|
7284
|
+#+BEGIN_SRC: bash
|
|
7285
|
+sed "s/mysubsonicdomainname.com/$HOSTNAME/g" /etc/nginx/sites-available/$HOSTNAME > /tmp/website
|
|
7286
|
+cp -f /tmp/website /etc/nginx/sites-available/$HOSTNAME
|
|
7287
|
+service nginx restart
|
|
7288
|
+#+END_SRC
|
|
7289
|
+
|
|
7290
|
+
|
|
7291
|
+
|
|
7292
|
+
|
|
7293
|
+
|
|
7294
|
+
|
|
7295
|
+
|
|
7296
|
+
|
|
7297
|
+
|
|
7298
|
+
|
|
7299
|
+
|
|
7300
|
+
|
7163
|
7301
|
|
7164
|
7302
|
#+BEGIN_SRC: bash
|
7165
|
7303
|
export HOSTNAME=mysubsonicdomainname.com
|