I have configured a nginx reverse proxy for the urbackup server. When I access the urbackup server interface directly from local via the direct server ip (i.e. not via the reverse proxy server) everything seems normal. However, when I try to access it via my configured domain name, the web interface is not working properly and is also not displayed correctly (see image)
The Urbackup server and the nginx server are run the the same docker container. In the following are the relevant config files. The Urbackup server logs do seem to be normal and not log anything surprising.
urbackup.log
2019-02-07 20:25:39: Starting HTTP-Server on port 55414
2019-02-07 20:25:39: HTTP: Server started up successfully!
2019-02-07 20:25:39: SQLite: recovered 4 frames from WAL file /var/urbackup/backup_server.db-wal code: 283
2019-02-07 20:25:39: SQLite: recovered 19 frames from WAL file /var/urbackup/backup_server_link_journal.db-wal code: 283
2019-02-07 20:25:39: SQLite: recovered 14 frames from WAL file /var/urbackup/backup_server_settings.db-wal code: 283
2019-02-07 20:25:39: SQLite: recovered 4 frames from WAL file /var/urbackup/backup_server.db-wal code: 283
2019-02-07 20:25:39: SQLite: recovered 14 frames from WAL file /var/urbackup/backup_server_settings.db-wal code: 283
2019-02-07 20:25:39: SQLite: recovered 19 frames from WAL file /var/urbackup/backup_server_link_journal.db-wal code: 283
2019-02-07 20:25:39: Started UrBackup…
2019-02-07 20:25:39: Removing temporary files…
2019-02-07 20:25:39: Recreating temporary folder…
2019-02-07 20:25:39: Image mounting disabled: TEST FAILED: guestmount is missing (libguestfs-tools)
2019-02-07 20:25:39: UrBackup Server start up complete.
2019-02-07 20:25:39: Looking for old Sessions… 0 sessions
2019-02-07 20:25:39: Server started up successfully!
2019-02-07 20:25:39: Downloading version file…
2019-02-07 20:25:41: Downloading version file…
2019-02-07 20:25:41: Downloading version file…
2019-02-07 20:25:41: Downloading server version info…
2019-02-07 20:25:42: Downloading dataplan database…
2019-02-07 20:26:07: WARNING: Shutting down (Signal 15)
2019-02-07 20:26:08: Exited Loop
2019-02-07 20:26:08: Deleting at…
2019-02-07 20:26:08: Deleting SelectThreads…
2019-02-07 20:26:08: Deleting lbs…
2019-02-07 20:26:08: Shutting down plugins…
2019-02-07 20:26:08: Deleting server…
2019-02-07 20:26:12: Starting HTTP-Server on port 55414
2019-02-07 20:26:12: HTTP: Server started up successfully!
2019-02-07 20:26:12: SQLite: recovered 4 frames from WAL file /var/urbackup/backup_server.db-wal code: 283
2019-02-07 20:26:12: SQLite: recovered 20 frames from WAL file /var/urbackup/backup_server_link_journal.db-wal code: 283
2019-02-07 20:26:12: SQLite: recovered 14 frames from WAL file /var/urbackup/backup_server_settings.db-wal code: 283
2019-02-07 20:26:12: SQLite: recovered 4 frames from WAL file /var/urbackup/backup_server.db-wal code: 283
2019-02-07 20:26:12: SQLite: recovered 14 frames from WAL file /var/urbackup/backup_server_settings.db-wal code: 283
2019-02-07 20:26:12: SQLite: recovered 20 frames from WAL file /var/urbackup/backup_server_link_journal.db-wal code: 283
2019-02-07 20:26:12: Started UrBackup…
2019-02-07 20:26:12: Removing temporary files…
2019-02-07 20:26:12: Recreating temporary folder…
2019-02-07 20:26:12: Image mounting disabled: TEST FAILED: guestmount is missing (libguestfs-tools)
2019-02-07 20:26:12: UrBackup Server start up complete.
2019-02-07 20:26:12: Server started up successfully!
2019-02-07 20:26:12: Looking for old Sessions… 0 sessions
2019-02-07 20:26:12: Downloading version file…
2019-02-07 20:26:13: Downloading version file…
2019-02-07 20:26:13: Downloading version file…
2019-02-07 20:26:13: Downloading server version info…
2019-02-07 20:26:13: Downloading dataplan database…
2019-02-07 20:26:20: WARNING: Shutting down (Signal 15)
2019-02-07 20:26:20: Exited Loop
2019-02-07 20:26:20: Deleting at…
2019-02-07 20:26:20: Deleting SelectThreads…
2019-02-07 20:26:20: Deleting lbs…
2019-02-07 20:26:20: Shutting down plugins…
2019-02-07 20:26:20: Deleting server…
2019-02-07 20:26:38: Starting HTTP-Server on port 55414
2019-02-07 20:26:38: HTTP: Server started up successfully!
2019-02-07 20:26:38: SQLite: recovered 4 frames from WAL file /var/urbackup/backup_server.db-wal code: 283
2019-02-07 20:26:38: SQLite: recovered 21 frames from WAL file /var/urbackup/backup_server_link_journal.db-wal code: 283
2019-02-07 20:26:38: SQLite: recovered 14 frames from WAL file /var/urbackup/backup_server_settings.db-wal code: 283
2019-02-07 20:26:38: SQLite: recovered 4 frames from WAL file /var/urbackup/backup_server.db-wal code: 283
2019-02-07 20:26:38: SQLite: recovered 14 frames from WAL file /var/urbackup/backup_server_settings.db-wal code: 283
2019-02-07 20:26:38: SQLite: recovered 21 frames from WAL file /var/urbackup/backup_server_link_journal.db-wal code: 283
2019-02-07 20:26:38: Started UrBackup…
2019-02-07 20:26:38: Removing temporary files…
2019-02-07 20:26:38: Recreating temporary folder…
2019-02-07 20:26:38: Image mounting disabled: TEST FAILED: guestmount is missing (libguestfs-tools)
2019-02-07 20:26:38: UrBackup Server start up complete.
2019-02-07 20:26:38: Looking for old Sessions… 0 sessions
2019-02-07 20:26:38: Server started up successfully!
2019-02-07 20:26:38: Downloading version file…
2019-02-07 20:26:39: Downloading version file…
2019-02-07 20:26:39: Downloading version file…
2019-02-07 20:26:39: Downloading server version info…
2019-02-07 20:26:39: Downloading dataplan database…
2019-02-07 20:43:31: WARNING: Shutting down (Signal 15)
2019-02-07 20:43:32: Exited Loop
2019-02-07 20:43:32: Deleting at…
2019-02-07 20:43:32: Deleting SelectThreads…
2019-02-07 20:43:32: waiting for selectthread…
2019-02-07 20:43:32: deleting workers
2019-02-07 20:43:32: worker: 0
2019-02-07 20:43:32: waiting for worker…
2019-02-07 20:43:34: done.
2019-02-07 20:43:34: worker: 1
2019-02-07 20:43:34: waiting for worker…
2019-02-07 20:43:34: done.
2019-02-07 20:43:34: worker: 2
2019-02-07 20:43:34: waiting for worker…
2019-02-07 20:43:34: done.
2019-02-07 20:43:34: worker: 3
2019-02-07 20:43:35: waiting for worker…
2019-02-07 20:43:35: done.
2019-02-07 20:43:35: worker: 4
2019-02-07 20:43:35: waiting for worker…
2019-02-07 20:43:35: done.
2019-02-07 20:43:35: Deleting lbs…
2019-02-07 20:43:35: Shutting down plugins…
2019-02-07 20:43:35: Deleting server…
2019-02-10 12:54:05: Starting HTTP-Server on port 55414
2019-02-10 12:54:05: HTTP: Server started up successfully!
2019-02-10 12:54:05: SQLite: recovered 4 frames from WAL file /var/urbackup/backup_server.db-wal code: 283
2019-02-10 12:54:05: SQLite: recovered 22 frames from WAL file /var/urbackup/backup_server_link_journal.db-wal code: 283
2019-02-10 12:54:05: SQLite: recovered 16 frames from WAL file /var/urbackup/backup_server_settings.db-wal code: 283
2019-02-10 12:54:06: SQLite: recovered 4 frames from WAL file /var/urbackup/backup_server.db-wal code: 283
2019-02-10 12:54:06: SQLite: recovered 16 frames from WAL file /var/urbackup/backup_server_settings.db-wal code: 283
2019-02-10 12:54:06: SQLite: recovered 22 frames from WAL file /var/urbackup/backup_server_link_journal.db-wal code: 283
2019-02-10 12:54:06: Started UrBackup…
2019-02-10 12:54:06: Removing temporary files…
2019-02-10 12:54:06: Recreating temporary folder…
2019-02-10 12:54:06: Image mounting disabled: TEST FAILED: guestmount is missing (libguestfs-tools)
2019-02-10 12:54:06: UrBackup Server start up complete.
2019-02-10 12:54:06: Looking for old Sessions… 0 sessions
2019-02-10 12:54:06: Server started up successfully!
2019-02-10 12:54:06: Downloading version file…
2019-02-10 12:54:07: Downloading version file…
2019-02-10 12:54:07: Downloading version file…
2019-02-10 12:54:07: Downloading server version info…
2019-02-10 12:54:07: Downloading dataplan database…
nginx.conf
worker_processes 1;
events {
worker_connections 1024;
}
http {
server {
listen 443 ssl http2;
listen [::]:443 ssl http2;
server_name www.backup.mydomain.ch backup.mydomain.ch;
ssl_protocols TLSv1.2 TLSv1.1;
ssl_prefer_server_ciphers on;
ssl_ciphers ECDH+AESGCM:ECDH+AES256:ECDH+AES128:DH+3DES:!ADH:!AECDH:!MD5;
ssl_ecdh_curve secp384r1;
ssl_session_tickets off;
ssl_stapling on;
ssl_stapling_verify on;
resolver 8.8.8.8 8.8.4.4;
ssl_certificate /etc/letsencrypt/live/www.backup.mydomain.ch/fullchain.pem;
ssl_certificate_key /etc/letsencrypt/live/www.backup.mydomain.ch/privkey.pem;
add_header Strict-Transport-Security "max-age=31536000; includeSubDomains; preload";
add_header X-XSS-Protection "1; mode=block" always;
add_header X-Content-Type-Options "nosniff" always;
add_header X-Frame-Options "DENY" always;
add_header Content-Security-Policy "frame-src 'self'; default-src 'self'; script-src 'self' 'unsafe-inline' https://maxcdn.bootstrapcdn.com https://ajax.googleapis.com; img-src 'self'; style-src 'self' https://maxcdn.bootstrapcdn.com; font-src 'self' data: https://maxcdn.bootstrapcdn.com; form-action 'self'; upgrade-insecure-requests;" always;
add_header Referrer-Policy "strict-origin-when-cross-origin" always;
location /x {
root /usr/share/urbackup/www;
index index.htm;
include /etc/nginx/fastcgi_params;
fastcgi_pass urbackupserver:55413;
}
location / {
root /usr/share/urbackup/www;
index index.htm;
proxy_pass http://urbackupserver:55414;
}
}
}
docker-compose.yml
version: ‘3’
services:
reverseProxy:
depends_on:
- urbackupserver
image: nginx:latest
container_name: reverseProxy_production
volumes:
- ./nginx.conf:/etc/nginx/nginx.conf
- ./dh-param/dhparam-2048.pem:/etc/ssl/certs/dhparam-2048.pem
- /docker-volumes/etc/letsencrypt/live/www.backup.mydomain.ch/fullchain.pem:/etc/letsencrypt/live/www.backup.mydomain.ch/fullchain.pem
- /docker-volumes/etc/letsencrypt/live/www.backup.mydomain.ch/privkey.pem:/etc/letsencrypt/live/www.backup.mydomain.ch/privkey.pem
- /docker-volumes/data/letsencrypt:/data/letsencrypt
ports:
- 80:80
- 443:443
networks:
- reverseProxyNetwork
urbackupserver:
# depends_on:
# - reverseProxy
image: uroni/urbackup-server
container_name: urbackupserver
volumes:
- /mnt/backup/urbackup/backups/:/backups
- /mnt/backup/urbackup/database/:/var/urbackup
- /mnt/backup/urbackup/dataset/:/etc/urbackup/dataset
- ./urbackupsrv:/etc/default/urbackupsrv
ports:
- 55413-55415:55413-55415/tcp
- 35623:35623/udp
networks:
- reverseProxyNetwork
networks:
reverseProxyNetwork:
OS: Debian GNU/Linux 9.6 (stretch)
nginx: 1.15.8
Urbackup Server: latest docker version
Docker: 18.09.0