To prevent server storage DoS, there should be per-user limits to the disk space allocated to individual users. While having such a limit might not be practical, it would already be great to have a per-user limit on the number of offline messages and MAM messages.
I'm not sure which behaviour should ensue when the storage is full (sending an error sounds reasonable for mod_offline, but mod_mam should maybe just kill the oldest messages).
Lunar
on
I'd like to see this addition as well. I've witnessed a DoS where one user received over 17GB in offline messages.
Zash
on
Changes
tags Status-Accepted
MattJ
on
Decided to go with a limit on the number of items in the store, as this is the easiest to implement across storage backends. It doesn't have to be 100% accurate.
Changes
titleDisk space limits for mod_offline and mod_mam Item count limits for archive stores
Zash
on
Changes
owner MattJ
tags Status-Started
MattJ
on
Changes
tags Milestone-0.11
MattJ
on
This is almost complete, but has a couple of minor issues before we can merge it. It won't be ready for 0.11.
To prevent server storage DoS, there should be per-user limits to the disk space allocated to individual users. While having such a limit might not be practical, it would already be great to have a per-user limit on the number of offline messages and MAM messages. I'm not sure which behaviour should ensue when the storage is full (sending an error sounds reasonable for mod_offline, but mod_mam should maybe just kill the oldest messages).
I'd like to see this addition as well. I've witnessed a DoS where one user received over 17GB in offline messages.
Decided to go with a limit on the number of items in the store, as this is the easiest to implement across storage backends. It doesn't have to be 100% accurate.
ChangesDisk space limits for mod_offline and mod_mamItem count limits for archive storesThis is almost complete, but has a couple of minor issues before we can merge it. It won't be ready for 0.11.
ChangesMilestone-0.11Milestone-0.11Milestone-0.11Milestone-0.12Done in https://hg.prosody.im/trunk/rev/f76bd399267c and following commits
Changesgreat news. thanks!