Advertisement
Guest User

Untitled

a guest
Apr 30th, 2019
383
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Nginx 3.62 KB | None | 0 0
  1. worker_processes  1;
  2. events {
  3.     worker_connections  1024;
  4. }
  5.  
  6. http {
  7.     include       mime.types;
  8.     default_type  application/octet-stream;
  9.  
  10.     sendfile        on;
  11.     keepalive_timeout  65;
  12.  
  13.    lua_package_path '/usr/share/lua/5.1/?.lua;;';
  14.    lua_shared_dict discovery 1m;
  15.    lua_shared_dict jwks 1m;
  16.    lua_ssl_trusted_certificate /etc/ssl/certs/ca-bundle.crt;
  17.  
  18.    variables_hash_max_size 2048;
  19.    server_names_hash_bucket_size 128;
  20.    server_tokens off;
  21.    resolver 192.168.100.4 valid=30s ipv6=off;
  22.    resolver_timeout 11s;
  23.  
  24.     server {
  25.         listen       80;
  26.         server_name  localhost;
  27.  
  28.         location / {
  29.             root   html;
  30.             index  index.html index.htm;
  31.         }
  32.  
  33.  
  34.         error_page   500 502 503 504  /50x.html;
  35.         location = /50x.html {
  36.             root   html;
  37.         }
  38.     }
  39.  
  40. upstream keycloak {
  41.          server 192.168.100.54:8080;
  42.          server 192.168.100.55:8080;
  43.         }
  44.  
  45.         server {
  46.                server_name nas-10-keycloak nas-10-keycloak.lan;
  47.                listen 80;
  48.                access_log /var/log/access_keycloack.lan;
  49.                 error_log /var/log/error_keycloack.lan;
  50.        large_client_header_buffers 4 32k;
  51.  
  52.  
  53.         location / {
  54.               proxy_pass       http://keycloak;
  55.          proxy_http_version 1.1;
  56.         proxy_buffering off;
  57.         proxy_set_header X-Real-IP  $remote_addr;
  58.         proxy_set_header Host $host;
  59.         proxy_set_header X-Forwarded-For $remote_addr;
  60.         proxy_set_header Upgrade $http_upgrade;
  61.         proxy_set_header Connection "upgrade";
  62.             }
  63.         }
  64.  
  65.  
  66. upstream metropolis {
  67.         server 192.168.100.14:81       max_fails=3 fail_timeout=30s;
  68.    }
  69.  
  70.    server {
  71.         listen       80;
  72.         server_name  nas-10-metropolis nas-10-metropolis.lan;
  73.         proxy_intercept_errors off;
  74.         access_log  logs/nas-10-metropolis.log;
  75.         error_log  logs/nas-10-metropolis.error.log;
  76.  
  77.         root   /usr/share/nginx/html;
  78.  
  79.         lua_code_cache off;
  80.         set $session_secret 723p4hR234t3986asdh1286dQAS65325IC0022G;
  81.  
  82.         access_by_lua '
  83.          local opts = {
  84.            redirect_uri_path = "/redirect_uri",
  85.            discovery = "http://nas-10-keycloak.lan/auth/realms/sso/.well-known/openid-configuration",
  86.            client_id = "metropolis",
  87.            client_secret = "c1sda3asd5-1a75-443b-86eb-69e07b74244a",
  88.            ssl_verify = "no",
  89.            redirect_uri_scheme = "http",
  90.            logout_path = "/logout",
  91.            redirect_after_logout_uri = "http://nas-10-keycloak.lan/auth/realms/sso/protocol/openid-connect/logout",
  92.            redirect_after_logout_with_id_token_hint = false,
  93.            accept_none_alg = false,
  94.            accept_unsupported_alg = false,
  95.            renew_access_token_on_expiry = true,
  96.            session_contents = {access_token=true, id_token=true}
  97.          }
  98.          local res, err = require("resty.openidc").authenticate(opts)
  99.  
  100.          if err then
  101.            ngx.status = 403
  102.            ngx.say(err)
  103.            ngx.exit(ngx.HTTP_FORBIDDEN)
  104.          end
  105.       ';
  106.  
  107.       expires           0;
  108.       add_header        Cache-Control private;
  109.       error_page 404 /404.html;
  110.           location = /40x.html {
  111.       }
  112.       error_page 500 502 503 504 /50x.html;
  113.           location = /50x.html {
  114.       }
  115.         location / {
  116.            proxy_pass http://metropolis;
  117.            proxy_set_header Host $host;
  118.        proxy_set_header X-Real-IP $remote_addr;
  119.        proxy_set_header X-Forwarded-Proto $scheme;
  120.        proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
  121.     }
  122.    }
  123. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement