owncloud / owncloud/ocis

ocis can't work with nginx's client certificate verification

Open
#7,024 1 comment 0 reactions 0 assignees View on GitHub
Type:Bug
Dominant language
Go
Stars
2.1k
Forks
274
Avg merge
2d 1h
Merged PRs (30d)
103

Description

### I am not an English speaker, part of the content below is translated from Google Translate
### Steps to reproduce
1. fresh install of debian11 on raspberry pi, the following operations will use the root user
2. get oCIS binary then put it in /usr/local/bin/, chmod +x
3. ``/etc/ocis/ocis.env``
```
PROXY_TLS=false
OCIS_INSECURE=false
OCIS_URL=https://example.com:2885
PROXY_HTTP_ADDR=0.0.0.0:6001
OCIS_LOG_LEVEL=error
OCIS_CONFIG_DIR=/etc/ocis
OCIS_BASE_DATA_PATH=/testocis
```
4. ``/etc/systemd/system/ocis.service``
```
[Unit]
Description=OCIS server

[Service]
Type=simple
User=ocis
Group=ocis
EnvironmentFile=/etc/ocis/ocis.env
ExecStart=/usr/local/bin/ocis server
Restart=always
RestartSec=600
User=root
Group=root

[Install]
WantedBy=multi-user.target
```
5. ``/etc/nginx/sites-enabled/ocis``
```
server {
listen 2885 ssl http2;
server_name example.com;
ssl_certificate /etc/TLS/fullchain.cer;
ssl_certificate_key /etc/TLS/key.key;
ssl_session_timeout 1d;
ssl_session_cache shared:MozSSL:10m;
ssl_protocols TLSv1.3;
ssl_ciphers HIGH:!aNULL:!eNULL:!EXPORT:!CAMELLIA:!DES:!MD5:!PSK:!RC4;
ssl_prefer_server_ciphers off;
location / {
proxy_buffers 4 256k;
proxy_buffer_size 128k;
proxy_busy_buffers_size 256k;
client_max_body_size 0;
proxy_pass http://127.0.0.1:6001;
proxy_set_header Host $host;
}
}
```
6. ``ocis init --config-path /etc/ocis``
7. ``systemctl daemon-reload && systemctl restart ocis``
8. Map port 2885 of the Raspberry Pi to port 2885 of the public network IP of the router, and access ``https://example.com:2885`` through chrome

### Expected behaviour
OCIS is running normally

### Actual behaviour
![无标题](https://github.com/owncloud/ocis/assets/20036176/1d6e3592-61f7-491a-8820-c0e1778c2731)
### Server configuration
**Operating system**:
debian 11
**Web server:**
nginx
**Database:**
none
**PHP version:**
none
**ownCloud version:** (ocis version)
3.1.0-rc.1
**Updated from an older ownCloud or fresh install:**
fresh install
**Where did you install ownCloud from:**
``https://download.owncloud.com``
**Are you using external storage, if yes which one:** local/smb/sftp/...
no
**Are you using encryption:** yes/no
no
**Are you using an external user-backend, if yes which one:** LDAP/ActiveDirectory/Webdav/...
no
### Client configuration
**Browser:**
chrome 115
**Operating system:**
windows 11
### Logs
#### ownCloud log (systemctl status ocis)
```
Aug 12 23:43:16 raspberrypi ocis[8958]: {"level":"info","time":"2023-08-12T23:43:16.914150235+08:00","caller":"github.com/cs3org/reva/v2@v2.15.1-0.20230731132956-0fb5212d0551/pkg/stora4_switch_to_messagepack_space_index.go:96","message":"done."}
Aug 12 23:43:16 raspberrypi ocis[8958]: {"level":"info","time":"2023-08-12T23:43:16.915174173+08:00","caller":"github.com/cs3org/reva/v2@v2.15.1-0.20230731132956-0fb5212d0551/pkg/stora5_fix_messagepack_space_index_format.go:72","message":"done."}
Aug 12 23:43:18 raspberrypi ocis[8958]: {"level":"info","time":"2023-08-12T23:43:18.027852441+08:00","caller":"github.com/cs3org/reva/v2@v2.15.1-0.20230731132956-0fb5212d0551/pkg/stora1_create_spaces_directory_structure.go:40","message":"Migrating spaces directory structure..."}
Aug 12 23:43:18 raspberrypi ocis[8958]: {"level":"info","time":"2023-08-12T23:43:18.028128865+08:00","caller":"github.com/cs3org/reva/v2@v2.15.1-0.20230731132956-0fb5212d0551/pkg/stora2_move_spacetypes_to_indexes.go:38","message":"Migrating space types indexes..."}
Aug 12 23:43:18 raspberrypi ocis[8958]: {"level":"info","root":"/testocis/storage/users","time":"2023-08-12T23:43:18.028975249+08:00","caller":"github.com/cs3org/reva/v2@v2.15.1-0.2023e/utils/decomposedfs/migrator/0003_switch_to_messagepack_metadata.go:52","message":"Migrating to messagepack metadata backend..."}
Aug 12 23:43:18 raspberrypi ocis[8958]: {"level":"info","time":"2023-08-12T23:43:18.029107785+08:00","caller":"github.com/cs3org/reva/v2@v2.15.1-0.20230731132956-0fb5212d0551/pkg/stora3_switch_to_messagepack_metadata.go:113","message":"done."}
Aug 12 23:43:18 raspberrypi ocis[8958]: {"level":"warn","error":"open /testocis/storage/users/indexes/by-user-id: no such file or directory","time":"2023-08-12T23:43:18.030807867+08:00/v2@v2.15.1-0.20230731132956-0fb5212d0551/pkg/storage/utils/decomposedfs/migrator/0004_switch_to_messagepack_space_index.go:42","message":"error listing user indexes"}
Aug 12 23:43:18 raspberrypi ocis[8958]: {"level":"warn","error":"open /testocis/storage/users/indexes/by-group-id: no such file or directory","time":"2023-08-12T23:43:18.030886681+08:0a/v2@v2.15.1-0.20230731132956-0fb5212d0551/pkg/storage/utils/decomposedfs/migrator/0004_switch_to_messagepack_space_index.go:62","message":"error listing group indexes"}
Aug 12 23:43:18 raspberrypi ocis[8958]: {"level":"info","time":"2023-08-12T23:43:18.03094244+08:00","caller":"github.com/cs3org/reva/v2@v2.15.1-0.20230731132956-0fb5212d0551/pkg/storag_switch_to_messagepack_space_index.go:96","message":"done."}
Aug 12 23:43:18 raspberrypi ocis[8958]: {"level":"info","time":"2023-08-12T23:43:18.04286057+08:00","caller":"github.com/cs3org/reva/v2@v2.15.1-0.20230731132956-0fb5212d0551/pkg/storag_fix_messagepack_space_index_format.go:72","message":"done."}
Aug 12 23:43:36 raspberrypi ocis[8958]: {"level":"debug","time":"2023-08-12T23:43:36.878764815+08:00","message":"app provider tick, registering Provider"}
Aug 12 23:43:56 raspberrypi ocis[8958]: {"level":"debug","time":"2023-08-12T23:43:56.878909522+08:00","message":"app provider tick, registering Provider"}
Aug 12 23:44:16 raspberrypi ocis[8958]: {"level":"debug","time":"2023-08-12T23:44:16.881431463+08:00","message":"app provider tick, registering Provider"}
Aug 12 23:44:36 raspberrypi ocis[8958]: {"level":"debug","time":"2023-08-12T23:44:36.878618992+08:00","message":"app provider tick, registering Provider"}
Aug 12 23:44:56 raspberrypi ocis[8958]: {"level":"debug","time":"2023-08-12T23:44:56.882596796+08:00","message":"app provider tick, registering Provider"}
```
Then I gave /testocis 777 permissions, still wrong
```
Aug 12 23:43:18 raspberrypi ocis[8958]: {"level":"warn","error":"open /testocis/storage/users/indexes/by-user-id: no such file or directory","time":"2023-08-12T23:43:18.030807867+08:00/v2@v2.15.1-0.20230731132956-0fb5212d0551/pkg/storage/utils/decomposedfs/migrator/0004_switch_to_messagepack_space_index.go:42","message":"error listing user indexes"}
Aug 12 23:43:18 raspberrypi ocis[8958]: {"level":"warn","error":"open /testocis/storage/users/indexes/by-group-id: no such file or directory","time":"2023-08-12T23:43:18.030886681+08:0a/v2@v2.15.1-0.20230731132956-0fb5212d0551/pkg/storage/utils/decomposedfs/migrator/0004_switch_to_messagepack_space_index.go:62","message":"error listing group indexes"}
```
When I opened the corresponding directory, I found that the directory mentioned in the log exists. So I emptied the /testocis directory and manually created the following directories
```
mkdir -p /testocis/storage/users/indexes/by-group-id
mkdir -p /testocis/storage/users/indexes/by-user-id
mkdir -p /testocis/storage/metadata/indexes/by-group-id
mkdir -p /testocis/storage/metadata/indexes/by-user-id
```
Deleted ``/etc/ocis/ocis.yaml`` and re-run ``ocis init --config-path /etc/ocis``, then restarted OCIS
This time there are no errors in the log, but the service is still dead
```
Aug 13 09:46:30 raspberrypi systemd[1]: ocis.service: Succeeded.
Aug 13 09:46:30 raspberrypi systemd[1]: Stopped OCIS server.
Aug 13 09:46:30 raspberrypi systemd[1]: ocis.service: Consumed 55.245s CPU time.
Aug 13 09:46:54 raspberrypi systemd[1]: Started OCIS server.
Aug 13 09:46:55 raspberrypi ocis[13110]: {"level":"info","time":"2023-08-13T09:46:55.913222958+08:00","caller":"github.com/cs3org/reva/v2@v2.15.1-0.20230731132956-0fb5212d0551/pkg/storage/utils/decomposedfs/migrator/0001_create_spaces_directory_structure.go:40","message":"Migrating spaces directory structure..."}
Aug 13 09:46:55 raspberrypi ocis[13110]: {"level":"info","time":"2023-08-13T09:46:55.922557574+08:00","caller":"github.com/cs3org/reva/v2@v2.15.1-0.20230731132956-0fb5212d0551/pkg/storage/utils/decomposedfs/migrator/0002_move_spacetypes_to_indexes.go:38","message":"Migrating space types indexes..."}
Aug 13 09:46:55 raspberrypi ocis[13110]: {"level":"info","root":"/testocis/storage/metadata","time":"2023-08-13T09:46:55.925796359+08:00","caller":"github.com/cs3org/reva/v2@v2.15.1-0.20230731132956-0fb5212d0551/pkg/storage/utils/decomposedfs/migrator/0003_switch_to_messagepack_metadata.go:52","message":"Migrating to messagepack metadata backend..."}
Aug 13 09:46:55 raspberrypi ocis[13110]: {"level":"info","time":"2023-08-13T09:46:55.926267024+08:00","caller":"github.com/cs3org/reva/v2@v2.15.1-0.20230731132956-0fb5212d0551/pkg/storage/utils/decomposedfs/migrator/0003_switch_to_messagepack_metadata.go:113","message":"done."}
Aug 13 09:46:55 raspberrypi ocis[13110]: {"level":"info","time":"2023-08-13T09:46:55.929760605+08:00","caller":"github.com/cs3org/reva/v2@v2.15.1-0.20230731132956-0fb5212d0551/pkg/storage/utils/decomposedfs/migrator/0004_switch_to_messagepack_space_index.go:96","message":"done."}
Aug 13 09:46:55 raspberrypi ocis[13110]: {"level":"info","time":"2023-08-13T09:46:55.932140781+08:00","caller":"github.com/cs3org/reva/v2@v2.15.1-0.20230731132956-0fb5212d0551/pkg/storage/utils/decomposedfs/migrator/0005_fix_messagepack_space_index_format.go:72","message":"done."}
Aug 13 09:46:56 raspberrypi ocis[13110]: {"level":"info","time":"2023-08-13T09:46:56.655236341+08:00","caller":"github.com/cs3org/reva/v2@v2.15.1-0.20230731132956-0fb5212d0551/pkg/storage/utils/decomposedfs/migrator/0001_create_spaces_directory_structure.go:40","message":"Migrating spaces directory structure..."}
Aug 13 09:46:56 raspberrypi ocis[13110]: {"level":"info","time":"2023-08-13T09:46:56.655618062+08:00","caller":"github.com/cs3org/reva/v2@v2.15.1-0.20230731132956-0fb5212d0551/pkg/storage/utils/decomposedfs/migrator/0002_move_spacetypes_to_indexes.go:38","message":"Migrating space types indexes..."}
Aug 13 09:46:56 raspberrypi ocis[13110]: {"level":"info","root":"/testocis/storage/users","time":"2023-08-13T09:46:56.66202191+08:00","caller":"github.com/cs3org/reva/v2@v2.15.1-0.20230731132956-0fb5212d0551/pkg/storage/utils/decomposedfs/migrator/0003_switch_to_messagepack_metadata.go:52","message":"Migrating to messagepack metadata backend..."}
Aug 13 09:46:56 raspberrypi ocis[13110]: {"level":"info","time":"2023-08-13T09:46:56.662205317+08:00","caller":"github.com/cs3org/reva/v2@v2.15.1-0.20230731132956-0fb5212d0551/pkg/storage/utils/decomposedfs/migrator/0003_switch_to_messagepack_metadata.go:113","message":"done."}
Aug 13 09:46:56 raspberrypi ocis[13110]: {"level":"info","time":"2023-08-13T09:46:56.662980888+08:00","caller":"github.com/cs3org/reva/v2@v2.15.1-0.20230731132956-0fb5212d0551/pkg/storage/utils/decomposedfs/migrator/0004_switch_to_messagepack_space_index.go:96","message":"done."}
Aug 13 09:46:56 raspberrypi ocis[13110]: {"level":"info","time":"2023-08-13T09:46:56.664187606+08:00","caller":"github.com/cs3org/reva/v2@v2.15.1-0.20230731132956-0fb5212d0551/pkg/storage/utils/decomposedfs/migrator/0005_fix_messagepack_space_index_format.go:72","message":"done."}
Aug 13 09:47:15 raspberrypi ocis[13110]: {"level":"debug","time":"2023-08-13T09:47:15.908480688+08:00","message":"app provider tick, registering Provider"}
Aug 13 09:47:35 raspberrypi ocis[13110]: {"level":"debug","time":"2023-08-13T09:47:35.908524423+08:00","message":"app provider tick, registering Provider"}
Aug 13 09:47:55 raspberrypi ocis[13110]: {"level":"debug","time":"2023-08-13T09:47:55.919816849+08:00","message":"app provider tick, registering Provider"}
```
![无标题](https://github.com/owncloud/ocis/assets/20036176/1d6e3592-61f7-491a-8820-c0e1778c2731)

Contributor guide

Open the contributing guide

Assessment

This issue has not been assessed yet.

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.