i've installed
cd roundcubemail
git log -n1
1 commit e00cd99d65863da5f4e953e1cfbdc49dbbe7c5df (HEAD ->
release-1.4, origin/release-1.4)
2 Author: Aleksander Machniak <[email protected]>
3 Date: Wed Aug 26 19:38:35 2020 +0200
4
5 Update changelog
on
nginx -v
nginx version: nginx/1.19.2 (PGNd Custom Build)
php -v
PHP 7.4.10 (cli) (built: Sep 1 2020 13:58:08) ( NTS )
Copyright (c) The PHP Group
Zend Engine v3.4.0, Copyright (c) Zend Technologies
with Zend OPcache v7.4.10, Copyright (c), by Zend
Technologies
i've also installed/enabled 2FA support,
https://github.com/alexandregz/twofactor_gauthenticator
on direct login to a standalone instance of RC
https://roundcube.example.com
all works as expected.
RC logs, through initial & 2FA login, return
==> /var/log/nginx/roundcubemail/sql.log <==
[18-Sep-2020 10:16:21]: <2375b1ce> [1] SELECT "vars", "ip", "changed",
datetime('now') AS ts FROM "session" WHERE "sess_id" = 'aaa...111';
[18-Sep-2020 10:16:21]: <2375b1ce> [2] SELECT * FROM "users" WHERE
"user_id" = '2';
[18-Sep-2020 10:16:21]: <2375b1ce> [3] PRAGMA FOREIGN_KEYS=ON;
[18-Sep-2020 10:16:21]: <2375b1ce> [4] SELECT * FROM
carddav_addressbooks WHERE "user_id" = '2';
[18-Sep-2020 10:16:21]: <2375b1ce> [5] UPDATE "session" SET "changed" =
datetime('now'), "vars" = 'abc...de1' WHERE "sess_id" = 'aaa...111';
[18-Sep-2020 10:16:21]: <2375b1ce> [1] SELECT "vars", "ip", "changed",
datetime('now') AS ts FROM "session" WHERE "sess_id" = 'aaa...111';
[18-Sep-2020 10:16:21]: <2375b1ce> [2] SELECT * FROM "users" WHERE
"user_id" = '2';
[18-Sep-2020 10:16:21]: <2375b1ce> [3] DELETE FROM "session" WHERE
"sess_id" = 'aaa...111';
[18-Sep-2020 10:16:21]: <2375b1ce> [4] INSERT INTO "session"
("sess_id", "vars", "ip", "changed") VALUES ('aaa...111', 'bGF...CI7',
'fd80:10:10::10', datetime('now'));
[18-Sep-2020 10:16:40]: <2375b1ce> [1] SELECT "vars", "ip", "changed",
datetime('now') AS ts FROM "session" WHERE "sess_id" = 'aaa...111';
[18-Sep-2020 10:16:40]: <2375b1ce> [2] DELETE FROM "session" WHERE
"sess_id" = 'aaa...111';
[18-Sep-2020 10:16:40]: <2375b1ce> [3] SELECT * FROM "users" WHERE
"mail_host" = 'back.example.com' AND "username" = '[email protected]';
[18-Sep-2020 10:16:41]: <2375b1ce> [4] UPDATE "users" SET "last_login"
= datetime('now') WHERE "user_id" = '2';
[18-Sep-2020 10:16:41]: <eb5b5c61> [5] SELECT "vars", "ip", "changed",
datetime('now') AS ts FROM "session" WHERE "sess_id" = 'aaa...222';
==> /var/log/nginx/roundcubemail/userlogins.log <==
[18-Sep-2020 10:16:41]: <eb5b5c61> Successful login for
[email protected] (ID: 2) from fd80:10:10::10 in session eb5b5c61d11447e8
==> /var/log/nginx/roundcubemail/sql.log <==
[18-Sep-2020 10:16:41]: <eb5b5c61> [6] INSERT INTO "session"
("sess_id", "vars", "ip", "changed") VALUES ('aaa...222', 'abc...de2==',
'fd80:10:10::10', datetime('now'));
[18-Sep-2020 10:16:53]: <eb5b5c61> [1] SELECT "vars", "ip", "changed",
datetime('now') AS ts FROM "session" WHERE "sess_id" = 'aaa...222';
[18-Sep-2020 10:16:53]: <eb5b5c61> [2] SELECT * FROM "users" WHERE
"user_id" = '2';
[18-Sep-2020 10:16:53]: <eb5b5c61> [3] PRAGMA FOREIGN_KEYS=ON;
[18-Sep-2020 10:16:53]: <eb5b5c61> [4] SELECT * FROM
carddav_addressbooks WHERE "user_id" = '2';
[18-Sep-2020 10:16:53]: <eb5b5c61> [5] UPDATE "session" SET "changed" =
datetime('now'), "vars" = 'abc...de3' WHERE "sess_id" = 'aaa...222';
[18-Sep-2020 10:16:53]: <eb5b5c61> [1] SELECT "vars", "ip", "changed",
datetime('now') AS ts FROM "session" WHERE "sess_id" = 'aaa...222';
[18-Sep-2020 10:16:53]: <eb5b5c61> [2] SELECT * FROM "users" WHERE
"user_id" = '2';
[18-Sep-2020 10:16:53]: <eb5b5c61> [3] PRAGMA FOREIGN_KEYS=ON;
[18-Sep-2020 10:16:53]: <eb5b5c61> [4] SELECT * FROM
carddav_addressbooks WHERE "user_id" = '2';
[18-Sep-2020 10:16:54]: <eb5b5c61> [1] SELECT "vars", "ip", "changed",
datetime('now') AS ts FROM "session" WHERE "sess_id" = 'aaa...222';
[18-Sep-2020 10:16:54]: <eb5b5c61> [2] SELECT * FROM "users" WHERE
"user_id" = '2';
[18-Sep-2020 10:16:54]: <eb5b5c61> [1] SELECT "vars", "ip", "changed",
datetime('now') AS ts FROM "session" WHERE "sess_id" = 'aaa...222';
[18-Sep-2020 10:16:54]: <eb5b5c61> [3] PRAGMA FOREIGN_KEYS=ON;
[18-Sep-2020 10:16:54]: <eb5b5c61> [4] SELECT * FROM
carddav_addressbooks WHERE "user_id" = '2';
[18-Sep-2020 10:16:54]: <eb5b5c61> [2] SELECT * FROM "users" WHERE
"user_id" = '2';
[18-Sep-2020 10:16:54]: <eb5b5c61> [3] PRAGMA FOREIGN_KEYS=ON;
[18-Sep-2020 10:16:54]: <eb5b5c61> [4] SELECT * FROM
carddav_addressbooks WHERE "user_id" = '2';
[18-Sep-2020 10:16:54]: <eb5b5c61> [5] UPDATE "session" SET "changed" =
datetime('now'), "vars" = 'abc...de4==' WHERE "sess_id" = 'aaa...222';
[18-Sep-2020 10:16:54]: <eb5b5c61> [5] UPDATE "session" SET "changed" =
datetime('now'), "vars" = 'abc...de3';
after which I'm 'in' RC ui; fully functional.
if, however, I access RC through nginx setup as a reverse proxy, with front-end
nginx config,
server {
listen [fd80:10:10::10]:443 ssl http2;
server_tokens off;
server_name frontend.example.com;
root /dev/null;
autoindex off;
rewrite_log on;
access_log /var/log/nginx/frontend.access.log main;
error_log /var/log/nginx/frontend.error.log notice;
ssl_verify_client optional;
ssl_verify_depth 2;
ssl_client_certificate "/srv/ssl/ca_chain.crt.pem";
ssl_certificate "/srv/ssl/frontend.server.crt";
ssl_certificate_key "/srv/ssl/frontend.server.key";
location / {
root /srv/nulldir;
try_files $uri $uri/ =404;
}
location /rcmail/ {
proxy_pass https://roundcube.example.com:443/;
proxy_ssl_name roundcube.example.com;
proxy_set_header X-Script-Name /rcmail;
proxy_ssl_verify off;
proxy_ssl_certificate
"/srv/ssl/roundcube.client.crt";
proxy_ssl_certificate_key
"/srv/ssl/roundcube.client.key";
proxy_ssl_trusted_certificate
"/srv/ssl/ca_chain.crt.pem";
access_log /var/log/nginx/frontend.rc.access.log
upstreamlog;
error_log /var/log/nginx/frontend.rc.error.log notice;
include includes/proxy.inc;
}
}
on nav to
https://frontend.example.com/rcmail
I _do_ see the RC login, as before, at the frontend URI ...
but, when I enter 1st-factor credentials & submit, i simply loop back to the
same RC login; no accepted login, and no pass to the 2FA
RC logs for this ONLY show
==> /var/log/nginx/roundcubemail/sql.log <==
[18-Sep-2020 10:34:58]: <68003b3d> [1] SELECT "vars", "ip", "changed",
datetime('now') AS ts FROM "session" WHERE "sess_id" = '680...fc5';
[18-Sep-2020 10:35:06]: <68003b3d> [1] SELECT "vars", "ip", "changed",
datetime('now') AS ts FROM "session" WHERE "sess_id" = '680...fc5';
i've not figured out which logs are more useful/informative logs out of this.
yet.
any hints as to either a correct/functional proxy setup/config, &/or which
specific logging to dig around in?
_______________________________________________
Roundcube Users mailing list
[email protected]
http://lists.roundcube.net/mailman/listinfo/users