|
@@ -4911,7 +4911,7 @@ Add the following, replacing /mypumpiodomainname.com/ with your domain name.
|
4911
|
4911
|
"serverUser": "pumpio",
|
4912
|
4912
|
"rejectUnauthorized": false,
|
4913
|
4913
|
"key": "/var/local/pump.io/keys/mypumpiodomainname.com.key",
|
4914
|
|
- "cert": "/var/local/pump.io/keys/mypumpiodomainname.com.crt",
|
|
4914
|
+ "cert": "/var/local/pump.io/keys/mypumpiodomainname.com.bundle.crt",
|
4915
|
4915
|
"uploaddir": "/var/local/pump.io/uploads",
|
4916
|
4916
|
"debugClient": false,
|
4917
|
4917
|
"firehose": "ofirehose.example",
|
|
@@ -4929,80 +4929,81 @@ mkdir /var/local/pump.io/uploads
|
4929
|
4929
|
mkdir /var/local/pump.io/keys
|
4930
|
4930
|
cp /etc/ssl/private/$HOSTNAME.key /var/local/pump.io/keys
|
4931
|
4931
|
cp /etc/ssl/certs/$HOSTNAME.crt /var/local/pump.io/keys
|
|
4932
|
+cp /etc/ssl/certs/$HOSTNAME.bundle.crt /var/local/pump.io/keys
|
4932
|
4933
|
useradd -s /bin/bash -d /var/local/pump.io pumpio
|
4933
|
4934
|
chown -R pumpio:pumpio /var/local/pump.io
|
4934
|
4935
|
chmod 400 /var/local/pump.io/keys/*
|
4935
|
4936
|
chmod -R 777 /opt
|
4936
|
4937
|
#+END_SRC
|
4937
|
4938
|
|
4938
|
|
-Patch the version of Apache.
|
|
4939
|
+Edit your web server configuration.
|
4939
|
4940
|
|
4940
|
4941
|
#+BEGIN_SRC: bash
|
4941
|
|
-mkdir ~/build
|
4942
|
|
-mkdir ~/build/apache2
|
4943
|
|
-cd ~/build/apache2
|
4944
|
|
-apt-get build-dep apache2
|
4945
|
|
-apt-get install autoconf
|
4946
|
|
-apt-get source apache2
|
4947
|
|
-cd apache2-*
|
4948
|
|
-wget http://freedombone.uk.to/apache-2.2-wstunnel.patch
|
4949
|
|
-sha256sum apache-2.2-wstunnel.patch
|
4950
|
|
-cfc4866da2688a8eb76e0300cf16b52539ef4e525053a3851d4b6bba9a77e439
|
4951
|
|
-
|
4952
|
|
-patch -p1 -i apache-2.2-wstunnel.patch
|
4953
|
|
-autoconf
|
4954
|
|
-./configure --enable-so --enable-proxy=shared --enable-proxy-wstunnel=shared
|
4955
|
|
-make
|
4956
|
|
-make install
|
4957
|
|
-
|
4958
|
|
-cp modules/proxy/.libs/mod_proxy_wstunnel.so /usr/lib/apache2/modules/
|
4959
|
|
-cd /etc/apache2/mods-enabled
|
4960
|
|
-ln -s /usr/lib/apache2/modules/mod_proxy_wstunnel.so ../mods-available/proxy_wstunnel.load
|
|
4942
|
+editor /etc/nginx/sites-available/$HOSTNAME
|
4961
|
4943
|
#+END_SRC
|
4962
|
4944
|
|
4963
|
|
-Within the section of your Apache site configuration:
|
|
4945
|
+Delete all existing contents then add the following:
|
4964
|
4946
|
|
4965
|
4947
|
#+BEGIN_SRC: bash
|
4966
|
|
-editor /etc/apache2/sites-available/mypumpiodomainname.com
|
4967
|
|
-#+END_SRC
|
|
4948
|
+upstream pumpbackend {
|
|
4949
|
+ server 127.0.0.1:7270 max_fails=3 fail_timeout=30s;
|
|
4950
|
+ server 127.0.0.1:7270 max_fails=3 fail_timeout=60s;
|
|
4951
|
+ server 127.0.0.1:7270 max_fails=3 fail_timeout=90s;
|
|
4952
|
+}
|
4968
|
4953
|
|
4969
|
|
-The initial section which begins with *<VirtualHost *:80>* should be replaced by the following, replacing /mypumpiodomainname.com/ with your pump.io domain name and /myusername@mydomainname.com/ with your email address.
|
|
4954
|
+server {
|
|
4955
|
+ listen 80;
|
|
4956
|
+ server_name mypumpiodomainname.com;
|
|
4957
|
+ rewrite ^ https://$server_name$request_uri? permanent;
|
|
4958
|
+}
|
4970
|
4959
|
|
4971
|
|
-#+BEGIN_SRC: bash
|
4972
|
|
-<VirtualHost *:80>
|
4973
|
|
- ServerAdmin myusername@mydomainname.com
|
4974
|
|
- ServerName mypumpiodomainname.com
|
|
4960
|
+map $http_upgrade $connection_upgrade {
|
|
4961
|
+ default upgrade;
|
|
4962
|
+ '' close;
|
|
4963
|
+}
|
4975
|
4964
|
|
4976
|
|
- RewriteEngine On
|
4977
|
|
- RewriteCond %{HTTPS} off
|
4978
|
|
- RewriteRule (.*) https://%{HTTP_HOST}%{REQUEST_URI}
|
4979
|
|
-</VirtualHost>
|
4980
|
|
-#+END_SRC
|
|
4965
|
+server {
|
|
4966
|
+ listen 443 ssl;
|
|
4967
|
+ server_name mypumpiodomainname.com;
|
4981
|
4968
|
|
4982
|
|
-Add the following in the section which begins with *<VirtualHost *:443>*.
|
|
4969
|
+ error_log /var/www/mypumpiodomainname.com/error.log debug;
|
4983
|
4970
|
|
4984
|
|
-#+BEGIN_SRC: bash
|
4985
|
|
- ProxyVia On
|
4986
|
|
- ProxyPreserveHost On
|
4987
|
|
- ProxyRequests Off
|
4988
|
|
- SSLProxyEngine On
|
|
4971
|
+ ssl on;
|
|
4972
|
+ ssl_certificate /etc/ssl/certs/mypumpiodomainname.com.bundle.crt;
|
|
4973
|
+ ssl_certificate_key /etc/ssl/private/mypumpiodomainname.com.key;
|
|
4974
|
+
|
|
4975
|
+ ssl_session_timeout 5m;
|
|
4976
|
+ ssl_prefer_server_ciphers on;
|
|
4977
|
+ ssl_protocols TLSv1 TLSv1.1 TLSv1.2; # not possible to do exclusive
|
|
4978
|
+ 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';
|
|
4979
|
+ #add_header Strict-Transport-Security max-age=15768000; # six months
|
|
4980
|
+ # use this only if all subdomains support HTTPS!
|
|
4981
|
+ add_header Strict-Transport-Security "max-age=15768000; includeSubDomains";
|
|
4982
|
+
|
|
4983
|
+ client_max_body_size 6m;
|
|
4984
|
+
|
|
4985
|
+ keepalive_timeout 75 75;
|
|
4986
|
+ gzip_vary off;
|
4989
|
4987
|
|
4990
|
|
- ProxyPass / https://localhost:7270/
|
4991
|
|
- ProxyPassReverse / https://localhost:7270/
|
|
4988
|
+ location / {
|
|
4989
|
+ proxy_pass https://pumpbackend;
|
|
4990
|
+ proxy_http_version 1.1;
|
|
4991
|
+ proxy_redirect off;
|
|
4992
|
+ proxy_set_header Upgrade $http_upgrade;
|
|
4993
|
+ proxy_set_header Connection $connection_upgrade;
|
|
4994
|
+ proxy_set_header Host $http_host;
|
|
4995
|
+ proxy_set_header X-Real-IP $remote_addr;
|
|
4996
|
+ proxy_buffers 16 32k;
|
|
4997
|
+ }
|
|
4998
|
+}
|
4992
|
4999
|
#+END_SRC
|
4993
|
5000
|
|
4994
|
5001
|
Save and exit.
|
4995
|
5002
|
|
4996
|
5003
|
#+BEGIN_SRC: bash
|
4997
|
|
-a2enmod ssl
|
4998
|
|
-a2enmod cache
|
4999
|
|
-a2enmod disk_cache
|
5000
|
|
-a2enmod expires
|
5001
|
|
-a2enmod proxy
|
5002
|
|
-a2enmod proxy_connect
|
5003
|
|
-a2enmod proxy_http
|
5004
|
|
-apachectl configtest
|
5005
|
|
-service apache2 restart
|
|
5004
|
+sed "s/mypumpiodomainname.com/$HOSTNAME/g" /etc/nginx/sites-available/$HOSTNAME > /tmp/website
|
|
5005
|
+cp -f /tmp/website /etc/nginx/sites-available/$HOSTNAME
|
|
5006
|
+service nginx restart
|
5006
|
5007
|
npm install forever -g
|
5007
|
5008
|
#+END_SRC
|
5008
|
5009
|
|