Unverified Commit ad62961c authored by Kroese's avatar Kroese Committed by GitHub
Browse files

feat: Implement password protection (#647)

parent 011f68e7
Loading
Loading
Loading
Loading
+11 −4
Original line number Diff line number Diff line
@@ -253,13 +253,20 @@ hasDisk() {
}

user="admin"
pass="$user"

[ -n "${USER:-}" ] && user="${USER:-}"
[ -n "${PASS:-}" ] && pass="${PASS:-}"

if [ -n "${PASS:-}" ]; then

  sed -i "s/auth_basic off/auth_basic \"NoVNC\"/g" /etc/nginx/sites-enabled/web.conf

else

  sed -i "s/auth_basic \"NoVNC\"/auth_basic off/g" /etc/nginx/sites-enabled/web.conf

fi

# Set password
echo "$user:{PLAIN}$pass" > /etc/nginx/.htpasswd
echo "$user:{PLAIN}${PASS:-}" > /etc/nginx/.htpasswd

# Start webserver
cp -r /var/www/* /run/shm
+1 −58
Original line number Diff line number Diff line
@@ -11,66 +11,9 @@ server {
    error_log /dev/null;
    access_log /dev/null;

    include /etc/nginx/mime.types;

    gzip on;
    gzip_vary on;
    gzip_proxied any;
    gzip_comp_level 5;
    gzip_min_length 500;
    gzip_disable "msie6";
    gzip_types text/css text/javascript text/xml text/plain text/x-component application/javascript application/json application/xml application/rss+xml font/truetype font/opentype application/vnd.ms-fontobject image/svg+xml;

    add_header Cache-Control "no-cache";

    location / {

      root /run/shm;

      if ( -f /run/shm/index.html) {
        break;
      }

      try_files /index.html @vnc;
    }

    location @vnc {

      root /usr/share/novnc;
      index vnc.html;

    }

    location /websockify {

      proxy_http_version 1.1;

      proxy_set_header Connection 'upgrade';
      proxy_set_header Upgrade $http_upgrade;

      proxy_buffering off;
      proxy_read_timeout 3600s;
      proxy_send_timeout 3600s;

      proxy_pass http://127.0.0.1:5700/;
    }

}

server {

    listen 8007;
    auth_basic "NoVNC";
    auth_basic off;
    auth_basic_user_file /etc/nginx/.htpasswd;

    autoindex on;
    tcp_nodelay on;
    server_tokens off;
    absolute_redirect off;

    error_log /dev/null;
    access_log /dev/null;

    include /etc/nginx/mime.types;

    gzip on;