If you don’t care about the possibility that players cheat, AND you don’t have boats where multiple players ride the same boat, then client authoritative will be easier.
If you want robust behavior even when multiple players ride the same boat, or if cheating is a concern, then you want server authoritative.
Note that you’ll need to write your own movement component and input replication for that to work well – send the control inputs to the server, and then react on them when you receive the replicated message back. But that’s OK for boats, which generally do not have instant turn reaction.