RocketChat / Rocket.Chat

The communications platform that puts data protection first.
https://rocket.chat/
Other
40.09k stars 10.35k forks source link

Why can't this be FREE and EASY ? #29911

Closed icemagno closed 1 year ago

icemagno commented 1 year ago

I'm trying to install this in my own server. This is a military server and can't access internet in any way.

I have a working install in Docker, but after my first access, I face a 4 steps registration (for my LOCAL copy?).

I think if it is free and open source, when we do a local stand alone install then we don't need anything else to get it up and ready to use.

It is very annoying all these online account creation to just use a local server. Complex, annoying and burocratic.

I register online, then can't find any way to take a registration token to fill the "REG_TOKEN" docker environment variable.

Why all of this? If it is local, then it is LOCAL. If it is free, then it is FREE. If it is Docker, then please, please, let us run it without all these close control. Let it go.

So I'll give up to use this. It is open, free but I simply can't use it because my corp server can't reach the internet just to tell you I'm using your free product.

And.... if I'm wrong and there is any way to run a local server without all these online registrations bureaucracy, please let this more clear because I couldn't find.

hugocostadev commented 1 year ago

Hi @icemagno , thanks for your feedback.

Here it is some links that can help you deploy a air-gapped environment: https://docs.rocket.chat/setup-and-configure/rocket.chat-air-gapped-deployment

You are not obliged to register your workspace, simple continue without registration (disable internet connection in this step).

Can you share screenshots and more details on where are you getting stuck?

icemagno commented 1 year ago

Hi thanks for the fast reply. I can't disable internet in any way because it is a production server in a Gov. environment. It is a military server and will probably be used on field operations.

I'm on docker and using image rocket.chat:6.2.0

After install the Mongo DB and start the Rocket container, I go to Rocket URL and a 3 steps screen is presented.

At first screen, I must config the user. Second screen: My organization info. Trd screen, My cloud username to check registration.

Can't go further because an "email was sent", but I have no internet access from the server so it can't send mail.

It can't check licence, workspace, user or anything living in RocketChat cloud because it can't reach internet.

So... I'm stuck at 3Rd screen forever and there is no way to bypass this. Each time I come back I need to repeat steps 2 and 3 again.

Here my screens: You're from São Paulo, so they will not be a problem be in PT_BR.

rocket-error

Stuck here:

image

So.. my suggestion is:

At 3rd screen, put something like "I'm running stand alone, skip cloud registration!"

But if you badly wants to controll who are using Rocket Chat then allow to take a key from my Cloud workspace and use it to unlock my local server without force it to check anything more online.

How can I do this, if I can't even access anything? ( I mean.. if I'm offline, then I'm offline at all, don't you agree? )

image

icemagno commented 1 year ago

To reproduce my environment, do the follow : ( at a server with no internet access )

DB Server:

docker run --name rocket-db --hostname=rocket-db --network=interna\
-v /etc/localtime:/etc/localtime:ro \
-v /srv/rocket-db:/data/db \
-e MONGODB_REPLICA_SET_MODE=primary \
-e MONGODB_REPLICA_SET_NAME=rs0 \
-e MONGODB_INITIAL_PRIMARY_HOST=rocket-db \
-e MONGODB_ADVERTISED_HOSTNAME=rocket-db \
-e MONGODB_ENABLE_JOURNAL=true \
-e ALLOW_EMPTY_PASSWORD=yes \
-d mongo:5.0.19 --replSet rs0 --oplogSize 128

docker exec -ti rocket-db mongo --eval "printjson(rs.initiate())"

Rocket.Chat Server:

docker run --name rocket-chat --hostname=rocket-chat --network=interna \
-v /etc/localtime:/etc/localtime:ro \
-e ROOT_URL=http://172.22.1.49:36300 \
-e DEPLOY_METHOD=docker \
-v /srv/rocket:/home/rocket \
-e MONGO_URL=mongodb://rocket-db:27017/rocketchat?replicaSet=rs0 \
-p 36300:3000 \
-d rocket.chat:6.2.0

Then go to http://SERVER_IP:36300/ and the infinite configuration loop will begin...

icemagno commented 1 year ago

Hmmmm ... something strange here ...

After solved my dev environment I was able to build and run from source (check here)

By accessing this version the server asked something different to me : I've got right to the login screen.

Strange.

I think this version is different from that one in Docker image from Docker hub.

So I think this case is closed.

One more question: I need to register a new user from the login screen. This user was created in the Rocker cloud or in my local MongoDB server ?

olodar commented 1 year ago

I have a similar problem: my installation is only for internal access, but I can't use mobile apps because there's force to use https. As icemagno said:

It is open, free

So, if it's free, there's MUST be a choice for things like this: you may notify accessing via http could be unsafe, but you shouldn't restrict. But in which cases it's unsafe and completely safe?

  1. Accessing from external network i.e. access to domain name or IP from Internet. In this case, https is must-have.
  2. Accessing from LAN or through VPN - in this case, force to use https is a stupid idea, because for local network it's simply useless thing and for VPN... useless too, because VPN offers much higher encryption and security.
github-actions[bot] commented 1 year ago

This issue has been marked as stale because there has been no further activity in the last 10 days. If the issue remains stale for the next 4 days (a total of 14 days with no activity), then it will be assumed that the question has been resolved and the issue will be automatically closed.

github-actions[bot] commented 1 year ago

This issue was closed because it has been inactive for 14 days since being marked as stale.

slhck commented 9 months ago

@hugocostadev

You are not obliged to register your workspace

Seems that changed in 6.5.0:

https://github.com/RocketChat/Rocket.Chat/releases/tag/6.5.0

Important Update: For Rocket.Chat version 6.5.0, workspace registration via the Cloud Portal is mandatory. Unregistered workspaces will receive a prompt for registration, and access to the workspace will be restricted for admins in the web application until the registration process is fully completed.

I do wonder how that aligns with "FOSS". One of the key principles of FOSS is that users have the freedom to run the program for any purpose, without needing to communicate with or seek permission from the original developers or any third party. Do you also allow hosting your own registration server then? If Rocket.Chat's core functionality is contingent on registration and cannot be used without it, many in the open source community would view this as a problematic limitation on the freedom that open source aims to provide.

olodar commented 9 months ago

@hugocostadev

You are not obliged to register your workspace

Seems that changed in 6.5.0:

https://github.com/RocketChat/Rocket.Chat/releases/tag/6.5.0

Important Update: For Rocket.Chat version 6.5.0, workspace registration via the Cloud Portal is mandatory. Unregistered workspaces will receive a prompt for registration, and access to the workspace will be restricted for admins in the web application until the registration process is fully completed.

I do wonder how that aligns with "FOSS". One of the key principles of FOSS is that users have the freedom to run the program for any purpose, without needing to communicate with or seek permission from the original developers or any third party. Do you also allow hosting your own registration server then? If Rocket.Chat's core functionality is contingent on registration and cannot be used without it, many in the open source community would view this as a problematic limitation on the freedom that open source aims to provide.

I see RC developers not actually respects freedom. Mattermost is a laggy, slow shit, but it's not forcing to use https or cloud registration.

aiac commented 8 months ago

Just updated from 6.3 to 6.5 and there is no option to ommit the registration. We will give Mattermost a try.

jfreax commented 7 months ago

Just updated from 6.3 to 6.5 and there is no option to ommit the registration. We will give Mattermost a try.

Try this one here in the meantime (and then switch as fast as you can) -> https://github.com/RocketChat/Rocket.Chat/issues/31163#issuecomment-1847851950

DeltaLima commented 6 months ago

What a dumb idea of RC devs to force the user to create an account for their cloud services to activate the fresh installed RC instance. Thats everything against the idea of opensource and FREE software IMO. I chose a opensource software because i want to be independent of any company. I want to be independent of external services. And you make a dependency to your online services for a self-hosting software to activate it. WTF? Are you Microsoft or Atlassian? Very very bad decision IMHO! Go and get a better way to increase your sales, this is the worst i ever can think of.

olodar commented 6 months ago

What a dumb idea of RC devs to force the user to create an account for their cloud services to activate the fresh installed RC instance. Thats everything against the idea of opensource and FREE software IMO. I chose a opensource software because i want to be independent of any company. I want to be independent of external services. And you make a dependency to your online services for a self-hosting software to activate it. WTF? Are you Microsoft or Atlassian? Very very bad decision IMHO! Go and get a better way to increase your sales, this is the worst i ever can think of.

The best way to increase their sales is make product with all working functions. For example, jump to old messages is simply not working (I mean, it's not possible to scroll for new/old messages when you jumped), or jump button may not work after first click. There's a lot problems with BASIC functionality. But, to be honest, RC is still much better than mattermost, which still doesn't have zoom image function.