Compare commits
No commits in common. 'nginx-stream' and 'master' have entirely different histories.
nginx-stre
...
master
@ -1,17 +0,0 @@ |
|||||||
FROM nginx:alpine |
|
||||||
|
|
||||||
ENV HTTPS_UPSTREAM="proxy" |
|
||||||
ENV SSTP_UPSTREAM="sstp" |
|
||||||
ENV SNI_NAME="cloud.bearns.me" |
|
||||||
# self signed for client certification |
|
||||||
# put in /etc/nginx/certs/ |
|
||||||
ENV CA_CERT="chain.pem" |
|
||||||
# put in /etc/nginx/certs/$SNI_NAME |
|
||||||
ENV CERT="fullchain.pem" |
|
||||||
ENV KEY="key.pem" |
|
||||||
|
|
||||||
RUN rm -f /etc/nginx/conf.d/default.conf |
|
||||||
|
|
||||||
COPY nginx.conf /etc/nginx/ |
|
||||||
COPY *.conf.template /etc/nginx/templates/ |
|
||||||
|
|
@ -1,37 +0,0 @@ |
|||||||
http { |
|
||||||
|
|
||||||
log_format main '$remote_addr - $remote_user [$time_local] "$request" ' |
|
||||||
'$status $body_bytes_sent "$http_referer" ' |
|
||||||
'"$http_user_agent" "$http_x_forwarded_for"'; |
|
||||||
|
|
||||||
server { |
|
||||||
listen unix:/tmp/fallback-stream.socket ssl proxy_protocol; |
|
||||||
server_name _; |
|
||||||
|
|
||||||
ssl_certificate /etc/nginx/certs/${SNI_NAME}/${CERT}; |
|
||||||
ssl_certificate_key /etc/nginx/certs/${SNI_NAME}/${KEY}; |
|
||||||
|
|
||||||
access_log /dev/stdout main; |
|
||||||
|
|
||||||
location / { |
|
||||||
root /usr/share/nginx/html; |
|
||||||
index index.html index.htm; |
|
||||||
} |
|
||||||
|
|
||||||
#error_page 404 /404.html; |
|
||||||
|
|
||||||
# redirect server error pages to the static page /50x.html |
|
||||||
# |
|
||||||
error_page 500 502 503 504 /50x.html; |
|
||||||
location = /50x.html { |
|
||||||
root /usr/share/nginx/html; |
|
||||||
} |
|
||||||
|
|
||||||
# deny access to .htaccess files, if Apache's document root |
|
||||||
# concurs with nginx's one |
|
||||||
# |
|
||||||
#location ~ /\.ht { |
|
||||||
# deny all; |
|
||||||
#} |
|
||||||
} |
|
||||||
} |
|
@ -1,12 +0,0 @@ |
|||||||
user nginx; |
|
||||||
worker_processes auto; |
|
||||||
|
|
||||||
error_log /var/log/nginx/error.log notice; |
|
||||||
pid /var/run/nginx.pid; |
|
||||||
|
|
||||||
|
|
||||||
events { |
|
||||||
worker_connections 1024; |
|
||||||
} |
|
||||||
|
|
||||||
include /etc/nginx/conf.d/*.conf; |
|
@ -1,61 +0,0 @@ |
|||||||
error_log /dev/stderr; |
|
||||||
|
|
||||||
stream { |
|
||||||
log_format stream '"$ssl_preread_server_name" $remote_addr [$time_local] ' |
|
||||||
'$protocol $status $bytes_sent $bytes_received "$upstream_addr" ' |
|
||||||
'"$upstream_bytes_sent" "$upstream_bytes_received" "$upstream_connect_time"'; |
|
||||||
|
|
||||||
map $ssl_preread_server_name $sni_name { |
|
||||||
${SNI_NAME} cert-check; |
|
||||||
default https; |
|
||||||
} |
|
||||||
|
|
||||||
upstream https { |
|
||||||
server ${HTTPS_UPSTREAM}:443; |
|
||||||
} |
|
||||||
|
|
||||||
upstream cert-check { |
|
||||||
server unix:/tmp/virtual-stream.socket; |
|
||||||
} |
|
||||||
|
|
||||||
server { |
|
||||||
listen 443; |
|
||||||
listen [::]:443; |
|
||||||
|
|
||||||
access_log /dev/stdout stream; |
|
||||||
|
|
||||||
proxy_pass $sni_name; |
|
||||||
ssl_preread on; |
|
||||||
# todo nginx-proxy by default don't listen proxy_protocol, enable it in both sides |
|
||||||
#proxy_protocol on; |
|
||||||
} |
|
||||||
|
|
||||||
map $ssl_client_verify $name { |
|
||||||
SUCCESS sstp; |
|
||||||
default fallback; |
|
||||||
} |
|
||||||
|
|
||||||
upstream sstp { |
|
||||||
server ${SSTP_UPSTREAM}:443; |
|
||||||
} |
|
||||||
|
|
||||||
upstream fallback { |
|
||||||
server unix:/tmp/fallback-stream.socket; |
|
||||||
} |
|
||||||
|
|
||||||
server { |
|
||||||
listen unix:/tmp/virtual-stream.socket ssl; |
|
||||||
|
|
||||||
ssl_certificate /etc/nginx/certs/${SNI_NAME}/${CERT}; |
|
||||||
ssl_certificate_key /etc/nginx/certs/${SNI_NAME}/${KEY}; |
|
||||||
|
|
||||||
ssl_trusted_certificate /etc/nginx/certs/${CA_CERT}; |
|
||||||
ssl_verify_client optional; |
|
||||||
|
|
||||||
# Doesn't work without it |
|
||||||
proxy_ssl on; |
|
||||||
|
|
||||||
proxy_pass $name; |
|
||||||
proxy_protocol on; |
|
||||||
} |
|
||||||
} |
|
@ -1,7 +0,0 @@ |
|||||||
server { |
|
||||||
listen 443 ssl; |
|
||||||
server_name _; |
|
||||||
ssl_certificate /etc/nginx/certs/cert.pem; |
|
||||||
ssl_certificate_key /etc/nginx/certs/privkey.pem; |
|
||||||
return 404; |
|
||||||
} |
|
@ -1,3 +0,0 @@ |
|||||||
FROM nginx:alpine |
|
||||||
|
|
||||||
COPY 00-default.conf /etc/nginx/conf.d/ |
|
Loading…
Reference in new issue