Chocobozzz / PeerTube

ActivityPub-federated video streaming platform using P2P directly in your web browser
https://joinpeertube.org/
GNU Affero General Public License v3.0
13.04k stars 1.5k forks source link

Manually accept registrations #5336

Closed Chocobozzz closed 1 year ago

Chocobozzz commented 2 years ago

Describe the problem to be solved

Limit SPAM in comments coming from newly registered users

Describe the solution you would like

Auto disabled registered user that cannot login, awaiting approbation by instance admins/moderators. We may use the "banning" feature for that purpose.

rscmbbng commented 2 years ago

This would be a good option not only to combat spam but also to have a bit more granular control of who joins. Mastodon has a similar feature. However a very large drawback of Mastodon's feature is that this is a one-way process. You can accept or reject an application, but you can not give a reason for rejection. In the case these are legit requests to join it is very blunt to be able to only reject without comment. Please consider including a response mechanism.

jeena commented 1 year ago

If it is easier to implement then a invite system would also solve the problem. All people who already have an account on the instance could give out invites, and thus moderate who can create an account. When a person creates an account we would save the invite code to be able to see who invited, so that in case of spam coming through we could reach out to the one who invited them and deal with it for the future.

TILvids commented 1 year ago

Another idea is to provide users with LIMITED invites. Perhaps initially, users get no invites. Every 10 comments they make, they get an invite. Every 10 likes they give to videos, they get an invite. Every 10 videos they watch, they get an invite. Every 100MB they help stream, they get an invite. Etc.

In this way, not only does it incentivize good actors by giving them invites, it also drives engagement on the instance.

PeterAlfonsLoch commented 1 year ago

Already having an option to check if the users even knows what they are signing up on, would help out alot. It is my second run in running a peertube instance and again people join without understanding the rules, most often because they do not speak the intended language for my instance. I was explicitly looking for a solution to this.

What I am saying is, that being able to accept or decline a registration, preferably declining with reason, I would like to have.

tio-trom commented 1 year ago

Friendica does it very well and I managed to keep the spammers away for months now. A simple box that is mandatory asking for the reason you want to join the instance. Spam bots are simply copy pasting nonsense text, so it is relatively easy to figure if they are spam bots or people interested in joining and using your instance. Maybe let us, the admins, label this box as we want, asking what question we want, to make sure we make it harder for spambots to paste a message that's more generic.

PeterAlfonsLoch commented 1 year ago

Friendica does it very well and I managed to keep the spammers away for months now. A simple box that is mandatory asking for the reason you want to join the instance. Spam bots are simply copy pasting nonsense text, so it is relatively easy to figure if they are spam bots or people interested in joining and using your instance. Maybe let us, the admins, label this box as we want, asking what question we want, to make sure we make it harder for spambots to paste a message that's more generic.

I would even go so far as saying that it should be implemented asap aspecially now with the surge in fediverse registrations.

tio-trom commented 1 year ago

I agree. We are smashed with bots registrations at the moment. Hard to delete them all. And I do have Akismet enabled but does not seem to make much of a difference.

Chocobozzz commented 1 year ago

akismet for registration will work in the next peertube release

TILvids commented 1 year ago

I don't know if Akismet is going to be a perfect solution for everyone. The free plan requires users to not use it for commercial purposes. What does that mean for channels on a PeerTube instance that have sponsorships, for example? I don't have a lot of experience Akismet, so I don't know how strongly they force free plans to adhere to their requirements for "non-commercial uses".

PeterAlfonsLoch commented 1 year ago

Akismet alone is not helping to prevent upload bots or malicious users, it only prevents bad comments. I could filter out all the CP- and reposters if they would be required to write a reason before being accepted. My issue are basically these 2 kinds of people mostly. For now the amount of bot accounts is managable, question is just for how long.

PeterAlfonsLoch commented 1 year ago

Akismet alone is not helping to prevent upload bots or malicious users, it only prevents bad comments. I could filter out all the CP- and reposters if they would be required to write a reason before being accepted. My issue are basically these 2 kinds of people mostly. For now the amount of bot accounts is managable, question is just for how long.

8 days later: I get so many new accounts now that have their names and channels in arabic. They upload copyrighted content or try to stream the FIFA event. We really need this feature asap. It is the top reason I also get from my friends and collegues why they are not interested in peertube.

It is also the reason I stopped my first try in running an instance 2 years ago. For Peertubes sake the admin needs more control over who can register.

It is not about "censorship" as I read some comments on the web about this issue, it is about complying to the law and the rules one set up for the instance. There is no need for an arabic remake of breaking bad on an educational instance for example.

I am sorry that I am a bit harsh, but it is very annoying.

Chocobozzz commented 1 year ago

This has been implemented in https://github.com/Chocobozzz/PeerTube/pull/5544. Details of the feature and screens are in the PR.

Basically if the admins enable signup that require approval, the user that wants to register has to fill a Registration reason textarea.

TILvids commented 1 year ago

Thanks @Chocobozzz I'll be interested to share this tool with our admins so they can start using it with new users!