The only at all viable way I’d see to do it would be:
List the uid/UUID mappings
Put Nextcloud in maintenance mode
Dump the Nextcloud database
Rename the individual user directories from UUID to uid
Run something like sed -i bak 's/$uuid/$uid/g' nextcloud.dump, for each UUID/uid pair
Drop the Nextcloud database, and recreate it from the edited .dump file
Take Nextcloud out of maintenance mode
Everything after the first step could likely be scripted, but this is a destructive operation–I’d want to make sure to have a good backup first. This is pretty much what I did, IIRC, when I migrated from SME to Nethserver a few years ago, though I used a database tool rather than sed.
Are you talking about LLNG running on a Pi? Interesting thought. I don’t know that it’s packaged for the Pi, but I’d expect it could be built from source–there do appear to be some compiled binaries there. The CA that I’m using runs quite nicely on a Pi though.
can you tell me which binaries you may need for arm?
(rebuild lemonldap-ng-2.0.11-1.el7.src.rpm on arm and got a bunch of noarch’s; it has a comprehensive test suite, so decent software written in good old perl)
NOTE: acting as an human (arm) build-node, don’t really understand how this works.
However if you want something build for arm just ask… again acting as a human build-node @Shane_Treweek you need to do all installation/testing yourselves…
Dumb error on my part; I saw a /bin/ directory and made an incorrect assumption. However, the lemonldap-ng-* packages have roughly 200 dependencies. Could you try installing my module on ARM and see if all the dependencies are available there too?
I should mention I don’t actually have a raspberry pi myself, I was probably getting ahead of myself as my thinking was that since some parts of Nethserver are being ported (or at least in testing) that if it could work would make for a very cost, energy and space saving server.
My obvious motive being for a complete, relatively out of the box, cost effective, educational IT infrastructure not sure if I phrased that right).
But… I’ve been wanting to get into raspberry pi for a few years now I just didn’t personally have a project to justify the purchase of more tech to my wife I can’t think of a reason not to jump in now though.
What model raspberry Pi would you suggest I should start with that would be most compatible?
P.S. have been looking at the standard Raspberry Pi 4 Model B 8GB
so, so far, how many applications in the Enthserver modules ecosystem are now implemente to support our new tool, or generally who has had the opportunity to use with all other modules we have… guacamole, zabixx, meshcentral matomo, glpi, zammad
RPi’s 2,3(+) and 4 are compatible, Highly recommend a Raspberry PI 4. It is much much faster and has a way better network interface implementation (older pi’s have a usb 2 implementation) .
More ram is better, have good results with de 4G model though
I’d second Marks opinion here. I use RPI3+ commercially for my clients, as a NUT UPS Server, with very good results and nice stats in Zabbix monitoring.
I still have 2 RPI3" at home for testing, but I now use RPI4+ for almost everything.
A 4 GB RPI4 handles KODI as MediaCenter (ZoneMinder can be integrated!)
Another 4 GB RPI4 handles my Home Assistant installation.
I have an 8 GB RPI as Desktop with the following cool casing:
Specs are all in english…
I intend to get more RPIs for Home use (And for clients).
To get somewhat back on track, LLNG should be able to handle authentication for any application that supports:
Authentication using HTTP headers
HTTP basic authentication
CAS
SAML
OpenID Connect
LLNG provides instructions for connecting with lots of applications, but it isn’t an exhaustive list. Software that I’ve seen as a Nethserver module, and is on LLNG’s list, include:
Discourse
Dokuwiki
GLPI
Guacamole
Jitsi Meet
Mattermost
Mediawiki (?)
Roundcube
phpLDAPAdmin
Roundcube
Wordpress
I haven’t, as yet, tested any of these but Nextcloud.
So does Matomo, but it looks like it’s a paid plugin.
MeshCentral supports OAuth2 (not sure if this is close enough to OIDC to use it or not) and SAML (it’s in their manual, but I can’t link to the appropriate page)
The second method allows interworking with other methods such as http basic authentication which passes an independently authenticated ‘remote’ user via http. In this case ZoneMinder would use the supplied user without additional authentication provided such a user is configured in ZoneMinder.
LLNG should be able to do this.
Three notable applications missing are Cockpit, SOGo, and WebTop–I’m not able to find any documentation indicating that any of them support any form of external authentication that LLNG can provide. WebTop may well support it; I can’t find any useful documentation on it at all to be able to see. But Cockpit and SOGo do have docs online, and I don’t see that either of them could use LLNG for authentication–which is particularly unfortunate in the case of Cockpit, as it’d be nice to add hardware keys and such there.
Edit: It looks like Cockpit could be made to authenticate using headers:
With only the addition of 3 Buildrequires (automake, autoconf and libtool which are not present in nethserver’s buildsys-build group) the lasso package build clean for arm 32 bit.
Probably a simple question I ran into an issue decided to uninstall and reinstall lemon ldap unfortunately it didn’t remove the config files I know on debian I can apt-get purge but my understanding was yum doesn’t leave config files like debian but renames them what are the proper steps to uninstall and start from scratch worst case I’ll do a complete reinstall but hoping not to
The only ones I know of off the top of my head are the virtual host configuration files (they’re in /etc/httpd/conf.d), /etc/lemonldap-ng/lemonldap-ng.ini, and whatever’s in /var/lib/lemonldap-ng/conf/.
Thanks i tried testing something while I hadn’t had much sleep then couldn’t remember all the changes I made serves me right for at least not jotting down what I did
There’s always still /root/.bash_history if you need a refresher on “what exactly did I do the other night”…
I’ve often been glad for this emergency “refresher”, especially after fixing some “unregular” error / bug / config and late night (or was it very early morning?) work…
And it’s definitely better than nothing, but it doesn’t do much to answer “what did I edit in this file” or “which settings did I change in the web interface.” Though in the latter case, the history of lmConf-n files would answer the question.
Thanks for those hints they will come in handy unfortunately as i’ve only just started this server and school goes back in 2 days I’m going to start again (I’m am however going to image the current setup first so when i have time ill boot it up in a virtual environment to try and fix the issue for learning purposes mainly).
On another note to look into for future reference is when installing guacamole after sso going to guac page redirects to sso page not found might be due to being on the same server not sure but thought id mention it for reference.
ok so i reinstalled everything working until running /root/lemon_config.sh
heres the error
[Sat Jul 10 18:08:58 2021] [LLNG:6486] [error] Apply configuration for localhost: error 500 (read timeout)
Warnings: [
'Test AuthChoiceParams failed: Can’t use an undefined value as a HASH reference at /usr/share/perl5/vendor_perl/Lemonldap/NG/Manager/Conf/Tests.pm line 972, line 2.
’
];
Status : [
{
‘localhost’ => ‘Error 500 (read timeout)’
}
];
Saved under number 3
[Sat Jul 10 18:09:04 2021] [LLNG:7565] [error] Apply configuration for localhost: error 500 (read timeout)
Warnings: [
'Test AuthChoiceParams failed: Can’t use an undefined value as a HASH reference at /usr/share/perl5/vendor_perl/Lemonldap/NG/Manager/Conf/Tests.pm line 972, line 1.
’
];
Status : [
{
‘localhost’ => ‘Error 500 (read timeout)’
}
];
Saved under number 4
[Sat Jul 10 18:09:10 2021] [LLNG:7747] [error] Apply configuration for localhost: error 500 (read timeout)
Warnings: [
'Test AuthChoiceParams failed: Can’t use an undefined value as a HASH reference at /usr/share/perl5/vendor_perl/Lemonldap/NG/Manager/Conf/Tests.pm line 972, line 1.
’
];
Status : [
{
‘localhost’ => ‘Error 500 (read timeout)’
}
];
Saved under number 5
[Sat Jul 10 18:09:16 2021] [LLNG:7935] [error] Apply configuration for localhost: error 500 (read timeout)
Warnings: [
'Test AuthChoiceParams failed: Can’t use an undefined value as a HASH reference at /usr/share/perl5/vendor_perl/Lemonldap/NG/Manager/Conf/Tests.pm line 972, line 1.
’
];
Status : [
{
‘localhost’ => ‘Error 500 (read timeout)’
}
];
Odd number of elements in hash assignment at /usr/share/perl5/vendor_perl/Lemonldap/NG/Manager/Cli.pm line 71, line 1.
ldapExportedVars seems to be a hash, modification refused at /usr/share/perl5/vendor_perl/Lemonldap/NG/Manager/Cli.pm line 78, line 1.
Saved under number 6
[Sat Jul 10 18:09:23 2021] [LLNG:8123] [error] Apply configuration for localhost: error 500 (read timeout)
Warnings: [
'Test AuthChoiceParams failed: Can’t use an undefined value as a HASH reference at /usr/share/perl5/vendor_perl/Lemonldap/NG/Manager/Conf/Tests.pm line 972, line 1.
’
];
Status : [
{
‘localhost’ => ‘Error 500 (read timeout)’
}
];
Saved under number 7
[Sat Jul 10 18:09:29 2021] [LLNG:8310] [error] Apply configuration for localhost: error 500 (read timeout)
Warnings: [
'Test AuthChoiceParams failed: Can’t use an undefined value as a HASH reference at /usr/share/perl5/vendor_perl/Lemonldap/NG/Manager/Conf/Tests.pm line 972, line 1.
’
];
Status : [
{
‘localhost’ => ‘Error 500 (read timeout)’
}
];
[root@orion a3deac125c05ba1]# /root/lemon_config.sh
Saved under number 8
Warnings: [
'Test AuthChoiceParams failed: Can’t use an undefined value as a HASH reference at /usr/share/perl5/vendor_perl/Lemonldap/NG/Manager/Conf/Tests.pm line 972, line 1.
’
];
Status : [
{
‘localhost’ => ‘OK’
}
];
Saved under number 9
Warnings: [
'Test AuthChoiceParams failed: Can’t use an undefined value as a HASH reference at /usr/share/perl5/vendor_perl/Lemonldap/NG/Manager/Conf/Tests.pm line 972, line 1.
’
];
Status : [
{
‘localhost’ => ‘OK’
}
];
Saved under number 10
Warnings: [
'Test AuthChoiceParams failed: Can’t use an undefined value as a HASH reference at /usr/share/perl5/vendor_perl/Lemonldap/NG/Manager/Conf/Tests.pm line 972, line 1.
’
];
Status : [
{
‘localhost’ => ‘OK’
}
];
Saved under number 11
Warnings: [
'Test AuthChoiceParams failed: Can’t use an undefined value as a HASH reference at /usr/share/perl5/vendor_perl/Lemonldap/NG/Manager/Conf/Tests.pm line 972, line 1.
’
];
Status : [
{
‘localhost’ => ‘OK’
}
];
Odd number of elements in hash assignment at /usr/share/perl5/vendor_perl/Lemonldap/NG/Manager/Cli.pm line 71, line 1.
ldapExportedVars seems to be a hash, modification refused at /usr/share/perl5/vendor_perl/Lemonldap/NG/Manager/Cli.pm line 78, line 1.
Saved under number 12
Warnings: [
'Test AuthChoiceParams failed: Can’t use an undefined value as a HASH reference at /usr/share/perl5/vendor_perl/Lemonldap/NG/Manager/Conf/Tests.pm line 972, line 1.
’
];
Status : [
{
‘localhost’ => ‘OK’
}
];
Saved under number 13
Warnings: [
'Test AuthChoiceParams failed: Can’t use an undefined value as a HASH reference at /usr/share/perl5/vendor_perl/Lemonldap/NG/Manager/Conf/Tests.pm line 972, line 1.
’
];
Status : [
{
‘localhost’ => ‘OK’
}
];