For excessively paranoid client authentication.
Updated Apr 5 2019:
because this is a gist from 2011 that people stumble into and maybe you should AES instead of 3DES in the year of our lord 2019.
some other notes:
| #!/bin/sh | |
| # on ubuntu: need some utils & dev libs | |
| sudo apt-get install apache2-utils openssl libssl-dev libpcre3-dev | |
| # compile nginx | |
| cd /tmp | |
| curl http://nginx.org/download/nginx-0.7.64.tar.gz | tar xz | |
| cd nginx* | |
| ./configure --with-http_ssl_module --with-http_dav_module \ | 
| worker_processes 1; | |
| error_log logs/error.log; | |
| events { | |
| worker_connections 1024; | |
| } | 
A lot of times you are developing a web application on your own laptop or home computer and would like to demo it to the public. Most of those times you are behind a router/firewall and you don't have a public IP address. Instead of configuring routers (often not possible), this solution gives you a public URL that's reverse tunnelled via ssh to your laptop.
Because of the relaxation of the sshd setup, it's best used on a dedicated virtual machine just for this (an Amazon micro instance for example).
People
:bowtie: | 
π :smile: | 
π :laughing: | 
|---|---|---|
π :blush: | 
π :smiley: | 
:relaxed: | 
π :smirk: | 
π :heart_eyes: | 
π :kissing_heart: | 
π :kissing_closed_eyes: | 
π³ :flushed: | 
π :relieved: | 
π :satisfied: | 
π :grin: | 
π :wink: | 
π :stuck_out_tongue_winking_eye: | 
π :stuck_out_tongue_closed_eyes: | 
π :grinning: | 
π :kissing: | 
π :kissing_smiling_eyes: | 
π :stuck_out_tongue: | 
| <?php | |
| echo '<pre>'; | |
| echo '<span style="color:blue">DOWNLOADING...</span>'.PHP_EOL; | |
| // Download file | |
| file_put_contents('wp.zip', file_get_contents('https://wordpress.org/latest.zip')); | |
| $zip = new ZipArchive(); | |
| $res = $zip->open('wp.zip'); | |
| if ($res === TRUE) { | 
| [Unit] | |
| Description=Keeps a tunnel to 'remote.example.com' open | |
| After=network.target | |
| [Service] | |
| User=autossh | |
| # -p [PORT] | |
| # -l [user] | |
| # -M 0 --> no monitoring | |
| # -N Just open the connection and do nothing (not interactive) | 
| # --------------------------------------------------------------------------- | |
| # | |
| # Description: This file holds all my BASH configurations and aliases | |
| # | |
| # Sections: | |
| # 1. Environment Configuration | |
| # 2. Make Terminal Better (remapping defaults and adding functionality) | |
| # 3. File and Folder Management | |
| # 4. Searching | |
| # 5. Process Management | 
| # | |
| # Name: nginx-tls.conf | |
| # Auth: Gavin Lloyd <[email protected]> | |
| # Desc: Nginx SSL/TLS configuration for "A+" Qualys SSL Labs rating | |
| # | |
| # Enables HTTP/2, PFS, HSTS and OCSP stapling. Configuration options not related | |
| # to SSL/TLS are not included here. | |
| # | |
| # Additional tips: | |
| # |