but as soon as you try to use a input key only the server can use the door
You have to tell the server about the input, since there’s no way for it to know a user pressed a key on a different machine without that. For example, you’d have to bind the key to a function that calls ServerOpenDoor (the function that opens the door). The server then can check whether the call was valid, open the door, and then all other clients would get the replicated state.